-
Ohne Verzug Daten vom Unix-Rechner bearbeiten
Hi, ich habe folgendes Problem:
Von einem Unix-Rechner soll mir jeweils ein Datensatz in unregelmäßigen Abständen (vielleicht 4-10 x in der Stunde) zur Verfügung gestellt werden. Entweder auf dem Unix-System (FTP-Weiterverarbeitung) oder evtl. ins IFS oder einem anderen Ordner der AS-400 ?
Sobald der Datensatz angekommen ist, muss er unverzüglich bearbeitet werden und es müssen bestimmte Programme aufgerufen werden.
Wer kann mir sagen, wie ich das machen kann ?
Muß ich ständig eine Abfrage laufen lassen, die mir anzeigt, dass Daten zur Verfügung stehen ? Oder kann ich was triggern ?, Oder sonstwas ?
Oder kann das Unix-System einen Befehl zur AS-400 senden ?
-
Hallo,
einen Befehl von einer Unix empfangen habe ich mal über FTP und den Befehl QUOTE realisiert (lange her). Mit Quote können Befehle an ein Zielsystem übertragen werden.
Nachteil: die Verfolgung von FTP Befehlen ob diese richtig ausgeführt wurde ist nicht einfach. FTP Protokoll in Datei und dann Auslesen.
Klaus
-
Wen Du die Daten per FTP auf die AS/400 scubst kannst Du dort per FTP direkt die Weiterverarbeitung anstoßen.
GG 4890
-
Im FTP kannst du wie folgt Befehle absetzen:
lg Andreas
-
Vielen Dank.
Wenn ich das richtig sehe, dann geht das nur mit FTP und Befehlsaufruf .
Werde ich diese oder nächste Woche (in Zusammenarbeit mit Polen) probieren.
Falls jemand eine noch andere Lösung weiß, wäre ich um Hinweise dankbar.
Ansonsten also Remote-Befehl über FTP.
-
Das ganze ginge auch als HTTP request.
Ein Apache auf er IBM i mit RPG, PHP oder auch einen Job mit NodeJS starten.
In allen Fällen, kannst du die Daten an ein RPG übergeben und verarbeiten lassen.
Mit FTP geht es aber sicher am einfachsten.
-
... da gibt es noch: ssh, Aufruf stored procedure über SQL oder man könnte sich auch über Journal und RCVJRNE antriggern lassen, um nur die naheliegenden Varianten zu benennen.
D*B
-
Und noch eine Variante:
So, wie ich von Windows per rexec ein Kommando starten kann, lässt sich dies sicherlich ebenso von Unix/Linux aus durchführen (ssh/rsh).
Wenn es sich nur um einen Datensatz handelt, kann der sogar als Parameter an ein ausführendes Programm übergeben werden.
Ggf. ist es, wegen der Feldattributierung, dann einfacher ein eigenes CMD-Objekt zu erstellen umd mittels "MYCMD PARM(Datensatz)" als rsh aufzurufen.
Und noch eine Variante:
Da es nun mal auch für Unix bestimmt Java-Runtimes gibt, lässt sich mittles JDBC-Treiber der AS/400-Toolbox eine SQL-Verbindung einrichten und mittels "Call MyProcedure" oder Insert-Trigger einer Tabelle der Datensatz auf das System bringen, verarbeiten und sogar direkt eine Rückmeldung über Erfolg/nicht Erfolg initiieren.
Die Java-Toolbox unterstützt aber auch einen Programm-Call mit ähnlicher Funktionalität.
Und wer weiß, ggf. gibt es noch ein paar Varianten.
-
Danke für die guten Tipps.
Ich habe jetzt folgendes gemacht.
Ich lasse mir die Daten ohne Umweg über IFS oder Dokumentenordner per FTP direkt in eine physische Datei auf der AS400 einstellen, jeweils als ein Datenstring.
Dort wird bei jedem neuen Datensatz ein SQL-Datenbank-Trigger ausgelöst, der dann den Inhalt des Datensatzes sofort in eine andere Datei überträgt, dann über eine Stored Procedure ein CL aufruft, welches dann unverzüglich die weitere Verarbeitung aufruft.
In der Weiterverarbeitung wird u.a. der CSV-Datenstring "manuell" per RPG-Anweisungen in seine Einzel-Teile aufgelöst.
Die Ursprungsdatei kann dann sofort wieder neu gefüllt werden per FTP mit (Replace , da die Datem ja bereits verarbeitet wrden sind.
So sollte es gehen.
-
Schön, dass man einfache Dinge auch kompliziert lösen kann.
-
Das sehe ich so ähnlich
Zitat von Fuerchau
Schön, dass man einfache Dinge auch kompliziert lösen kann.
Ich fand es damals schön Kollegen zu haben mit denen man die beste Lösung erarbeiten konnte.
Und nicht nur Lösungen die auf den ersten Blick gut aussehen. Es müßen ja später auch andere Leute damit arbeiten.
Und wie einer meiner Chefs immer sagte KISS. Keep it short and simple.
Aber jeder ist seines Glückes Schmied....
GG 4854
-
Ich kämpfe auch gerade mt einer Schnittstelle zu/von einem Fremdsystem die angeblich native per SQL zugeifen können. Die Tabellendefinition liegt vor und nun tastet man sich Stück für Stück an die tatsächliche Schnittstelle heran:
"Ach, könnten Sie vielleicht auch noch dieses Feld mit dem Inhalt mit übergeben?"
"Wir können zwar SQL-Server, aber nicht mit Verbindunsgserver!"
"Haben Sie vielleicht einen .NET-Treiber für Ihre DB?"
Das Hauptproblem ist: Die "Installateure" der Software sind nicht die Porgrammierer. Diese dürfen auch nicht direkt kontaktiert werden, dafür gibts ja den Dienstweg (Zeitaufwand im Durchschnitt 14 Tage).
Die Schnittstelle hätte längst in Betrieb gehen sollen.
Wenn die Schnittstelle denn mal irgendwann funktioniert wäre sie die simpelste überhaupt.
Similar Threads
-
By heynem in forum IBM i Hauptforum
Antworten: 8
Letzter Beitrag: 25-10-05, 14:32
-
By malzusrex in forum IBM i Hauptforum
Antworten: 3
Letzter Beitrag: 23-07-02, 10:07
-
By Bleil in forum IBM i Hauptforum
Antworten: 2
Letzter Beitrag: 13-10-01, 20:15
-
By K_Tippi in forum IBM i Hauptforum
Antworten: 3
Letzter Beitrag: 27-03-01, 09:17
-
By gefis in forum IBM i Hauptforum
Antworten: 2
Letzter Beitrag: 09-03-01, 06:56
Tags for this Thread
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks