44 lines
1.5 KiB
Plaintext
44 lines
1.5 KiB
Plaintext
FUNCTION "Trolleydaten_ändern" : Void
|
|
{ S7_Optimized_Access := 'FALSE' }
|
|
// Mechanische AWL->SCL-Konvertierung (awl2scl.py). Kontrollfluss per GOTO,
|
|
// wo im Original mit Sprungmarken gearbeitet wurde. Vor Uebernahme in TIA
|
|
// Portal pruefen/kompilieren (siehe SCL-Export/README.md).
|
|
|
|
VAR_INPUT
|
|
Gesamt_Trolley_DL : Int;
|
|
TrolleyID : DInt;
|
|
Endziel : Word;
|
|
ShopGroup : DInt;
|
|
END_VAR
|
|
|
|
VAR_OUTPUT
|
|
TrolleyDL_OutDaten : Word; // war "TrolleyDL_OutDaten"
|
|
TrolleyDL_SearchDaten : Word; // war "TrolleyDL_SearchDaten"
|
|
END_VAR
|
|
|
|
VAR_IN_OUT
|
|
MB198 : Byte; // war "MB198"
|
|
MW200 : Word; // war "MW200"
|
|
END_VAR
|
|
|
|
BEGIN
|
|
REGION GesamtTrolly-DL angegeben?
|
|
IF #Gesamt_Trolley_DL <= 0 THEN RETURN; END_IF;
|
|
END_REGION
|
|
|
|
REGION Trolleydaten auslesen und verändern
|
|
#TrolleyDL_SearchDaten.SEARCHDaten.TrolleyID := #TrolleyID;
|
|
"DatenOut"(SSDB := #Gesamt_Trolley_DL, SSDW := 0, PARA := 16#0000, SEARCHDATEN := %DB1012.DBX0.0, RE_VAL := #MB198, OUTDATEN := %DB1011.DBX0.0, Position := #MW200); // Eintrag lesen
|
|
IF #MB198 <> 2#10000000 THEN RETURN; END_IF;
|
|
IF #Endziel <> -1 THEN #TrolleyDL_OutDaten.OUTDaten.EndZiel := #Endziel; END_IF;
|
|
IF #ShopGroup <> -1 THEN #TrolleyDL_OutDaten.OUTDaten.ShopGroup := #ShopGroup; END_IF;
|
|
"DatenIn"(SSDB := #Gesamt_Trolley_DL, SSDW := 0, INDATEN := %DB1011.DBX0.0, RE_VAL := #MB198);
|
|
RETURN;
|
|
END_REGION
|
|
|
|
REGION Ende
|
|
RETURN;
|
|
END_REGION
|
|
|
|
END_FUNCTION
|