-> Hier kostenlos registrieren
Guten Tag,
habe folgendes Problem. Ich habe einen Trigger der mir Daten in eine SQL Datenbank speichern soll. Dazu nutze ich die TC3 Database Server Funktion.
Jedoch habe ich des öfteren folgendes Problem, und zwar kriege ich bereits bei der Verbindung zur Datenbank im Case 1 den Fehler. Das passiert aber nicht ständig. Andere Programme (nicht Twincat) haben keine Probleme mit der Hausinternen Datenbank.
Gibt es hier evtl. einen Trick um die Verbindung zur Datenbank öfters herzustellen, bis diese auch wirklich hergestellt ist?
CASE GVL.write_trigger OF
0:;//IDLE
1:IF fbSqlDatabase.Connect(1) THEN
IF fbSqlDatabase.bError THEN
GVL.write_trigger := 257; <----- Testweise auf 257 gesetzt um zu sehen ob der Fehler wirklich bei dem Connect stattfindet.
ELSE
GVL.write_trigger := GVL.write_trigger+1;
END_IF
END_IF
2:IF fbSqlDatabase.CreateCmd(ADR(fbSqlCommand)) THEN
IF fbSqlDatabase.bError THEN
GVL.write_trigger := 255;
ELSE
GVL.write_trigger:= GVL.write_trigger+1;
END_IF
END_IF
3:
IF fbSQLCommand.Execute(ADR(eingabe_string_6), SIZEOF(eingabe_string_6)) THEN
IF fbSQLCommand.bError THEN
GVL.write_trigger := 255;
ELSE
GVL.write_trigger :=GVL.write_trigger+1;
END_IF
END_IF
4:IF fbSqlDatabase.Disconnect() THEN
IF fbSqlDatabase.bError THEN
GVL.write_trigger := 255;
ELSE
reset_trigger:=TRUE;
GVL.write_trigger:= 0;
END_IF
END_IF
255:
END_CASE
habe folgendes Problem. Ich habe einen Trigger der mir Daten in eine SQL Datenbank speichern soll. Dazu nutze ich die TC3 Database Server Funktion.
Jedoch habe ich des öfteren folgendes Problem, und zwar kriege ich bereits bei der Verbindung zur Datenbank im Case 1 den Fehler. Das passiert aber nicht ständig. Andere Programme (nicht Twincat) haben keine Probleme mit der Hausinternen Datenbank.
Gibt es hier evtl. einen Trick um die Verbindung zur Datenbank öfters herzustellen, bis diese auch wirklich hergestellt ist?
CASE GVL.write_trigger OF
0:;//IDLE
1:IF fbSqlDatabase.Connect(1) THEN
IF fbSqlDatabase.bError THEN
GVL.write_trigger := 257; <----- Testweise auf 257 gesetzt um zu sehen ob der Fehler wirklich bei dem Connect stattfindet.
ELSE
GVL.write_trigger := GVL.write_trigger+1;
END_IF
END_IF
2:IF fbSqlDatabase.CreateCmd(ADR(fbSqlCommand)) THEN
IF fbSqlDatabase.bError THEN
GVL.write_trigger := 255;
ELSE
GVL.write_trigger:= GVL.write_trigger+1;
END_IF
END_IF
3:
IF fbSQLCommand.Execute(ADR(eingabe_string_6), SIZEOF(eingabe_string_6)) THEN
IF fbSQLCommand.bError THEN
GVL.write_trigger := 255;
ELSE
GVL.write_trigger :=GVL.write_trigger+1;
END_IF
END_IF
4:IF fbSqlDatabase.Disconnect() THEN
IF fbSqlDatabase.bError THEN
GVL.write_trigger := 255;
ELSE
reset_trigger:=TRUE;
GVL.write_trigger:= 0;
END_IF
END_IF
255:
END_CASE