[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Jun 2009
    Beiträge
    319

    Unhappy NET.Data Parameterübergabe??

    Hallo Forum,
    kann man bei NET.DATA Parameter übergeben??
    Die Übergabe mittels PC-Dateien kenne ich. Ich meine aber sowas wie *entry Plist oder so. So dass ich das IFS nicht verwenden muss.
    Oder gibt es eine Möglichkeit ohne dem IFS bei der Parameterübergabe auszukommen??

    Ich hab von der ganzen Geschichte wenig Ahnung??!!

    Viele Grüße
    Dschainers

  2. #2
    Registriert seit
    Jul 2001
    Beiträge
    2.713
    Zitat Zitat von Dschainers Beitrag anzeigen
    Hallo Forum,
    kann man bei NET.DATA Parameter übergeben??
    Das klingt etwas missverständlich, Net.Data ist eine Makrosprache, die durch HTTP-Requests aufgerufen wird.
    Hier gibst Du die Parameter im HTTP-Format, wie z.B.

    http://www.DeineSeite.de/cgibin/makr...meter2=blubber

    Oder meinst Du etwas anderes?

    -h

  3. #3
    Registriert seit
    Jun 2009
    Beiträge
    319

    NET.DATA

    Hallo Holger,

    vielen Dank für die schnelle Antwort.

    Mein NET.DATA Makro sieht so aus:
    %DEFINE ILEPGM = "/QSYS.LIB/RSCHHTTP.LIB/CALLRPG6.PGM"
    %DEFINE OUT1 = " "
    %DEFINE OUTFILE = "/PLEX/TEMP/LESE.PAR"
    %DEFINE MODE = "w+"

    %FUNCTION(DTW_DIRECTCALL) DCFUNCTION(IN CHAR(13) INP1,
    OUT CHAR(50) OUTP2)
    { %EXEC { $(ILEPGM) %} %}

    %HTML(RUN) {
    @DCFUNCTION("KF919 ", OUT1)
    @DTWF_OPEN(OUTFILE, MODE, "100", "CCSID=850")
    @DTWF_WRITEFILE(OUTFILE, OUT1)
    %}

    Wie muss nun das Makro aussehen, wenn ich die Parameter übergebe?

    Meine Anwendung sieht folgendermaßen aus:
    Über ein VB Script wird ein Wert eingegeben, dieser soll an das Makro übergeben werden. Das Makro soll den Wert an ein RPG Programm übergeben.
    Das RPG Programm tut was damit, ermittelt einen Rückgabeparameter und soll diesen über das Makro wieder an das VB Script zurückgeben.

    Hoffentlich habe ich mich richtig ausgedrückt.

    Übrigens, ich bin nur soweit gekommen, weil ich das Dokument "NET.DATA für Einsteiger" von dir gelesen habe.

    Vielen Dank

  4. #4
    Registriert seit
    Jul 2001
    Beiträge
    2.713
    Zitat Zitat von Dschainers Beitrag anzeigen
    Über ein VB Script wird ein Wert eingegeben, dieser soll an das Makro übergeben werden. Das Makro soll den Wert an ein RPG Programm übergeben.
    Das RPG Programm tut was damit, ermittelt einen Rückgabeparameter und soll diesen über das Makro wieder an das VB Script zurückgeben.
    Huhu zurück

    Also, Net.Data produziert "nur" HTML-Output, und da ist eine Ausgabe von Parametern nicht explizit vorgesehen, Dein VB-Programm kriegt ja eine Webseite zurück (je nach Funktionsaufruf, den Du verwendest, in eine Struktur oder ein File). Das Ausgabe-Ergebnis sollte also so aussehen, dass Dein VB-Programm damit etwas anfangen kann.

    Ich verwende das beispielsweise für einen Delphi-Client, der via WebServices Daten von der AS400 holt. Das Ergebnis ist "XML für arme", welches ich dann im Delphi-Programm auswerte.

    Beispiel:

    PC sendet eine Anfrage an die AS400:

    Code:
    http://meine.as400/cgibin/meinscript.nd/kundeninfo?kdnr=123
    und erhält eine Ausgabe von Net.Data zurück. Das muss ja nicht HTML sein, kann z.B. so aussehen:
    PHP-Code:
    <DATA>
    <
    KDNR>
    123
    </KDNR>
    <
    NAME1>
    Müller GmbH
    </NAME1>
    <
    TELEFON>
    0123-45656
    </TELEFON>
    ...
    </
    DATA
    Der Kreativität sind da keine Grenzen gesetzt. XML kannst Du Dir auch so zusammenstricken, oder nimmst ein eigenes, schlanges Format, das man schnell analysieren kann.

    Viel Erfolg,
    Holger
    (editiert wg. Autoformatierung vom Forum)

  5. #5
    Registriert seit
    Feb 2001
    Beiträge
    20.696
    Wenn du schon VB-Script machst, bietet sich ggf. ADO und SQL eher an, ist bestimmt auch einfacher.

    Für SQL kannst du dann einfach eine Procedure mit Ein-/Ausgabe-Parametern erstellen. Diese ruft dein RPG'le auf und im Command-Objekt erhältst du die Ergebnisse.
    Ansonsten ist halt volle SQL-Funktionalität gegeben.

    NET.DATA existiert zwar noch, wird aber wohl nicht mehr gewartet.
    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

  6. #6
    Registriert seit
    Jun 2009
    Beiträge
    319
    Also danke erst mal

    Ich werd's probieren.

    Viele Grüße
    Dschainers

  7. #7
    Registriert seit
    Jul 2001
    Beiträge
    2.713
    Zitat Zitat von Fuerchau Beitrag anzeigen
    NET.DATA existiert zwar noch, wird aber wohl nicht mehr gewartet.
    Ja, ist relativ ruhig, aber noch nicht ganz tot - zur Not muss man das aus der IBM rauslösen wie mit CGIDEV2, denn für einige Fälle ists noch schlank und brauchbar. Habe einige Kunden, deren Aussendienstanbindung nur via HTTP Port 80 geht, und da will ich keine neue Baustelle aufreissen, sondern den Altbau schön modernisieren. Und persönlich finde ich die Methode funktional.

    Habe einige Experimente mit PHP und der gleichen Methodik gemacht, das geht mit der Performance arg in die Knie

    -h

  8. #8
    Registriert seit
    Jun 2009
    Beiträge
    319
    Noch eine Frage, da ich mich da nicht so auskenne:
    Wie muss ich die Entry-Parameter im NET.DATA Makro definieren, ich hab keine Ahnung??

  9. #9
    Registriert seit
    Jul 2001
    Beiträge
    2.713
    Zitat Zitat von Dschainers Beitrag anzeigen
    Noch eine Frage, da ich mich da nicht so auskenne:
    Wie muss ich die Entry-Parameter im NET.DATA Makro definieren, ich hab keine Ahnung??
    Ganz einfach: gar nicht. Net.Data ist eine Interpreter-Sprache, und sobald man einen HTML-Block mit Parametern aufruft, existieren die entsprechenden Variablen. Leider ist hier die GrossKlein-Schreibung (zumindest innerhalb der Net.Data-Scripte) kriegsentscheident.

    -h

  10. #10
    Registriert seit
    Jun 2009
    Beiträge
    319
    Vielen Dank Holger, jetzt hat's geklappt.

    Jetzt hab ich nur noch 1 Problem, das Ergebnis möchte ich in eine Textdatei schreiben, aber nicht im IFS sondern auf den PC z.B. auf C:\temp.
    Das Schreiben ins IFS funktioniert, was muss ich tun damit ich auf C:\temp schreiben kann??
    FFI_PATH hab ich probiert, ich glaube aber ich mache da was falsch??
    Geht das überhaupt??

  11. #11
    Registriert seit
    Feb 2001
    Beiträge
    20.696
    Ich denke, dafür musst du in deine HTML-Ausgabe wiederum VB-Script einbetten. Schließlich ist dafür dann der Browser zuständig, an den PC kommst du von der AS/400 aus nicht.
    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

Similar Threads

  1. Berechtigungsproblem mit Net.Data
    By mott in forum NEWSboard Programmierung
    Antworten: 1
    Letzter Beitrag: 03-11-04, 08:48
  2. Net.Data und Umlaute
    By mott in forum IBM i Hauptforum
    Antworten: 4
    Letzter Beitrag: 26-10-04, 08:56
  3. Net.Data unter V5R2
    By Peet in forum IBM i Hauptforum
    Antworten: 1
    Letzter Beitrag: 04-10-04, 13:11
  4. Embedded SQL Parameterübergabe
    By shorty in forum IBM i Hauptforum
    Antworten: 4
    Letzter Beitrag: 02-08-04, 13:24
  5. net.data assist / sql assist
    By schreibr in forum IBM i Hauptforum
    Antworten: 1
    Letzter Beitrag: 05-08-01, 18:28

Berechtigungen

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