write
[ Funktion ]
Version 1.10
public static write(
name: string,
type: TcHmi.SymbolType,
value: any,
(data: Symbol.IWriteResultObject | TcHmi.Symbol.IServerWriteResultObject) => void
): void;
Version 1.12
public static write<T = any>(
name: string,
type: TcHmi.SymbolType,
value: T,
(data: Symbol.IWriteResultObject<T> | TcHmi.Symbol.IServerWriteResultObject<T>) => void
): DestroyFunction;
Schreibt den Wert eines Symbols adressiert über den Namen und Symboltyp.
Ab Version 1.10 erfolgt der Aufruf der Callback Funktion in Abhängigkeit des verwendeten Symbol Typs entweder synchron oder asynchron. |
Server | asynchron |
Internal | synchron |
LocalizedText | synchron |
PartialParam | synchron |
TemplateParam | synchron |
Function | synchron |
Control | synchron |
Version 1.12: Wird die API in TypeScript-Code benutzt, so kann dem TypeScript-Compiler mitgeteilt werden, welchen Typ der Symbolwert hat. |
Dies ist eine reine Hilfe für die Programmierung. Der Browser kennt diese „Typeannotation“ nicht. Es findet keine Prüfung oder Konvertierung zur Laufzeit statt. |
Die Typprüfung ist in dieser Funktion nur von begrenztem Nutzen. Siehe Beispiele.
Parameter
Name | Typ | Beschreibung |
---|---|---|
name | Name des Symbols | |
type | Typ des Symbols | |
value | Version 1.8 Version 1.12 T | Neuer Wert des Symbols. Kann beliebigen Typ haben. |
callback [Optional ] | Version 1.8 (data: TcHmi.IResultObject| TcHmi.Server.IResultObject) => void Version 1.10 (data: Symbol.IWriteResultObject | Symbol.IServerWriteResultObject) => void Die Änderung ist abwärtskompatibel. Version 1.12 (data: Symbol.IWriteResultObject<T> | Symbol.IServerWriteResultObject<T>) => void Die Änderung ist abwärtskompatibel. | Wird ausgelöst wenn die Aktion erfolgreich abgeschlossen oder ein Fehler aufgetreten ist. Details sind dem Parameter data zu entnehmen. |
Rückgabewert
Typ | Beschreibung |
---|---|
void Ab Version 1.12: | Kein Rückgabewert. Ab Version 1.12: |
Verfügbar ab Version 1.8 |
Beispiel – JavaScript
TcHmi.Symbol.write('PLC1.MAIN.sTest', TcHmi.SymbolType.Server, 'Test', function (data) {
if (data.error === TcHmi.Errors.NONE) {
// Handle success...
} else {
// Handle error...
}
});
Beispiel 1 – TypeScript
// TS does not know the variable type
TcHmi.Symbol.write('PLC1.MAIN.sTest', TcHmi.SymbolType.Server, 'Test', function (data) {
if (data.error === TcHmi.Errors.NONE) {
// Handle success...
} else {
// Handle error...
}
});
Beispiel 2 – TypeScript
TcHmi.Symbol.write<string>('PLC1.MAIN.sTest', TcHmi.SymbolType.Server, 'Test', function (data) {
if (data.error === TcHmi.Errors.NONE) {
// Handle success...
} else {
// Handle error...
}
});
Beispiel 3 – TypeScript
// TS prevents compile!
TcHmi.Symbol.write<string>('PLC1.MAIN.sTest', TcHmi.SymbolType.Server, 42, function (data) {
if (data.error === TcHmi.Errors.NONE) {
// Handle success...
} else {
// Handle error...
}
});