Lösung selber gefunden:
Im HMI ein Bild anlegen.
E/A Feld "Eingabe/Ausgabe" mit der Internen Variablen "Barcode" anlegen.
WICHTIG: Dieses Element sollte automatisch ausgewählt werden, z.B dadurch das es kein weiteres"Eingabe"-Feld gibt.
Unter "Ereignisse" des E/A-Felds bei "Eingabe abgeschlossen" die Funktion "InvertiereBit" auf die Interne Variable "Barcode Geladen" legen
Zu den HMI-Variablen wechseln:
"Barcode Geladen" auf Bool stellen und bei "Ereignisse" die Funktion "LadeDatensatz" auswählen. Als "Rezeptnummer/-name" dann das erste Rezept auswählen (Bei mir heißt es Maschinendaten"
Bei Datensatznummer/-name dann die HMI_Variable "Barcode" auswählen.
Zu den Rezepturen wechseln und im Rezept "Maschinendaten" unter "Elemente" die Zuordnung der Datensätze vornehmen.
z.B
Name "Wert x-achse", Anzeigenamen "x-Achse", Variable "schreibe_x-achse" der SPS auswählen und einen Standartwert definieren z.B "0"
Name "Wert y-achse", Anzeigenamen "y-Achse", Variable "schreibe_y-achse" der SPS auswählen und einen Standartwert definieren z.B "0"
Name "Bohren", Anzeigenamen "Bohren", Variable "Bohren" der SPS auswählen und einen Standartwert definieren z.B "0"
Dann unter "Datensätze" entsprechende "Programme" anlegen.
z.B Name "In mitte bohren" , Anzeigenamen "1001001" (ACHTUNG: Der Anzeigename ist der Barcode!!!), Nummer "1" x-achse "50", y-achse "50", Bohren "1"
So nun ist es so das wenn der Barcode gescannt wird, dann werden die Variabel des entsprechen Datensatzes entsprechend der zuordnung unter "Elemente" mit den Werten unter "Datensätze" gefüllt.
Was aber wenn der Datensatz nicht in den Rezepturen vorhanden ist?
Wir gehen unter "HMI-Meldungen" auf "Systemmeldungen" und suchen dort die Nr. 290011 "Datensatz %1 nicht vorhanden." und bauen bei "Ereignisse" die Funktion "SetzeBit" ein. Hier setzen wir eine Interne Variable namens "Barcode nicht vorhanden"
Wir wechseln zu der Variable und legen bei dieser unter "Ereignisse" die Funktion "ImportiereDatensätze" an..
Bei Dateinamen geben wir den Pfad ein. Netzwerk z.b. \\PC_Name\Ordner\Maschienendaten.csv
WICHTIG: Bei einen Basic HMI gehen hier nur die USB Pfade und keine Netzwerkadressen.
Datensatznummer auf "0", Überschreiben "Ja" und Statusmeldung auf "Ein"
(Um zu sehen wie die CSV aussehen muss, einmal bei den Rezepturen den Datensatz exportieren und als Maschinendaten.csv im entsprechenden Ordner ablegen.)
Wir gehen unter "HMI-Meldungen" auf "Systemmeldungen" und suchen dort die Nr. 290054 "Import der Datensätze erfolgreich beendet." und legen unter Ereignisse "RücksetzeBit" für die Variable "Barcode nicht vorhanden" an.
und die Funktion "SetzeVariable" für "Barcode" mit Wert "0"
Fertig. Nun wird wenn der Barcode nicht in den Rezepten gefunden wurde, die CSV importiert und es kann erneut gescannt werden.
Wenn jemand eine Idee hat, wie er nach dem Import automatisch erneut versucht den Datensatz zu laden, gerne her.
Wenn ich bei der Systemmeldung 290054 auch die Funktion "InvertiereBit" auf die Interne Variable "Barcode Geladen" lege, hängt die variable im Loop und schaltet schnell zwischen high and low.