<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Hallo zusammen,
In meinem aktuellen Projekt schreibe ich ein Skript, um mehrere Skripte auszuführen, die bereits mit einer Datentabelle verknüpft sind, und dann jedes Ergebnisfenster durch „Kopieren und Einfügen“ in ein neues Fenster zu kopieren, mit dem Endziel, dass das „neue Fenster“ alle benötigten Ergebnisse enthält Bild für einen Bericht.
Für Skripte, die einen ordnungsgemäßen Bericht erstellen, ist dies ziemlich einfach und kann wie folgt durchgeführt werden:
:: winOut = Neues Fenster ( "Aus" , :: boxOut = V-Listenfeld () ) ;
:: dtMain = Aktuelle Datentabelle () ;
:: boxOut << Anhängen ( Textfeld ( „||Variabilitätsdiagramm für alle Wochen“ ) ) ;
:: boxOut << Anhängen ( ( :: dtMain << Skript ausführen ( „VarChart Alle Wochen“ )) << Bericht ) ;
Allerdings läuft es nicht so einfach Skripte, die eine Datentabelle erstellen (dh eine Untertabelle der Hauptdatentabelle).
Was müsste getan werden, um eine Datentabelle an mein „::winOut“ anzuhängen? Ich kenne einen Befehl wie
::dataTable << LayOut
Erzeugt ein „Bild“, das mit dem übereinstimmt, was ich anhängen möchte, aber ich kann nicht herausfinden, wie ich das (oder etwas Ähnliches) an mein ::winOut anhängen kann
Ich sollte beachten, dass dies mein dritter Tag mit der Skripterstellung über JSL ist, daher gibt es wahrscheinlich viele „Tricks“, die mir nicht bekannt sind.
Als Beispiel: Das ist, was ich bisher habe...
:: boxOut << Anhängen ( Textfeld ( "||Tabelle der Durchschnittswerte" ) ) ;
:: dtMain << Skript ausführen ( „Tabelle der Durchschnittswerte“ ) ;
:: dtTemp = ( Datentabelle ( „Tabelle der Durchschnittswerte“ )) ;
:: boxOut << anhängen ( ??? ) ;
Schließen ( :: dtTemp ) ;
Als Vorsichtsmaßnahme gibt es außerdem „Vertrauensprobleme“ bei der Änderung vorhandener Skripte. Ich kann die „Tabelle der Durchschnittswerte“ in keiner Weise ändern, dies alles muss außerhalb der vorhandenen Skripte erfolgen.
Danke für die Hilfe,
-Tom
Hallo Wendy,
Das funktioniert perfekt! Vielen Dank für Ihre Hilfe und Ihren Überblick über den Scripting Index
Hallo Ian!
Vielen Dank für Ihre Hilfe. Dies scheint zunächst zu funktionieren, aber sobald die von DataTableBox() referenzierte Datentabelle geschlossen wird, wird auch die DataTableBox in ::winOut geschlossen/verschwindet (was ein merkwürdiges Verhalten ist).
Aber vielen Dank für die Hilfe beim Auffinden der Skriptressourcen. Diese werden meine Arbeit sicherlich erleichtern
Hallo Tom.
Sie können die Get As Report-Nachricht an das Datentabellenobjekt senden, um ein DisplayBox-Objekt der Tabelle zurückzugeben.In Ihrem Beispiel könnte Ihr Code so aussehen:
::boxOut << Append( ::dtTemp << Get As Report );
Wie erfährt man also von solchen Nachrichten?Alle für ein Objekt verfügbaren Meldungen sowie Skriptbeispiele finden Sie im Skriptindex.Um den Skriptindex anzuzeigen, klicken Sie auf das Menü „Hilfe“ und wählen Sie „Skriptindex“ aus.Stellen Sie sicher, dass direkt unter dem Suchfeld im Dropdown-Menü „Alle Kategorien“ ausgewählt ist.Scrollen Sie nach unten und wählen Sie das Objekt aus, mit dem Sie arbeiten – in diesem Fall Datentabelle.Die Artikelliste enthält alle für das Objekt geeigneten Nachrichten.Wenn Sie Nachrichten in der Liste „Elemente“ auswählen, wird die rechte Seite des Fensters mit der generischen Syntax, einer kurzen Beschreibung und einem Beispielskript aktualisiert, das direkt über den Skriptindex ausgeführt werden kann.
Ich hoffe, das ist hilfreich.
Wendy
Haben Sie 'DataTableBox()' ausprobiert? Gehen Sie zu „Hilfe > Skripthandbuch“ und suchen Sie danach, um ein Beispiel zu sehen.
Wenn Sie mit JSL beginnen, ist dies im Allgemeinen eine gute Ressource, natürlich zusammen mit „Hilfe > Bücher > Skripthandbuch“.