Metainformationen zur Seite
  •  

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
speedy:30_modules:script [2020/10/07 12:38]
admin [Document Operations-Ereignisse]
speedy:30_modules:script [2022/01/19 10:45] (aktuell)
speedy
Zeile 1: Zeile 1:
 ====== Scripting ====== ====== Scripting ======
-Mit Hilfe des Scripting Moduls kann speedyPDM Ereignisorientiert angepasst werden. \\+Mit Hilfe des Scripting Moduls kann speedyPDM ereignisorientiert angepasst werden. \\
 Um das Scripting Modul nutzen zu können muss die Programmbibliothek modScript7.dll im speedy/Admin unter Anwendungsmodule hinzugefügt werden. \\ Um das Scripting Modul nutzen zu können muss die Programmbibliothek modScript7.dll im speedy/Admin unter Anwendungsmodule hinzugefügt werden. \\
 Sie haben die Wahl die Ereignisbehandlungsroutinen entweder in VBScript oder JScript zu schreiben.  Sie haben die Wahl die Ereignisbehandlungsroutinen entweder in VBScript oder JScript zu schreiben. 
Zeile 15: Zeile 15:
 |swxSpeedy.*| Wird bei Aktionen innerhalb von Solidworks aufgerufen | |swxSpeedy.*| Wird bei Aktionen innerhalb von Solidworks aufgerufen |
 |aisSpeedy.*| Wird bei Aktionen innerhalb von Autodesk Inventor aufgerufen | |aisSpeedy.*| Wird bei Aktionen innerhalb von Autodesk Inventor aufgerufen |
-\\+
  
 ==== Ereignisroutinen ==== ==== Ereignisroutinen ====
Zeile 24: Zeile 24:
 | timing      | EventTimingEnum     | Gibt den Zeitpunkt des Ereignisses an. | | timing      | EventTimingEnum     | Gibt den Zeitpunkt des Ereignisses an. |
 | handling    | HandlingCodeEnum    | Rückgabewert, ob die Ereignisroutine das Ereignis behandelt hat und damit evtl. keine weitere Arbeit durch das System zu erfolgen hat. | | handling    | HandlingCodeEnum    | Rückgabewert, ob die Ereignisroutine das Ereignis behandelt hat und damit evtl. keine weitere Arbeit durch das System zu erfolgen hat. |
-| dictionary  | Dictionary - Object | Scripting.Dictionary aus der Scripting Runtime Library |+| dictionary  | Dictionary - Object | Scripting.Dictionary aus der Scripting Runtime Library. Der Ihalt des Dictionaries kann variieren. |
 \\ \\
  
Zeile 39: Zeile 39:
 </code> </code>
  
-Der Parameter **handling** gibt eine Information wie das Ereignis behandlet wurde zurück. Standart-Wert = 1+Der Parameter **handling** gibt eine Information wie das Ereignis behandelt wurde zurück. Standart-Wert = 1
  
 <code> <code>
Zeile 66: Zeile 66:
 |obj_description| | |obj_description| |
 |obj_class| Klassenname des Objekts (z.B. CZvContainer für Ordner). | |obj_class| Klassenname des Objekts (z.B. CZvContainer für Ordner). |
-\\+<note warning> 
 +Die beiden Eigenschaften session.database und vault.database liefern kein Ergebnis, wenn mit dem Datenbank-Direkttreiber „MYSQL“ gearbeitet wird. 
 +</note> 
  
 ===== Globale Funktionen ===== ===== Globale Funktionen =====
Zeile 75: Zeile 78:
 === Application.GetSessionDb === === Application.GetSessionDb ===
 Gibt das ADODB.Connection Objekt der Session Datenbank zurück. \\ Gibt das ADODB.Connection Objekt der Session Datenbank zurück. \\
-\\+<note warning>Diese Funktion liefert kein Ergebnis, wenn mit dem Datenbank-Direkttreiber "MYSQL" gearbeitet wird.</note> 
 === Application.GetRootPath === === Application.GetRootPath ===
 Gibt den Root Path, wie in der dwKernel.ini eingestellt, zurück. \\ Gibt den Root Path, wie in der dwKernel.ini eingestellt, zurück. \\
Zeile 154: Zeile 158:
  
 === Application.GetDocumentPath(DocNo) ===  === Application.GetDocumentPath(DocNo) === 
-Gibt den Ablagepfag des Dokuments zurück.\\+Gibt den Ablagepfad des Dokuments zurück.\\
 \\  \\ 
-\\+ 
 +=== Application.DbExecute(Connection, Statement) ===  
 +Führt das SQL-Statement auf der benannten Datenbankverbindung aus. \\ 
 +Wird keine Verbindung (Connection) angegeben, wird die Datenbank der Session verwendet. \\ 
 +In Multi-Vault-Umgebungen kann der Name des Vault angegeben werden, um die Datenbank des Vault zu verwenden. \\ 
 +Die Funktion gibt 0 zurück, wenn kein Fehler vorliegt. \\ 
 +Die Funktion liefert kein Ergebnis aus dem SQL-Statement zurück. \\ 
 +<code>DbExecute("", "UPDATE dm_document d inner join dm_version v ON d.doc_did=v.ver_did AND d.doc_rev=v.ver_major AND d.doc_ver=v.ver_minor inner join dm_prop_cad p on v.ver_vid=p.prop_did SET p.NORM = 'DIN 931' WHERE d.doc_docno = 'BS01516';")</code> 
 + 
 +=== Application.DbQuery(Connection, Statement) ===  
 +Führt das SQL-Abfrage auf der benannten Datenbankverbindung aus. \\ 
 +Wird keine Verbindung (Connection) angegeben, wird die Datenbank der Session verwendet. \\ 
 +In Multi-Vault-Umgebungen kann der Name des Vault angegeben werden, um die Datenbank des Vault zu verwenden. \\ 
 +Die Funktion liefert die Werte der in der Abfrage definierten Felder in einem Array zurück. 
 +<code>DbQuery("", "SELECT lst_idx,lst_name,lst_desc FROM lng_lst WHERE lst_typ='PROJEKTSTATUS';")  
 + 
 +Ergebnis: 
 +0 0 "Erstellt" 
 +1 1 "In Arbeit" 
 +2 2 "Angehalten" 
 +3 3 "Beim Kunden" 
 +4 4 "Im Bau" 
 +5 5 "Fertig" 
 +</code> 
 + 
 +=== Application.DbLookup(Connection, Expression, Domain, Criteria) ===  
 +Mit der DbLookup-Funktion können Sie den Wert eines bestimmten Feldes (Expression) aus einer bestimmten Datensatzgruppe (einer Domäne) abrufen.\\ 
 +Mit der Angabe von Criteria definieren Sie ein Suchkriterium.\\  
 +In de Praxis werden die 3 Werte zu einem SQL-Statement zusammengesetzt und der erste gefundene Wert ist das Ergebnis der Suche: \\ 
 +<code>SELECT <Expression> FROM <Domain> WHERE Criteria</code> 
 +<code> 
 +DbLookup("", "MAX(doc_docno)", "dm_document", "") - Liefert die größte Dokumentnummer 
 +DbLookup("", "sett_value", "dm_setting", "sett_key='bom.autosorted'" - Liefert den Einstellungswert des Konfigurationsparameters [bom.autosorted] 
 +</code> 
 + 
 +=== Application.Sleep(Milliseconds) === 
 +Hält die Ausführung der Anwendung an, bis das Timeout-Intervall abgelaufen ist.  
  
 ==== Clipboard - Objekt ==== ==== Clipboard - Objekt ====
Zeile 258: Zeile 299:
 === Document_onBeforeImport(timing, handling, dictionary) === === Document_onBeforeImport(timing, handling, dictionary) ===
 ^ Eigenschaft ^ Beschreibung ^ ^ Eigenschaft ^ Beschreibung ^
-|filename|Übergibt den Datei-Namen| +|timing | Immer kBefore | 
 +|filename| Übergibt den Datei-Namen| 
  
 === Document_onCreate(timing, handling, dictionary) === === Document_onCreate(timing, handling, dictionary) ===
Zeile 602: Zeile 644:
 |kBefore|Zeitpunkt wann die Aktion ausgeführt werden soll(Hier unrelevant)| |kBefore|Zeitpunkt wann die Aktion ausgeführt werden soll(Hier unrelevant)|
 |dictionary|Übergibt das Dictionary Objekt| |dictionary|Übergibt das Dictionary Objekt|
-Rückgabe true oder 1: Das Dictionary enthält Eigenschaften, die in den Dialog zu übernehmen sind.+**Rückgabe:** true oder 1 :Das Dictionary enthält Eigenschaften, die in den Dialog zu übernehmen sind.
 \\ \\ \\ \\
  
Zeile 610: Zeile 652:
 |kBefore|Zeitpunkt wann die Aktion ausgeführt werden soll(Hier unrelevant)| |kBefore|Zeitpunkt wann die Aktion ausgeführt werden soll(Hier unrelevant)|
 |dictionary|Übergibt das Dictionary Objekt| |dictionary|Übergibt das Dictionary Objekt|
 +**Rückgabe:** 1 := Das Dictionary enthält Eigenschaften, die in den Dialog zu übernehmen sind.
 +
 Sobald OnValidate aufgerufen wurde, wird der OnBrowse nicht mehr aufgerufen. Sobald OnValidate aufgerufen wurde, wird der OnBrowse nicht mehr aufgerufen.
-Rückgabe 1: Das Dictionary enthält Eigenschaften, die in den Dialog zu übernehmen sind. 
 \\ \\ \\ \\
  
Zeile 620: Zeile 663:
 |val | Dazugehöriger Wert zur Eigenschaft. | |val | Dazugehöriger Wert zur Eigenschaft. |
 |dictionary | Übergibt das Dictionary Objekt | |dictionary | Übergibt das Dictionary Objekt |
-Rückgabe 1: Das Dictionary enthält Eigenschaften, die in den Dialog zu übernehmen sind.+**Rückgabe:**  :=  Das Dictionary enthält Eigenschaften, die in den Dialog zu übernehmen sind.
 \\ \\ \\ \\ \\ \\
  
Zeile 634: Zeile 677:
 |kBefore|Zeitpunkt wann die Aktion ausgeführt werden soll(Hier unrelevant)| |kBefore|Zeitpunkt wann die Aktion ausgeführt werden soll(Hier unrelevant)|
 |dictionary|Übergibt das Dictionary Objekt| |dictionary|Übergibt das Dictionary Objekt|
-Rückgabe true oder 1: Das Dictionary enthält Eigenschaften, die in den Dialog zu übernehmen sind.+**Rückgabe:** true oder 1 :Das Dictionary enthält Eigenschaften, die in den Dialog zu übernehmen sind.
 \\ \\ \\ \\
  
Zeile 642: Zeile 685:
 |kBefore|Zeitpunkt wann die Aktion ausgeführt werden soll(Hier unrelevant)| |kBefore|Zeitpunkt wann die Aktion ausgeführt werden soll(Hier unrelevant)|
 |dictionary|Übergibt das Dictionary Objekt| |dictionary|Übergibt das Dictionary Objekt|
 +**Rückgabe:** 1 := Das Dictionary enthält Eigenschaften, die in den Dialog zu übernehmen sind.
 +
 Sobald ein OnValidate aufgerufen wurde, wird der OnBrowse nicht mehr aufgerufen. Sobald ein OnValidate aufgerufen wurde, wird der OnBrowse nicht mehr aufgerufen.
-Rückgabe 1: Das Dictionary enthält Eigenschaften, die in den Dialog zu übernehmen sind. 
 \\ \\ \\ \\ \\ \\
  
Zeile 760: Zeile 804:
 |lEventTiming|Zeitpunkt wann die aktion Ausgeführt werden soll| |lEventTiming|Zeitpunkt wann die aktion Ausgeführt werden soll|
 |dictionary|Übergibt das Dictionary Objekt| |dictionary|Übergibt das Dictionary Objekt|
 +\\
 +
 +=== OnFileOpen(lEventTiming, dictionary) ===
 +Ereignis-Routine die beim öffnen einer Datei ausgeführt wird.
 +^ Eigenschaft ^ Beschreibung ^
 +|lEventTiming|Zeitpunkt wann die aktion Ausgeführt werden soll|
 +|dictionary|Übergibt das Dictionary Objekt|
 +
 \\ \\ \\ \\ \\ \\