Scriptabhängigkeiten

Community help and discussion for RapidRep Designer Application

Scriptabhängigkeiten

Postby anja.hennig » 20 Apr 2017, 16:08

Hallo,

ich möchte mit Skripte verschiedene Testfälle testen in meinen Report. Pro Testfall habe ich hier ein Skript implementiert, welches den Testfall ausführt und Ergebnisse liefert.
Da ich nicht immer alle Testfälle auf einmal testen möchte, wenn ich den Report ausführe, steuere ich die Ausführung mit einem Parameter "Testfallname", indem ich in einem Ausführ-Script die jeweiligen Testfall-Scripte mit If aufrufe
z. B. so:

#if($Testfall == '1')
SELECT * FROM $CurrentReport.getScriptByName("Testfall1")
#endif
#endif
#if($Testfall == '2')
SELECT * FROM $CurrentReport.getScriptByName("Testfall2")
#endif
....etc.
Hierzu muss ich auch bei diesem Skript "Testfall1" und "Testfall2" in das Tab "Reihenfolge" eintragen, da die Testfall-Skripte vor dem aufzurufenden Skript laufen müssen.

Da ich pro Aufgabe immer nur einen Testfall ausführe habe ich bedenken, wg der Performance, da in "Reihenfolge"-tab bis zu 20 Testfallskripte hinterlegt sind, aber nur einer faktisch ausgeführt werden soll.
Steuert RapidRep automitisch das wenn nur ein Skript benötigt wird aus der "Reihenfolge", dass nur eines ausgeführt wird?
Würde es gehen, dass ich die Skripte nur als "evaluieren" in die "Reihenfolge" eintrage? würde das die Performance verbessern?
Oder gibt es ein bewerteres Vorgehen um verschiedene Skripte dynamisch in einer Aufgabe laufen zu lassen?

Grüße

Anja
anja.hennig
 
Posts: 14
Joined: 18 Jan 2017, 11:59

Re: Scriptabhängigkeiten

Postby KaiBaechle » 21 Apr 2017, 15:06

Grundsätzlich ist für diese Problemstellung vorgesehen, dass für jeden Testfall ein eigener Task definiert wird.

Eine Möglichkeit, um das bisherige Vorgehen weiter zu verwenden besteht darin, die referenzierten Skripte als "Evaluate only" zu kennzeichnen, damit sie selbst nicht zur Ausführung kommen. Deren Ergebnis-SQL kann dann im referenzierenden Skript verwendet werden:

SELECT T. *
FROM ($CurrentReport.getScriptByName($Testfall).getEvaluatedBody()) T

... schön ist das aber nicht und Voraussetzung ist, dass das referenzierte und das referenzierende Script gegen die gleiche Datenquelle laufen.
KaiBaechle
 
Posts: 33
Joined: 24 May 2013, 21:20

Re: Scriptabhängigkeiten

Postby KaiBaechle » 21 Apr 2017, 15:10

Nachtrag! Besser ist ein Zeilenumbruch vor der schließenden Klammer, weil sonst ein SQL-Zeilenkommentar (-- Kommentar) in der letzten Zeile des referenzierten Scriptes die schließende Klammer und den Alias T auskommentieren würde:

SELECT T. *
FROM ($CurrentReport.getScriptByName($Testfall).getEvaluatedBody()
) T
KaiBaechle
 
Posts: 33
Joined: 24 May 2013, 21:20


Return to RapidRep Designer



Who is online

Users browsing this forum: No registered users and 1 guest

cron