View Full Version : Fehler SQL0751 im Trigger-PGM
Hallo Gemeinde,
ich will die Erfassung von Artikelpositionen in unserer Auftragsverwaltung anhand eines Triggers protokollieren.
Da ich gerne die verfügbare Menge für den eingegebenen Artikel in unserem Zentrallager mit protokollieren wollte, bekomme ich jetzt beim Zugriff auf unseren Lagerrechner(/390 Host) leider immer den SQL0751 Fehler im Triggerprogramm.
Weis jemand Rat?
Gruß
Winni
Hallo,
der SQL Fehler sagt:
SQL-Anweisung &1 nicht zulässig.
Da müssen also noch mehr Meldungen sein.
Gruss
Michael
Ja Sorry!
SQL0751.....
SQL-Anweisung RELEASE in einer gespeicherten Prozedur, einer
benutzerdefinierten Funktion oder einem Auslöser nicht zulässig.
COMMIT beendet.
SQL-Anweisung DISCONNECT in einer gespeicherten Prozedur, einer
benutzerdefinierten Funktion oder einem Auslöser nicht zulässig.
SQL-Anweisung CONNECT in einer gespeicherten Prozedur, einer
benutzerdefinierten Funktion oder einem Auslöser nicht zulässig.
Wie die Meldungen schon sagen:
Der Trigger darf selber weder einen eigenen Connect noche Commit/Rollback oder Release verwenden.
Ein Trigger wird im aktuellen Commit-Zyklus aktiviert und darf keine Verbindung zu einer weiteren DB öffnen sondern arbeitet grundsätzlich nur in der aktuellen DB.
Wohin willst du die Daten denn schreiben ?
Auftragsdatei wird auf der AS erfasst.
Protokolldatei wird auf der AS geschrieben, mit Infos aus der Host-Datei, diese liegt in der DB2/UDB auf einer IBM/390. Und der Zugriff läuft mit SQL.
Oder geht eine DDM-Definition auf mit Host Dateien???
DDM wäre eine alternative, allerdings unterstützt diese keinen KEY, kann also nur sequentiell verarbeitet werden.
Ich würde nur in die Protokolldatei schreiben und die fehlenden Informationen in einem sparaten Batchprogramm nachtragen.
Dieses kann ja alle paar Sekunden nach neuen Sätzen suchen und dann den Hostzugriff machen.
Dies ist allemal besser, da die Hostverbindung ja auch mal gestört werden könnte und der Trigger dann das Schreiben nicht erlauben dürfte.
Ich denke, dann hast du eine Problem.
Hallo,
Bei Verwendung einer DataQ und einem entsprechenden Listener auf der Q vermeidet man das HkG Prinzip.
mfg
Dieter Bender
DDM wäre eine alternative, allerdings unterstützt diese keinen KEY, kann also nur sequentiell verarbeitet werden.
Ich würde nur in die Protokolldatei schreiben und die fehlenden Informationen in einem sparaten Batchprogramm nachtragen.
Dieses kann ja alle paar Sekunden nach neuen Sätzen suchen und dann den Hostzugriff machen.
Dies ist allemal besser, da die Hostverbindung ja auch mal gestört werden könnte und der Trigger dann das Schreiben nicht erlauben dürfte.
Ich denke, dann hast du eine Problem.
DDM wäre eine alternative, allerdings unterstützt diese keinen KEY, kann also nur sequentiell verarbeitet werden.
Ich würde nur in die Protokolldatei schreiben und die fehlenden Informationen in einem sparaten Batchprogramm nachtragen.
Dieses kann ja alle paar Sekunden nach neuen Sätzen suchen und dann den Hostzugriff machen.
Dies ist allemal besser, da die Hostverbindung ja auch mal gestört werden könnte und der Trigger dann das Schreiben nicht erlauben dürfte.
Ich denke, dann hast du eine Problem.
Den frei verfügbaren Lagerbestand kann ich leider nicht zu einem späteren Zeitpunkt protokollieren ;)
Habe jetzt eine DDMF zur entfernten logischen Datei definiert. Key-Zugriff funktioniert einwandfrei:D
Gruß
Winni