From 1fbb96e88c302eba04e81f43154686eabd791474 Mon Sep 17 00:00:00 2001 From: Malte Bastian <40334865+bc-m@users.noreply.github.com> Date: Sat, 4 May 2024 01:02:00 +0200 Subject: [PATCH] feat: parse insert current date/time (#41) --- src/script_steps/constants.rs | 2 ++ .../parameters/parameter_values.rs | 13 ++++++++++ .../All script steps - ID 9.txt.snap | 4 ++-- ...ipt steps and all options - ID 11.txt.snap | 24 +++++++++---------- ...cript steps sorted by ID - ID 151.txt.snap | 4 ++-- ... steps sorted in English - ID 218.txt.snap | 4 ++-- ... steps sorted in Italian - ID 219.txt.snap | 4 ++-- .../fm16 script steps - ID 176.txt.snap | 4 ++-- .../Undefined variables - ID 217.txt.snap | 4 ++-- 9 files changed, 39 insertions(+), 24 deletions(-) diff --git a/src/script_steps/constants.rs b/src/script_steps/constants.rs index c55dc6d..b433c9f 100644 --- a/src/script_steps/constants.rs +++ b/src/script_steps/constants.rs @@ -18,6 +18,8 @@ pub enum ScriptStep { DuplicateRecordRequest = 8, DeleteRecordRequest = 9, DeleteAllRecords = 10, + InsertCurrentDate = 13, + InsertCurrentTime = 14, GoToRecordRequestPage = 16, GoToField = 17, CheckRecord = 19, diff --git a/src/script_steps/parameters/parameter_values.rs b/src/script_steps/parameters/parameter_values.rs index eb1427c..d522436 100644 --- a/src/script_steps/parameters/parameter_values.rs +++ b/src/script_steps/parameters/parameter_values.rs @@ -5,6 +5,7 @@ use quick_xml::Reader; use crate::script_steps::parameters::boolean::Boolean; use crate::script_steps::parameters::calculation::Calculation; use crate::script_steps::parameters::list::List; +use crate::script_steps::parameters::target::Target; use crate::utils::attributes::get_attribute; pub struct ParameterValues { @@ -50,6 +51,18 @@ impl ParameterValues { } depth -= 1; } + "Target" => { + if let Ok(param_value) = Target::from_xml(reader, &e) { + if let Some(display) = param_value.display() { + item.parameters.push(format!( + "{}: {}", + parameter_type.as_str(), + display + )); + } + } + depth -= 1; + } "Condition" | "ErrorCode" | "ErrorMessage" | "CustomDebugInfo" => { if let Ok(param_value) = Calculation::from_xml(reader, &e) { item.parameters.push(format!( diff --git a/tests/snapshots/scripts_sanitized/fmSyntaxColorizer/Example SyntaxColorizing - ID 46/All script steps - ID 9.txt.snap b/tests/snapshots/scripts_sanitized/fmSyntaxColorizer/Example SyntaxColorizing - ID 46/All script steps - ID 9.txt.snap index f5a6da6..a579bbf 100644 --- a/tests/snapshots/scripts_sanitized/fmSyntaxColorizer/Example SyntaxColorizing - ID 46/All script steps - ID 9.txt.snap +++ b/tests/snapshots/scripts_sanitized/fmSyntaxColorizer/Example SyntaxColorizing - ID 46/All script steps - ID 9.txt.snap @@ -57,8 +57,8 @@ Rückgängig/Wiederholen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRI Exportiere alle Feldwerte ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "132" ] ⚠️⚠️⚠️ Audio/Video einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "159" ] ⚠️⚠️⚠️ Berechneten Wert einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "77" ] ⚠️⚠️⚠️ -Systemdatum einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "13" ] ⚠️⚠️⚠️ -Systemuhrzeit einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "14" ] ⚠️⚠️⚠️ +Systemdatum einfügen [ Auswahl: ON ] +Systemuhrzeit einfügen [ Auswahl: ON ] Benutzernamen einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "60" ] ⚠️⚠️⚠️ Datei einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "131" ] ⚠️⚠️⚠️ PDF einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "158" ] ⚠️⚠️⚠️ diff --git a/tests/snapshots/scripts_sanitized/fmSyntaxColorizer/Example SyntaxColorizing - ID 46/All script steps and all options - ID 11.txt.snap b/tests/snapshots/scripts_sanitized/fmSyntaxColorizer/Example SyntaxColorizing - ID 46/All script steps and all options - ID 11.txt.snap index d12dfb8..025eb23 100644 --- a/tests/snapshots/scripts_sanitized/fmSyntaxColorizer/Example SyntaxColorizing - ID 46/All script steps and all options - ID 11.txt.snap +++ b/tests/snapshots/scripts_sanitized/fmSyntaxColorizer/Example SyntaxColorizing - ID 46/All script steps and all options - ID 11.txt.snap @@ -259,15 +259,15 @@ Berechneten Wert einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SC Aus URL einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "160" ] ⚠️⚠️⚠️ -Systemdatum einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "13" ] ⚠️⚠️⚠️ -Systemdatum einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "13" ] ⚠️⚠️⚠️ -Systemdatum einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "13" ] ⚠️⚠️⚠️ -Systemdatum einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "13" ] ⚠️⚠️⚠️ +Systemdatum einfügen [ Auswahl: OFF ] +Systemdatum einfügen [ Auswahl: ON ] +Systemdatum einfügen [ Auswahl: OFF ; Target: $UseSetVariable ] +Systemdatum einfügen [ Auswahl: ON ; Target: $UseSetVariable ] -Systemuhrzeit einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "14" ] ⚠️⚠️⚠️ -Systemuhrzeit einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "14" ] ⚠️⚠️⚠️ -Systemuhrzeit einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "14" ] ⚠️⚠️⚠️ -Systemuhrzeit einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "14" ] ⚠️⚠️⚠️ +Systemuhrzeit einfügen [ Auswahl: OFF ] +Systemuhrzeit einfügen [ Auswahl: ON ] +Systemuhrzeit einfügen [ Auswahl: OFF ; Target: $UseSetVariable ] +Systemuhrzeit einfügen [ Auswahl: ON ; Target: $UseSetVariable ] Benutzernamen einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "60" ] ⚠️⚠️⚠️ @@ -280,11 +280,11 @@ Berechneten Wert einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SC Berechneten Wert einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "77" ] ⚠️⚠️⚠️ Berechneten Wert einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "77" ] ⚠️⚠️⚠️ -Systemdatum einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "13" ] ⚠️⚠️⚠️ -Systemdatum einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "13" ] ⚠️⚠️⚠️ +Systemdatum einfügen [ Auswahl: ON ; Target: _Home::_gInputText1 ] +Systemdatum einfügen [ Auswahl: ON ; Target: $UseSetVariable ] -Systemuhrzeit einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "14" ] ⚠️⚠️⚠️ -Systemuhrzeit einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "14" ] ⚠️⚠️⚠️ +Systemuhrzeit einfügen [ Auswahl: ON ; Target: _Home::_gInputText2 ] +Systemuhrzeit einfügen [ Auswahl: ON ; Target: $UseSetVariable ] Benutzernamen einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "60" ] ⚠️⚠️⚠️ Benutzernamen einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "60" ] ⚠️⚠️⚠️ diff --git a/tests/snapshots/scripts_sanitized/fmSyntaxColorizer/Example SyntaxColorizing - ID 46/All script steps sorted by ID - ID 151.txt.snap b/tests/snapshots/scripts_sanitized/fmSyntaxColorizer/Example SyntaxColorizing - ID 46/All script steps sorted by ID - ID 151.txt.snap index a431282..0a43f45 100644 --- a/tests/snapshots/scripts_sanitized/fmSyntaxColorizer/Example SyntaxColorizing - ID 46/All script steps sorted by ID - ID 151.txt.snap +++ b/tests/snapshots/scripts_sanitized/fmSyntaxColorizer/Example SyntaxColorizing - ID 46/All script steps sorted by ID - ID 151.txt.snap @@ -14,8 +14,8 @@ Datensatz/Abfrage löschen [ Mit Dialog: ON ] Alle Datensätze löschen [ Mit Dialog: ON ] Aus Index einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "11" ] ⚠️⚠️⚠️ Aus zuletzt geöffnetem Satz einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "12" ] ⚠️⚠️⚠️ -Systemdatum einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "13" ] ⚠️⚠️⚠️ -Systemuhrzeit einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "14" ] ⚠️⚠️⚠️ +Systemdatum einfügen [ Auswahl: ON ] +Systemuhrzeit einfügen [ Auswahl: ON ] # Command ID 15 Gehe zu Datens./Abfrage/Seite [ Erste(r) ] Gehe zu Feld [] diff --git a/tests/snapshots/scripts_sanitized/fmSyntaxColorizer/Example SyntaxColorizing - ID 46/All script steps sorted in English - ID 218.txt.snap b/tests/snapshots/scripts_sanitized/fmSyntaxColorizer/Example SyntaxColorizing - ID 46/All script steps sorted in English - ID 218.txt.snap index 68725bb..0436ad7 100644 --- a/tests/snapshots/scripts_sanitized/fmSyntaxColorizer/Example SyntaxColorizing - ID 46/All script steps sorted in English - ID 218.txt.snap +++ b/tests/snapshots/scripts_sanitized/fmSyntaxColorizer/Example SyntaxColorizing - ID 46/All script steps sorted in English - ID 218.txt.snap @@ -73,8 +73,8 @@ Ende (wenn) Datensätze importieren ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "35" ] ⚠️⚠️⚠️ Audio/Video einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "159" ] ⚠️⚠️⚠️ Berechneten Wert einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "77" ] ⚠️⚠️⚠️ -Systemdatum einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "13" ] ⚠️⚠️⚠️ -Systemuhrzeit einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "14" ] ⚠️⚠️⚠️ +Systemdatum einfügen [ Auswahl: ON ] +Systemuhrzeit einfügen [ Auswahl: ON ] Benutzernamen einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "60" ] ⚠️⚠️⚠️ Datei einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "131" ] ⚠️⚠️⚠️ PDF einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "158" ] ⚠️⚠️⚠️ diff --git a/tests/snapshots/scripts_sanitized/fmSyntaxColorizer/Example SyntaxColorizing - ID 46/All script steps sorted in Italian - ID 219.txt.snap b/tests/snapshots/scripts_sanitized/fmSyntaxColorizer/Example SyntaxColorizing - ID 46/All script steps sorted in Italian - ID 219.txt.snap index 9d20b82..3334a5a 100644 --- a/tests/snapshots/scripts_sanitized/fmSyntaxColorizer/Example SyntaxColorizing - ID 46/All script steps sorted in Italian - ID 219.txt.snap +++ b/tests/snapshots/scripts_sanitized/fmSyntaxColorizer/Example SyntaxColorizing - ID 46/All script steps sorted in Italian - ID 219.txt.snap @@ -100,11 +100,11 @@ Aus URL einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP Von Gerät einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "161" ] ⚠️⚠️⚠️ Aus Index einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "11" ] ⚠️⚠️⚠️ Aus zuletzt geöffnetem Satz einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "12" ] ⚠️⚠️⚠️ -Systemdatum einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "13" ] ⚠️⚠️⚠️ +Systemdatum einfügen [ Auswahl: ON ] Datei einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "131" ] ⚠️⚠️⚠️ Bild einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "56" ] ⚠️⚠️⚠️ Benutzernamen einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "60" ] ⚠️⚠️⚠️ -Systemuhrzeit einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "14" ] ⚠️⚠️⚠️ +Systemuhrzeit einfügen [ Auswahl: ON ] Berechneten Wert einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "77" ] ⚠️⚠️⚠️ Text einfügen [ Select ] Menüset installieren ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "142" ] ⚠️⚠️⚠️ diff --git a/tests/snapshots/scripts_sanitized/fmSyntaxColorizer/Example SyntaxColorizing - ID 46/New functionality reference - ID 197/Script steps - ID 199/fm16 script steps - ID 176.txt.snap b/tests/snapshots/scripts_sanitized/fmSyntaxColorizer/Example SyntaxColorizing - ID 46/New functionality reference - ID 197/Script steps - ID 199/fm16 script steps - ID 176.txt.snap index f471d82..18923be 100644 --- a/tests/snapshots/scripts_sanitized/fmSyntaxColorizer/Example SyntaxColorizing - ID 46/New functionality reference - ID 197/Script steps - ID 199/fm16 script steps - ID 176.txt.snap +++ b/tests/snapshots/scripts_sanitized/fmSyntaxColorizer/Example SyntaxColorizing - ID 46/New functionality reference - ID 197/Script steps - ID 199/fm16 script steps - ID 176.txt.snap @@ -7,8 +7,8 @@ Text einfügen [ Select ; Target: $Code ; "A B C" ] Berechneten Wert einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "77" ] ⚠️⚠️⚠️ -Systemdatum einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "13" ] ⚠️⚠️⚠️ -Systemuhrzeit einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "14" ] ⚠️⚠️⚠️ +Systemdatum einfügen [ Auswahl: ON ; Target: $UseSetVariable ] +Systemuhrzeit einfügen [ Auswahl: ON ; Target: $UseSetVariable ] Benutzernamen einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "60" ] ⚠️⚠️⚠️ Datei einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "131" ] ⚠️⚠️⚠️ Aus URL einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "160" ] ⚠️⚠️⚠️ diff --git a/tests/snapshots/scripts_sanitized/fmSyntaxColorizer/Example SyntaxColorizing - ID 46/Undefined variables - ID 217.txt.snap b/tests/snapshots/scripts_sanitized/fmSyntaxColorizer/Example SyntaxColorizing - ID 46/Undefined variables - ID 217.txt.snap index dec50d8..0b3984a 100644 --- a/tests/snapshots/scripts_sanitized/fmSyntaxColorizer/Example SyntaxColorizing - ID 46/Undefined variables - ID 217.txt.snap +++ b/tests/snapshots/scripts_sanitized/fmSyntaxColorizer/Example SyntaxColorizing - ID 46/Undefined variables - ID 217.txt.snap @@ -56,9 +56,9 @@ Berechneten Wert einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SC Text einfügen [ Select ; Target: $TargetVar ; "$ThisIsNotAVariable" ] # SUCCESS: MBS applies variable checking to the various Insert steps -Systemdatum einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "13" ] ⚠️⚠️⚠️ +Systemdatum einfügen [ Auswahl: ON ; Target: $TargetVar ] # SUCCESS: -Systemuhrzeit einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "14" ] ⚠️⚠️⚠️ +Systemuhrzeit einfügen [ Auswahl: ON ; Target: $TargetVar ] # SUCCESS: Benutzernamen einfügen ⚠️⚠️⚠️ FM-XML-EXPORT-EXPLODER: UNKNOWN SCRIPT-STEP [ ID: "60" ] ⚠️⚠️⚠️