10: (*Zu schreibende Zeile initialisieren*)
MEMSET(ADR(sWriteLine), 0,SIZEOF(sWriteLine));
nCSV_Step := 11;
11: (*Überschrift festlegen*)
sWriteLine := 'Teachmodus$LArtikelnummer: ';
sWriteLine := CONCAT(sWriteLine,sPartNumber);
sWriteLine := CONCAT(sWriteLine,'$L');
nCSV_Step := 12;
12: (*Überschrift Schreiben starten*)
bExecutePuts := TRUE;
nCSV_Step := 13;
13: (*Überschrift Schreiben ist aktiv*)
IF bBusyPuts THEN
nCSV_Step := 14;
END_IF
14: (*Fehlerabfrage*)
IF NOT bBusyPuts AND NOT stErrorCSV.bErrorPuts THEN
bExecutePuts := FALSE;
nCSV_Step := 20;
ELSIF stErrorCSV.bErrorPuts THEN
nCSV_Step := 110;
END_IF
20: (*Zu schreibende Zeile initialisieren*)
MEMSET(ADR(sWriteLine), 0,SIZEOF(sWriteLine));
nCSV_Step := 21;
21: (*Tabellenbeschriftung festlegen*)
sWriteLine := 'Schraube:;';
sWriteLine := CONCAT(sWriteLine, 'Bezeichnung:;');
sWriteLine := CONCAT(sWriteLine, 'X-Koordinate :;');
sWriteLine := CONCAT(sWriteLine,'Y-Koordinate :;');
sWriteLine := CONCAT(sWriteLine,'$L');
nCSV_Step := 22;
22: (*Tabellenbeschriftung Schreiben starten*)
bExecutePuts := TRUE;
nCSV_Step := 23;
23: (*Tabellenbeschriftung Schreiben ist aktiv*)
IF bBusyPuts THEN
nCSV_Step := 24;
END_IF
24: (*Fehlerabfrage*)
IF NOT bBusyPuts AND NOT stErrorCSV.bErrorPuts THEN
bExecutePuts := FALSE;
nCSV_Step := 30;
ELSIF stErrorCSV.bErrorPuts THEN
nCSV_Step := 110;
END_IF
30: (*Zu schreibende Zeile initialisieren*)
nLineNr := 1;
nCSV_Step := 31;
31:
MEMSET(ADR(sWriteLine), 0,SIZEOF(sWriteLine));
sWriteLine := DINT_TO_STRING(aTeachedScrews[nLineNr].nScrew);
sWriteLine := CONCAT(sWriteLine,';');
sWriteLine := CONCAT(sWriteLine, aTeachedScrews[nLineNr].sDescription);
sWriteLine := CONCAT(sWriteLine,';');
fbConvertCommaPoint(sInputString:= LREAL_TO_FMTSTR(aTeachedScrews[nLineNr].lrX / 1000, 4, TRUE), bConvertToComma:= TRUE, bConvertToPoint:= FALSE, sNewString=> sScrewPosComma);
sWriteLine := CONCAT(sWriteLine, sScrewPosComma);
sWriteLine := CONCAT(sWriteLine,';');
fbConvertCommaPoint(sInputString:= LREAL_TO_FMTSTR(aTeachedScrews[nLineNr].lrY / 1000, 4, TRUE), bConvertToComma:= TRUE, bConvertToPoint:= FALSE, sNewString=> sScrewPosComma);
sWriteLine := CONCAT(sWriteLine, sScrewPosComma);
sWriteLine := CONCAT(sWriteLine,';');
sWriteLine := CONCAT(sWriteLine, '$L');
nCSV_Step := 32;
32: (*Zeile Schreiben starten*)
bExecutePuts := TRUE;
nCSV_Step := 33;
33: (*Zeile Schreiben ist aktiv*)
IF bBusyPuts THEN
nCSV_Step := 34;
END_IF
34: (*Fehlerabfrage*)
IF NOT bBusyPuts AND NOT stErrorCSV.bErrorPuts THEN
bExecutePuts := FALSE;
nCSV_Step := 40;
ELSIF stErrorCSV.bErrorPuts THEN
nCSV_Step := 110;
END_IF
40:
nLineNr := nLineNr + 1;
IF aTeachedScrews[nLineNr].nScrew > 0 THEN
nCSV_Step := 31;
ELSE
nCSV_Step := 110;
END_IF