Inhaltsverzeichnis MKWare_GetInsertValuesBySN VAR_INPUT VAR_OUTPUT Beispiel eines Funktionsbausteins Buch erstellen Diese Seite zum Buch hinzufügen Buch erstellen Diese Seite aus Buch entfernen Buch anzeigen, ändern(0 Seite/n) Hilfe MKWare_GetInsertValuesBySN Dieser Funktionsbaustein ermittelt intern zunächst anhand der ProductSN und ProductDesignation die entsprechende ProductGUID. Anschliessend werden die Werte zu der ermittelten ProductGUID in die MK|Ware Datenbank gespeichert. VAR_INPUT VAR_INPUT PDAtoPLC_GotValues: BOOL; (* Ausgabe von MK|Ware: Variable wird auf TRUE gesetzt, wenn eine ProduktSN gelesen wurde. *) PDAtoPLC_ValuesInserted: BOOL; (* Ausgabe von MK|Ware: Variable wird auf TRUE gesetzt, wenn Werte eingefügt wurden. *) PDAtoPLC_ProductGUID: STRING; (* Ausgabe von MK|Ware: Enthält die eindeute ID zur MK|Ware internen Identifizierung. *) PDAtoPLC_bInsertValue[1..8]: BOOL; (* Wert 1 vom Typ BOOL*) PDAtoPLC_iInsertValue1: INT; (* Wert 1 vom Typ INT *) PDAtoPLC_sInsertValue1: STRING (* Wert 1 vom Typ STRING *) Enable: BOOL := TRUE; (* Setzt alle Signale zurück. *) InsertValues: BOOL; (* Startsignal um Werte einzufügen. *) ProductDesignation: STRING; (* Produktbezeichnung s*) ProductSN: STRING; (* Enthält die ProduktSN für das Produkt. *) bValue[1..8]: BOOL; (* Wert 1 vom Typ BOOL*) iValue1: INT; (* Wert 1 vom Typ INT *) sValue1: STRING; (* Wert 1 vom Typ STRING *) TimeoutTime: TIME :=t#10S; (* Wert für Timeout. *) DelayTime: TIME :=t#300ms; (* Wert für Verzögerungszeit. ) END_VAR VAR_OUTPUT VAR_OUTPUT PDAfromPLC_GetValues: BOOL; (* Ausgabe an MK|Ware: Ist der Status TRUE, werden Werte aus der von MK|Ware gelesen. *) PDAfromPLC_InsertValues: BOOL; (* Ausgabe an MK|Ware: Ist der Status TRUE, werden Werte aus der von MK|Ware eingefügt. *) PDAfromPLC_ProductDesignation: STRING; (* Ausgabe an MK|Ware: Enthält das aktuelle Produkt. *) PDAfromPLC_ProductSN: STRING; (* Ausgabe an MK|Ware: Enthält die ProduktSN für das Produkt. *) PDAfromPLC_ProductGUID: STRING; (* Ausgabe an MK|Ware: Enthält die eindeute ID zur MK|Ware internen Identifizierung. *) PDAfromPLC_bValue[1..N]: BOOL; (* Ausgabe an MK|Ware: Diese Variable übergibt Produktdaten vom Typ BOOL (z. B. OK/NOK). *) PDAfromPLC_iValue1: BOOL; (* Ausgabe an MK|Ware: Diese Variable übergibt Produktdaten vom Typ INTEGER (z. B. Nestnummer). *) PDAfromPLC_sValue1: STRING; (* Ausgabe an MK|Ware: Diese Variable übergibt Produktdaten vom Typ STRING (z. B. Rezepturname). *) TimeoutError_GetValues: BOOL; (* Nach Ablauf einer vorgegebenen Zeitspanne wird ein TimeoutError ausgelöst. *) TimeoutError_InsertValues: BOOL; (* Nach Ablauf einer vorgegebenen Zeitspanne wird ein TimeoutError ausgelöst. *) Busy: BOOL; (* Ist TRUE nach Startsignalen und FALSE nach einem Abbruch oder der Rückmeldung von MK|Ware. *) ValuesInserted: BOOL; (* Durchgangssignal von MKWare. *) ProductGUID: STRING; (* Durchgangssignal von MKWare. *) bGetValue[1..8]: BOOL; (* Wert 1 vom Typ BOOL *) iGetValue1: INT; (* Wert 1 vom Typ INT *) sGetValue1: STRING; (* Wert 1 vom Typ STRING *) CopyDatafromPLC: BOOL; (* Startsignal zum Kopieren von Daten von der SPS nach MKWare *) ResetDatafromPLC: BOOL; (* Startsignal zum Zurücksetzen der SPS-Daten, um zu verhindern, dass alte Werte vor dem Senden vorhanden sind *) CopyDatatoPLC: BOOL; (* Startsignal zum Kopieren von Daten aus MKWare in SPS-Variablen *) ResetDatatoPLC: BOOL; (* Startsignal zum Zurücksetzen der MKWare-Daten, um zu verhindern, dass alte Werte vor dem Senden vorhanden sind *) Error: STRING; (* Fehlerbeschreibung zur Fehleranalyse *) ErrorID: INT; (* Fehler ID zur Fehleranalyse *) END_VAR Beispiel eines Funktionsbausteins