1. Batch CALL mit for in 2. Batch Variable an 1. Batch übergeben.
Hallo,
mal wieder ein Batch Problem:
Kurz gesagt ich habe eine Hauptbatch, die eine Variable per call an eine 2. Batch übergeben soll.
Das funktioniert. In der 2. Batch findet eine Art Vergleich statt. Da das mehere If Schleifen sind, wollte ich diese Abfrage in einer separaten Batch machen. (Zeit und Übersicht)
Also meine 1. Batch hat ne Variable %ASTC%. Dann wird die 2. Batch aufgerufen. (call) und %ASTC% übergeben.
Der Wert in %ASTC% wird nun mit einer Art Datenbank verglichen. Wenn der Wert von %ASTC% vorhanden ist, dann wird per for in eine neue Variable (%ASOP%) bis zu 6 versch. Werte nacheinander geschrieben.
Also %ASOP% hat dann z.B. den Wert UUU.
Der soll wieder an die 1. Batch übergeben werden.
Wenn die Berechnung in der 1. Batch fertig ist, dann soll %ASOP% in der 2. Batch einen neuen Wert annehmen.
Z.B. UUC. Der soll wieder an die erste Batch übergeben werden........
Aber das krieg ich nett hin.
Ich müsste theoretisch aus der 2. Batch per call die 1. wieder aufrufen. Aber das geht ja nett.
Ich hätte eine mehr als Umständliche Lösung, aber die kommt nicht in Frage, wenn meine Batch später mal an die 1000 Werte verarbeiten soll.
Habt ihr da ne Lösung?
Wahrscheinlich habe ich die Parameterübergabe nett kapiert!?
florengray
mal wieder ein Batch Problem:
Kurz gesagt ich habe eine Hauptbatch, die eine Variable per call an eine 2. Batch übergeben soll.
Das funktioniert. In der 2. Batch findet eine Art Vergleich statt. Da das mehere If Schleifen sind, wollte ich diese Abfrage in einer separaten Batch machen. (Zeit und Übersicht)
Also meine 1. Batch hat ne Variable %ASTC%. Dann wird die 2. Batch aufgerufen. (call) und %ASTC% übergeben.
Der Wert in %ASTC% wird nun mit einer Art Datenbank verglichen. Wenn der Wert von %ASTC% vorhanden ist, dann wird per for in eine neue Variable (%ASOP%) bis zu 6 versch. Werte nacheinander geschrieben.
Also %ASOP% hat dann z.B. den Wert UUU.
Der soll wieder an die 1. Batch übergeben werden.
Wenn die Berechnung in der 1. Batch fertig ist, dann soll %ASOP% in der 2. Batch einen neuen Wert annehmen.
Z.B. UUC. Der soll wieder an die erste Batch übergeben werden........
Aber das krieg ich nett hin.
Ich müsste theoretisch aus der 2. Batch per call die 1. wieder aufrufen. Aber das geht ja nett.
Ich hätte eine mehr als Umständliche Lösung, aber die kommt nicht in Frage, wenn meine Batch später mal an die 1000 Werte verarbeiten soll.
Habt ihr da ne Lösung?
Wahrscheinlich habe ich die Parameterübergabe nett kapiert!?
florengray
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 81832
Url: https://administrator.de/contentid/81832
Ausgedruckt am: 25.11.2024 um 08:11 Uhr
4 Kommentare
Neuester Kommentar
Das ist ganz einfach. Du mußt garnichts zurück übergeben. Das was Du in der Batch 1 weiterverarbeiten willst hast du ja in der batch 2 in die Variable %ASOP% geschrieben.
Wenn du jetzt die Batch 2 beendest kannst du die Variable %ASOP% danach in Batch 1 ganz normal benutzen. Das funktioniert allerdings nur solange du in der Batch 2 kein setlocal am anfang benutzt
Wenn du jetzt die Batch 2 beendest kannst du die Variable %ASOP% danach in Batch 1 ganz normal benutzen. Das funktioniert allerdings nur solange du in der Batch 2 kein setlocal am anfang benutzt