readEx2
[ Funktion ]
Version 1.10
public static readEx2(
expression: string,
callback?: (data: Symbol.IReadResultObject) => void
): void;
Version 1.12
public static readEx2<T = any>(
expression: string,
callback?: (data: Symbol.IReadResultObject<T>) => void
): DestroyFunction;
Liest den Wert eines Symbols adressiert über den Symbolausdruck.
Der Aufruf der Callback Funktion erfolgt 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. |
Parameter
Name | Typ | Beschreibung |
---|---|---|
expression | Symbolausdruck | |
callback [ Optional ] | Version 1.10 (data: Symbol.IReadResultObject) => void Version 1.12 (data: Symbol.IReadResultObject<T>) => void | 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.10 |
Beispiel - JavaScript
TcHmi.Symbol.readEx2('%s%PLC1.MAIN.sTest%/s%', function (data) {
if (data.error === TcHmi.Errors.NONE) {
// Handle result value...
var value = data.value;
console.log(value);
} else {
// Handle error...
}
});
Beispiel 1 - TypeScript
TcHmi.Symbol.readEx2('%s%PLC1.MAIN.sTest%/s%', function (data) {
if (data.error === TcHmi.Errors.NONE) {
// Handle result value...
var value = data.value; // TS does not know the variable type
console.log(value);
} else {
// Handle error...
}
});
Beispiel 2 - TypeScript
TcHmi.Symbol.readEx2<string>('%s%PLC1.MAIN.sTest%/s%', function (data) {
if (data.error === TcHmi.Errors.NONE) {
// Handle result value...
let thisIsAString = data.value; // TS knows this is a string
console.log(thisIsAString);
} else {
// Handle error...
}
});