[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Jun 2001
    Beiträge
    32

    Question AS400-Programme vom PC aus starten ?

    wie kann ich von Windows aus auf Batch-Programme der AS-400 zugreifen? Am besten über Delphi(Pascal)...????

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

    Post

    Es gibt dafür eine Erweiterung von Delphi, nämlich Delphi/400. Habe noch nie damit gearbeitet, soll aber ganz gut sein.

    Gruß
    Bruno

  3. #3
    Registriert seit
    Jul 2001
    Beiträge
    68

    Smile

    Per FTP gibt es die Möglichkeit mit literal.
    literal rcmd as-400 kommando
    z.B.
    literal rcmd wrkactjob outq(*print)

    Viele Grüsse Alf

  4. #4
    Registriert seit
    Mar 2001
    Beiträge
    29

    Post

    mich würde das auch interessieren - und zwar von Excel/VBA aus.
    Jedoch kein Batch, sondern interaktiv, um die Ergebnisse aus QTEMP zu holen.

    Gruss hpw

  5. #5
    Registriert seit
    Jun 2001
    Beiträge
    32

    Post

    Mit Delphi400 hab ichs auch schon probiert, aber die Komponenten sind fast genau die gleichen, wie dei Standartkomponenten. Bringen auch keine verbesserte Performance.

    Ich bräuchte sowas wie start job xy... los mach... Auftrag kommt und dann batch lauf los...

    Anscheinend nicht so ganz einfach...

  6. #6
    Registriert seit
    Jun 2001
    Beiträge
    727

    Post

    Für Leute ohne SQL/400 (bzw. SQL-Precompiler) ist es manchmal interessent Daten per "emulierten SQL-Resultset" zu bekommen (RPG-Programm schreibt Daten in eine temporäre Datei in der QTEMP).
    Dazu ist z.B. in Excel ein kleines VBA-Macro zu erstelllen.
    Per Datenzugriff DAO bzw. ADO(OLE-DB) zuerst ein SQL-Call wie "CALL BIB.PGM" auf das Programm und hinterher eine Abfrage wie z.B. "SELECT * FROM QTEMP.TABTEMP".
    Wichtig ist, das diese beiden SQL-Abfragen in der selben SQL-Connection ablaufen. (d.h. im selben AS/400 Job wegen QTEMP)!!!

    Bei Bedarf kann ich ein kurzes Code-Bsp. posten !

    Sven ...


    [Dieser Beitrag wurde von Sven Schneider am 05. Juli 2001 editiert.]

    [Dieser Beitrag wurde von Sven Schneider am 05. Juli 2001 editiert.]

  7. #7
    Registriert seit
    Mar 2001
    Beiträge
    29

    Cool

    Codesample währe klasse

  8. #8
    Registriert seit
    Feb 2001
    Beiträge
    17
    Unter Java kann man die AS/400 Toolbox for Java benutzen.
    Hier gibt es u.a. die Klasse 'CommandCall', mit der Befehle und die Klasse 'ProgramCall', mit der *PGM-Objekte auf der AS/400 ausgeführt werden können.

    Dokumentation und Beispiele unter http://www.iseries.ibm.com/infocenter
    Unterpunkt: Programmierung/Java/IBM Toolbox für Java/Access Classes.

    Schöne Grüße.

    [Dieser Beitrag wurde von cmatzat am 06. Juli 2001 editiert.]

  9. #9
    Registriert seit
    Jan 2001
    Beiträge
    833

    Post

    <BLOCKQUOTE><font size="1" face="Verdana, Arial">Zitat:</font><HR>Original erstellt von infomio:
    wie kann ich von Windows aus auf Batch-Programme der AS-400 zugreifen? Am besten über Delphi(Pascal)...????[/quote]

    Hallo Infomio

    Wenn Du über Windows mit der AS/400 arbeiten möchtest dann ist es auch möglich mit VARPG die AS/400 Programme zu starten oder auch zu kontrollieren(DTAARA,DTAQ etc.).
    Auf der Website WWW.ASMIKA.DE ist eine Beispielanwendung dargestellt mit der es möglich ist Winword Serienbriefe automatisch mit AS/400 Daten zu erstellen.
    Ich glaube das Du soetwas ähnliches gebrauchen könntest. Schau es Dir mal an.
    Gruß Michael


  10. #10
    Registriert seit
    Jun 2001
    Beiträge
    727

    Post

    Hier ein Bsp. mit DAO (Programmaufruf mit anschließ. SELECT auf Datei in QTEMP)
    Ich verwende noch Excel 95 (DAO 3.0), daher
    noch ohne ODBCDirect-Arbeitsbereich.
    Ab DAO 3.5 kann man ein QeryDef auch über das Connection-Object (ODBCDirect) erstellen unter Umgehung des Database-Objects(Jet-Engine):

    Das Bsp. hat im Programm-Aufruf einen Stringparameter und ein numerisch gepacktes Feld

    Dim dbs As Database
    Dim qdf As QueryDef
    Dim rs As Recordset
    Dim sCmdLength As String
    Dim sCmd As String
    Dim conn As String

    Sub test_Call_und_SQL_auf_QTEMP()
    conn = "ODBC;DSN=Datasourcename"

    Sheets("Tabelle1").Select
    Range("A1").Select
    Selection.CurrentRegion.Select
    Selection.Clear
    Range("A1").Select


    Set dbs = OpenDatabase("", 0, 0, conn)

    'Parameter immer mit doppelten Hochkommas, aber von der Befehlslänge wieder abziehen
    'im Bsp. hier 4 Hochkommas abziehen
    sCmd = "CALL PGM(LIB/PGM) PARM(''01'' X''001F'')"
    sCmdLength = Format$(Len(sCmd) - 4, "0000000000") & "00000"
    cCmd = "{CALL QSYS.QCMDEXC ('" & sCmd & "', " & sCmdLength & ")}"
    On Error Resume Next
    dbs.Execute cCmd, dbSQLPassThrough
    If Err <> 0 Then MsgBox "Fehler " & Err & ": " & Error(Err)

    Set qdf = dbs.CreateQueryDef("")
    sqlQ = "SELECT * FROM QTEMP.TEMPTBL"
    qdf.SQL = sqlQ
    qdf.Connect = conn
    Set rs = qdf.OpenRecordset()
    With rs
    .MoveFirst
    i = 0
    Do While Not .EOF
    For j = 0 To .Fields.Count - 1
    ActiveCell.Offset(i, j).Value = .Fields(j).Value
    Next j
    i = i + 1
    .MoveNext
    Loop
    End With

    rs.Close
    qdf.Close
    dbs.Close
    End Sub

    Verweis auf "Microsoft DAO 3.0 Object Library" nicht vergessen !!!
    Unter Extras/Verweise... (ab Excel 97 im VBA-Editor)



    [Dieser Beitrag wurde von Sven Schneider am 10. Juli 2001 editiert.]

Similar Threads

  1. Starten Java auf dem PC
    By mk in forum NEWSboard Java
    Antworten: 4
    Letzter Beitrag: 11-12-06, 08:51
  2. Programm auf anderer AS400 starten
    By codierknecht in forum NEWSboard Programmierung
    Antworten: 8
    Letzter Beitrag: 04-07-06, 11:52
  3. FTP von der AS400 -> zum PC sehr langsam
    By ExAzubi in forum IBM i Hauptforum
    Antworten: 6
    Letzter Beitrag: 17-03-06, 09:26
  4. FTP AS400 -> AS400 -> PC
    By codierknecht in forum NEWSboard Programmierung
    Antworten: 11
    Letzter Beitrag: 07-10-05, 08:16
  5. FTP LOGIN über PC auf AS400
    By harkne in forum IBM i Hauptforum
    Antworten: 19
    Letzter Beitrag: 01-09-05, 08:53

Berechtigungen

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