[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Apr 2001
    Beiträge
    267

    Talking Parameter Obj beim Befehl SAVOBJ

    Hallo,

    beim SAVOBJ können beim Parameter OBJ bis zu 300 Objektnamen angegeben werden. Im CL und für jedes dann zu sicherndes Objekt eine Variable verwenden, kein Problem.

    Doch nun folgende Problematik:
    Aus einer Anwendung heraus soll eine Sicherung von Objekten variabler Anzahl in einen SAVF erfolgen. Dafür wurde ein CMD erstellt, in dem u.a. ein Parameter der Wertart *Name definiert ist. Bei diesem Parameter sind die Werte für Mindestwert erforderlich auf '1' und Maximal zulässige Werte auf '20' gesetzt.

    Das verarbeitende Programm ist CL. In diesem CL wird der COUNTER (also die tatsächliche Anzahl eingegebener Elemente) ermittelt und dann die einzelnen Objektbezeichnungen aus dem String mit SUBSTRING "herausgeschnitten".
    Wie kann der SAVOBJ diese Objekte bearbeiten, ohne das für jeden Eintrag eine Variable definiert ist. Kann man so etwas wie eine Werteliste beim SAVOBJ verwenden?

    Hat jemand vielleicht eine gute Idee?

    Gruss
    Bodo

  2. #2
    Registriert seit
    Dec 2000
    Beiträge
    281

    Post

    Hallo Bodo
    Bau dir doch den Befehl mit chgvar und *cat/*bcat zusammen und übergieb den Befehl mit qcmdexec.

    das sollte eigentlich klappen.
    Programmierung

  3. #3
    Registriert seit
    Dec 2000
    Beiträge
    450

    Post

    Hallo Bodo,

    der Befehl SAVOBJ sieht so aus:
    SAVOBJ OBJ(AAAAAAAAAA YYYYYYYYYY ZZZZZZZZZZ)

    Es müsste doch gehen, eine Variable mit allen Objektnamen zu übergeben, die Objektnamen in der Variablen durch jeweils ein Leerzeichen getrennt.

    Gruß
    Bruno

  4. #4
    Registriert seit
    Feb 2001
    Beiträge
    20.241

    Post

    Genau das mit einer Variablen geht nicht, da das Kommando ja bereits zur Umwandlung zusammengebaut wird und somit eine Variable genau einen Parameter füllt.

    Bei Wertelisten geht leider nur der Umweg über den Zusammenbau und Ausführung mittels QCMDEXC, da dann der Befehl neu analysiert wird.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  5. #5
    Registriert seit
    Apr 2001
    Beiträge
    267

    Post

    Hallo,

    Mit einer Variablen funktioniert es nicht, hatte ich auch schon ausprobiert.
    QCMDEXC ist die Lösung.

    Dank an Euch.

    Gruss
    Bodo

  6. #6
    Registriert seit
    Sep 2005
    Beiträge
    85
    Ich habe leider keinen passenderen Beitrag gefunden, also hier mein Problem.

    Ich bastel gerade an einem CMD. Zum Test nur mit einem Parameter

    TYPE: *CHAR
    DFT: 0
    LEN: 1
    MAX: 4

    Mein Knackpunkt ist das mit den möglichen 4 Werten.
    d.h. Ich möchte diesen CMD mal mit nur 2 Werten und mal mit nur einem Wert übergeben.

    In dem CL, das aufgerufen wird habe ich eine VAR deklariert, die 6 Stellen lang ist, da die ersten zwei stellen ja die Länge??? enthält. (Hab ich noch net so ganz kappiert) die restlichen 4 sollte dann die möglichen 4 Werte enthalten.
    Das ist auch so, wenn ich bei aufruf alle 4 werte eingebe.
    Gebe ich nur einen Wert ein, so habe ich an den letzten 3 Stellen Müll drin stehen und nicht den dft-Wert.
    Über %SST zubrösle ich mir die 4 Stellen in einzelne Variablen, die dann auf ihren Inhalt abgefragt werden.

    Ich dachte in diesem Fall wären die letzten stellen dann leer o. mit dem DFT Wert gefüllt, da ich ja nur ein wert eingebe...

    Schon mal besten Danke für eine Antwort.

  7. #7
    Registriert seit
    Nov 2003
    Beiträge
    2.307
    In den ersten zwei Stellen steht die Anzahl an eingegebenen Werten.

  8. #8
    Registriert seit
    Sep 2005
    Beiträge
    85
    Wie kann ich dies auslesen?
    Diesen sind doch binär dargestellt oder?

  9. #9
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Die Länge ist ja konstant 1, die Anzahl kann mit %BIN(&MYVAR 1 2) abgefragt werden.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  10. #10
    Registriert seit
    Sep 2005
    Beiträge
    85
    Ok. Klar ich meinte ja die anzahl.
    Das bringt mich jetzt erst mal weiter.
    Danke!

Similar Threads

  1. Frage zum Befehl STRPCCMD
    By stoerfang in forum NEWSboard Programmierung
    Antworten: 3
    Letzter Beitrag: 24-01-13, 10:27
  2. SNDDST Parameter für Dateianhänge
    By Luebbert in forum IBM i Hauptforum
    Antworten: 4
    Letzter Beitrag: 23-11-06, 13:22
  3. SQL Befehl?
    By mikex01 in forum IBM i Hauptforum
    Antworten: 9
    Letzter Beitrag: 01-06-06, 11:55
  4. Fehler im CPY Befehl
    By NEich in forum IBM i Hauptforum
    Antworten: 5
    Letzter Beitrag: 10-05-06, 08:42
  5. Befehl SAV und Parameter OUTPUT
    By tomikra in forum IBM i Hauptforum
    Antworten: 3
    Letzter Beitrag: 07-09-04, 08:28

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •