Makros verwenden, um ein Transaction-Skript auszuführen - Automate_Studio - Latest

Automate Studio mit Evolve-Benutzerleitfaden

Product type
Software
Portfolio
Integrate
Product family
Automate
Product
Automate > Automate Studio
Version
Latest
Language
Deutsch
Product name
Automate Studio
Title
Automate Studio mit Evolve-Benutzerleitfaden
Copyright
2024
First publish date
2018
Last updated
2024-09-06
Published on
2024-09-06T16:17:29.858569

Um ein Skript durch die Verwendung eines Makros auszuführen, erstellen Sie das Makro in Visual Basic for Applications (VBA).

  1. Öffnen Sie die Datendatei, die mit dem Skript verknüpft ist, welches Sie ausführen möchten.
    Anmerkung:

    Vergewissern Sie sich, dass Sie eine Datei mit Makros, eine .xlsm-Datei, verwenden.

  2. Drücken Sie Alt+F11.
  3. Klicken Sie im VBA-Editor unter Microsoft Excel-Objekte auf das Blatt, welches die Daten enthält, die Sie ausführen möchten.
  4. Kopieren Sie den unten stehenden Code und fügen Sie ihn in das Fenster ein.
  5. Ersetzen Sie unten den Datendateipfad, den Skriptdateipfad, den Blattnamen und den Namen für die automatische Anmeldung mit den Informationen für Ihre Dateien und mit Ihrem Namen für die automatische Anmeldung.
  6. Klicken Sie auf Speichern und schließen Sie den VBA-Editor.
  7. Klicken Sie in Excel auf die Registerkarte Ansicht und dann auf Makros.
  8. Klicken Sie auf das Makro, das ausgeführt werden soll, und klicken Sie anschließend auf Ausführen.
Anmerkung:

Hinweise: Vergewissern Sie sich, dass das Excel Add-In nicht aktiv ist(dass Sie nicht in Evolve angemeldet sind).

Asynchrone Makroausführung wird unterstützt.

Transaction Makros

Ein veröffentlichtes Skript ausführen

  1. Add-In-Objekte definieren.

    Dim StudioMacrosAddin, StudioMacros

  2. Add-In-Objekt aus Excel erhalten.

    Set StudioMacrosAddin = Application.COMAddIns.Item("WinshuttleStudioMacros.AddinModule")

  3. COM-Objekt von Add-In-Objekt erhalten.

    Set StudioMacros = StudioMacrosAddin.Object.Macros

  4. Wählen Sie die auszuführende, veröffentlichte Datei und definieren Sie die Ausführungseigenschaften (siehe Eigenschaften für ein Transaction Add-In-Objekt).

    Dim StudioMacros.PublishedFile = "MM02_MacroTest"

  5. Das veröffentlichte Skript öffnen.

    StudioMacros.OpenPublishedScript

  6. AddinObject ausführen, um das Skript auszuführen.

    StudioMacros.RunScript

Ein bestehendes Transaction Skript ausführen.

  1. Add-In-Objekte definieren.

    Dim StudioMacrosAddin, StudioMacros

  2. Add-In-Objekt aus Excel erhalten.

    Set StudioMacrosAddin = Application.COMAddIns.Item("WinshuttleStudioMacros.AddinModule")

  3. COM-Objekt von Add-In-Objekt erhalten.

    Set StudioMacros = StudioMacrosAddin.Object.Macros

  4. Wählen Sie das auszuführende Transaction Skript und definieren Sie die Ausführungseigenschaften (siehe Eigenschaften für ein Transaction Add-In-Objekt).

    Im Folgenden wird die Lösung lokal ausgeführt: Dim strShuttleFile = "C:\Users\Normal_Tx_Macro.txr" Im Folgenden wir die Lösung von Evolve ausgeführt: StudioMacros.LibraryName = "Transaction" Für von Evolve eingereichte Lösungen auf Lösungsname setzen. strShuttleFile = "MM02"

  5. Das auszuführende Skript öffnen.

    StudioMacros.OpenScript (strShuttleFile)

  6. AddinObject ausführen, um das Skript auszuführen.

    StudioMacros.RunScript

Anmerkung:

Wenn der Benutzer bei Kettenskripten mit den Einstellungen „Alle von einzelnen“ ein Makro verwendet, um das Skript auf einem SAP-Server vom Typ „SAP Trust“ auszuführen, wird für jedes Skript der SAP-Anmeldedialog angezeigt. Dies kann mit dem Parameter „StudioMacros.UseSameSAPServerForChain = True“ im Makrocode erfolgen, damit die SAP-Sitzung des ersten Skripts für alle nachfolgenden Kettenskripte verwendet wird.

Eigenschaften für ein Transaction Add-In-Objekt

Ausführungseinstellungen oder erweiterte Ausführungsoptionen, die im Skript eingestellt sind, werden während der Ausführung des Makros nicht berücksichtigt. Diese müssen über die verschiedene Eigenschaften eingestellt werden, die für das Add-In-Objekt eingeblendet wurden.

Eigenschaft/Funktion Wert(e)/Parameter Beschreibung

PublishedFile

Beschreibung des veröffentlichten Skripts

Wählt die auszuführende, veröffentlichte Datei aus

OpenPublishedScript

NV

Öffnet das veröffentlichte Skript

OpenScript()

Skriptdateipfad

Öffnet das auszuführende Skript

LibraryName Bibliotheksname Öffnet die Bibliothek mit der Lösung

StartRow

Zeilenanzahl

Excel-Zeile, von der ab der Datenupload beginnen soll

EndRow

Zeilenanzahl

Letzte Excel-Zeile, von der Daten hochgeladen werden sollen

WriteHeader

NV

Schreibt während der Ausführung Kopfzeilen

LogColumn

Spalte/Zelle:

Zeile oder Zelle, in die die Ausführungsprotokolle geschrieben werden sollen

SheetName

Name des Blattes

Name des Blattes, der für die Ausführung verwendet werden soll

Verbindungsname

SAP-Verbindungsname

SAP-Verbindungsname

Beispiel

StudioMacros.ConnectionName = "w6r"

Wird bei Evolve und Studio Manager verwendet.

RunReason

Ausführungsgrund-String

Einen Grund für diese Ausführung angeben

RunSelectedRows

NV

True: Es werden nur die in Excel ausgewählten Zeilen ausgeführt

RunFilteredRows

NV

True: Es werden nur die in Excel angezeigten Zeilen ausgeführt

RunType

0 – Angegebenen Bereich ausführen

1 – Ausführen und bei Fehlern anhalten

2 – Erste fünf Zeilen ausführen

3 – Nur Zeilen mit Fehlern ausführen

4 – Nur nicht verarbeitete Zeilen ausführen

5 – Angegebenen Bereich debuggen

6 – Nur erste Zeile debuggen

7 – Angegebenen Bereich validieren

8 – Ersten fünf Zeilen validieren

9 – Nur Fehlerzeilen validieren

10 – Nur nicht verarbeitete Zeilen validieren

11 – Angegebenen Bereich simulieren

12 – Erste fünf Zeilen validieren

13 – Nur Fehlerzeilen simulieren

14 – Nur nicht verarbeitete Zeilen simulieren

15 – Nicht verarbeitete Zeilen und Fehlerzeilen ausführen

16 – Nicht verarbeitete Zeilen und Fehlerzeilen validieren

17 – Nicht verarbeitete Zeilen und Fehlerzeilen simulieren

Wählen Sie eine Ausführungsart aus den möglichen Werten aus

 

RunScript

NV

Skript ausführen

SyncCall

NV

True – Das Skript wird synchron ausgeführt

Beispielcode: Ein veröffentlichtes Transaction Skript ausführen

Dieser Beispielcode wird mit dem Ausführungstyp „Fehlerzeilen und unbearbeitete Zeilen ausführen“ aktualisiert.

  Sub RunPublishedTXRfile() '---------------------------------------------- ' Macro to use WinshuttleStudioMacros addin with code '---------------------------------------------- ' ' RunPublishedfile Macro ' ' Dim StudioMacrosAddin, StudioMacros      On Error GoTo ErrHandler       ' GET ADDIN OBJECT FROM EXCEL       Set StudioMacrosAddin = Application.COMAddIns.Item("WinshuttleStudioMacros.AddinModule")        If StudioMacrosAddin Is Nothing Then          MsgBox "Unable to initialize object of WinshuttleStudioMacros.AddinModule addin"          Exit Sub       End If        ' Get com object from addin object       Set StudioMacros = StudioMacrosAddin.Object.Macros       If StudioMacros Is Nothing Then          MsgBox "Unable to initialize com object of Macros"          Exit Sub       End If        ' Select the published file to Run       StudioMacros.PublishedFile = "MM02_MacroTest"        StudioMacros.StartRow = 2       StudioMacros.EndRow = 6        ' Set True to write headers while Run       StudioMacros.WriteHeader = True    'StudioMacros.LogColumn = "H"   'StudioMacros.SheetName = "Sheet2"    'StudioMacros.ConnectionName = "w6r-800"        ' Set RunReason to provide reason for run.       StudioMacros.RunReason = "Run Reason"         'StudioMacros.RunSelectedRows = True       'StudioMacros.RunFilteredRows = True         ' RunSpecifiedRange = 0,       ' RunAndStopOnErrors = 1,       ' RunFirstFiveRows = 2,       ' RunOnlyErrorRows = 3,       ' RunOnlyUnProcessedRows = 4,       ' DebugSpecifiedRange = 5,       ' DebugFirstRowOnly = 6,       ' ValidateSpecifiedRange = 7,       ' ValidateFirstFiveRows = 8,       ' ValidateOnlyErrorRows = 9,       ' ValidateOnlyUnProcessedRows = 10,       ' SimulateSpecifiedRange = 11,       ' SimulateFirstFiveRows=12,       ' SimulateOnlyErrorRows=13,       ' SimulateOnlyUnprocessedRows=14,   ' RunUnProcessedAndErrorRows=15,       ' ValidateUnProcessedAndErrorRows=16,       ' SimulateUnProcessedAndErrorRows=17        StudioMacros.RunType = 0        ' Call the Run Function to open published script       StudioMacros.OpenPublishedScript        ' Call the Run Function to run script       StudioMacros.RunScript       Exit Sub   ErrHandler:      MsgBox Err.Description   End Sub 

 

Beispielcode: Ein bestehendes Transaction Skript ausführen

         Sub RunNormalTXRfile()  '---------------------------------------------- ' Macro to use WinshuttleStudioMacros addin with code '---------------------------------------------- ' ' RunPublishedfile Macro  '   Dim StudioMacrosAddin, StudioMacros      On Error GoTo ErrHandler       ' GET ADDIN OBJECT FROM EXCEL       Set StudioMacrosAddin = Application.COMAddIns.Item("WinshuttleStudioMacros.AddinModule")         If StudioMacrosAddin Is Nothing Then          MsgBox "Unable to initialize object of WinshuttleStudioMacros.AddinModule addin"          Exit Sub       End If         ' Get com object from addin object       Set StudioMacros = StudioMacrosAddin.Object.Macros       If StudioMacros Is Nothing Then          MsgBox "Unable to initialize com object of Macros"          Exit Sub       End If                StudioMacros.StartRow = 2       StudioMacros.EndRow = 0        ' Set True to write headers while Run       StudioMacros.WriteHeader = True    'StudioMacros.LogColumn = "H"   'StudioMacros.SheetName = "Sheet2"    'StudioMacros.ConnectionName = "w6r-800"    ' Set RunReason to provide reason for run.       StudioMacros.RunReason = "Run Reason"       'StudioMacros.RunSelectedRows = True       'StudioMacros.RunFilteredRows = True         ' RunSpecifiedRange = 0,       ' RunAndStopOnErrors = 1,       ' RunFirstFiveRows = 2,       ' RunOnlyErrorRows = 3,       ' RunOnlyUnProcessedRows = 4,       ' DebugSpecifiedRange = 5,       ' DebugFirstRowOnly = 6,       ' ValidateSpecifiedRange = 7,       ' ValidateFirstFiveRows = 8,       ' ValidateOnlyErrorRows = 9,       ' ValidateOnlyUnProcessedRows = 10,       ' SimulateSpecifiedRange = 11,       ' SimulateFirstFiveRows=12,       ' SimulateOnlyErrorRows=13,       ' SimulateOnlyUnprocessedRows=14,   ' RunUnProcessedAndErrorRows=15,       ' ValidateUnProcessedAndErrorRows=16,       ' SimulateUnProcessedAndErrorRows=17         StudioMacros.RunType = 0    ' Set in case of evolve subitted file   StudioMacros.LibraryName = "Transaction"   ' Set it to Solution Name in case of evolve submitted file   ' For local File,set strShuttleFile to local file path       strShuttleFile = "MM02"       '  Call the Run Function to open specified script       StudioMacros.OpenScript (strShuttleFile)       ' Call the Run Function to run script       StudioMacros.RunScript       Exit Sub   ErrHandler:      MsgBox Err.Description   End Sub        

Bekannte Probleme

  1. Makros, die in Transaction oder Query v10.x erstellt wurden, werden nicht automatisch in das Studio 20.3-Format konvertiert. Makros im Studio 20.3 Format sind nicht mit v10.x kompatibel. Um die Makros auszuführen, müssen Sie manuell konvertiert werden.
  2. Während Sie Makros verwenden, sollten die Automate Add-Ins nicht geladen werden (Sie sollten nicht bei Evolve/Studio Manager angemeldet sein). Die Automate Add-Ins können aktiviert werden.
  3. Die Startzeile ist immer 2, außer Sie geben eine andere Zeile an.
  4. RunSelectedRows und RunFilteredRows sind zwei sich gegenseitig ausschließende Optionen. Das Skript wird die zuletzt aktivierte Option verwenden.
  5. Datendateien dürfen nicht den Datenprüfungsworkflow anwenden, um durch Makros im Evolve/Studio Manager Modus ausgeführt zu werden.
  6. „In Evolve/Studio Manager speichern“ funktioniert nicht, wenn ein Makro dazu verwendet wird, die Datendatei im Evolve/Studio Manager Modus auszuführen.