Skip to main content
Die folgenden Funktionen stehen zum Erstellen benutzerdefinierter Skripte zur Verfügung. Um auf Objektinstanzen zuzugreifen, verwenden Sie die Variable commandArgs. Alle Variablen in diesem Abschnitt sind global und im gesamten Programm sichtbar.

Feldpfade

Einige Funktionen verwenden den Pfad zu einem Feld als Eingabeparameter. Er umfasst den Feldnamen und die Namen der übergeordneten Elemente (Feldgruppe, Abschnitt). Bei Tabellen, wiederholbaren Tabellen und wiederholbaren Gruppen müssen Sie die Instanznummer angeben, beginnend bei 0 (null). Beispielsweise ['Document Section 1', 'Group[10]', 'Field3'], wobei [10] die Nummer der Instanz der wiederholbaren Gruppe ist.

Funktionen zum Arbeiten mit Feldern

getCurrentField

getCurrentField() Gibt einen Link auf das Feldobjekt zurück, das das aktuelle benutzerdefinierte Skript verwendet.

getFieldByName

getFieldByName(namesPath) Gibt einen Link auf das Feld zurück, für das das benutzerdefinierte Skript geöffnet wurde.

getFieldValue

getFieldValue(namesPath) Gibt den Feldwert zurück: einen String für ein TextField-Feld, einen Häkchenwert für ein Checkmark-Feld oder ein String-Array für ein Checkmark Group-Feld.

setCurrentFieldValue

setCurrentFieldValue(value, forced, onSaved) Ändert den Wert des Felds, für das das benutzerdefinierte Skript geöffnet wurde.

setFieldValue

setFieldValue(namesPath | field, value, forced, onSaved) Ändert den Feldwert.

save

save() Schließt das Fenster, in dem das benutzerdefinierte Skript ausgeführt wird, und speichert die Änderungen.

cancel

cancel() Schließt das Fenster, in dem das benutzerdefinierte Skript ausgeführt wird, ohne die Änderungen zu speichern.

Funktionen zum Arbeiten mit Datensätzen

addEntity

addEntity(entityInfo: {cacheName, columns, values}, onResult(newId)) Fügt dem Datensatz einen Eintrag hinzu.

editEntity

editEntity(entityInfo: {cacheName, columns, values}, onResult()) Bearbeitet einen Datenbankeintrag.

getDict

getDict({cacheName, filters: [{FieldName, FieldValue}], cursorPos, allowMultipleColumnResults}, onResult(param: {FieldName, FieldValue, BoldMask}[][])) Durchsucht den Datensatz nach einem angegebenen Wert oder einem Teil davon. BoldMask ist ein String aus 0 und 1 mit derselben Länge wie der gefundene Wert. 1 kennzeichnet ein Symbol des gefundenen Werts, das mit dem entsprechenden Symbol im Suchfeld übereinstimmt, und 0 eines, das nicht übereinstimmt. Enthält ein Datensatz beispielsweise CompanyName: ABBYY und wird nach den Symbolen ABB gesucht, wird Folgendes zurückgegeben:
Das zurückgegebene Array kann mehrere Werte enthalten, darunter auch solche, die zunächst nicht den Search Conditions entsprachen. Die Ergebnisse werden absteigend nach dem Wert von BoldMask sortiert, wobei die strings, die am besten den Search Conditions entsprechen, an erster Stelle stehen.

getDictAll

getDictAll({cacheName, filters: {FieldName, FieldValue}}, }, onResult(param: {FieldName, FieldValue, BoldMask}[][])) Durchsucht die Datenbank nach dem vollständig angegebenen Wert. Gibt die Werte aller gefundenen Felder zurück. BoldMask ist ein string aus 0 und 1 mit derselben Länge wie der gefundene Wert. 1 kennzeichnet ein Symbol im gefundenen Wert, das mit dem entsprechenden Symbol im Suchfeld übereinstimmt, und 0 ein Symbol, das nicht übereinstimmt. Wenn ein Datensatz beispielsweise CompanyName: ABBYY enthält und nach den Symbolen ABB gesucht wird, wird Folgendes zurückgegeben:
Das zurückgegebene Array kann mehrere Werte enthalten, darunter auch solche, die zunächst nicht den Suchbedingungen entsprachen. Die Ergebnisse werden absteigend nach dem Wert BoldMask sortiert, wobei die strings, die den Suchbedingungen am besten entsprechen, zuerst aufgeführt werden. Ein vollständiges Beispiel finden Sie unter Beispielskript für die Datenbanksuche.

Funktionen für die Arbeit mit dem Dokumentformular

selectRow

selectRow(tablePath, rowNumber) Markiert eine Tabellenzeile als ausgewählt.

deselectRow

deselectRow(tablePath, rowNumber?) Hebt die Auswahl einer Tabellenzeile auf.

scrollFormToField

scrollFormToField(namesPath) Scrollt im Formular-Editor zum Feld.

getDomElementPosition

getDomElementPosition(domId, onResult: (result?: {width, height, top, left, right, bottom})) Ermittelt die Position eines Elements im Fenster des Formular-Editors und übergibt das Ergebnis an eine Callback-Funktion.

setStyles

setStyles(styles, callback) Fügt dem Fensterrahmen der benutzerdefinierten Aktion CSS-Stile hinzu.

commandArgs-Objekt

Variablen

Ereignisse

Feldobjekttypen

Benutzerdefinierte Skripte können auf die folgenden Feldobjekttypen sowie auf das Document-Objekt zugreifen. Jedes Feldobjekt stellt über seine Eigenschaft Regions das Region-Objekt bereit.

Feldgruppenfeld

Section-Feld

Tabellenfeld

Row-Objekt

Textfeld

TextType-Werte

Häkchenfeld

Häkchengruppenfeld

Bildfeld

Feld „Wiederholbare Gruppe von Abschnitten“

Region-Objekt

Die Regions-Eigenschaft jedes Feldobjekts gibt ein Array von Regionen mit folgender Struktur zurück.

Document-Objekt

Das Document-Objekt ist über commandArgs.params.document verfügbar.

Objekt „Zusammenstellungsfehler“

Fehlerobjekt

Page-Objekt