function Tdmzeiterfassen.DBEintragerstellen(s_erfassung:
String; ZeitAnfang, ZeitEnde, ZeitAnfang2, ZeitEnde2,
Pause: Tdatetime; Art, Art2, s_taetigkeit:
STring; gesamtZeitTag: TDateTime): Boolean;
var
sql:
String;
i: Integer;
begin
Result:= false;
sql:= '
INSERT INTO '+TabelleZeiten+'
(Monat, Jahr, Datum, Anfangszeit, EndeZeit, '+
'
Pause, GesamtZeitArbeit, Arbeitsart, Anfangszeit2, EndeZeit2, Arbeitsart2, '+
'
Taetigkeit) '+
'
VALUES('+copy(s_erfassung, 4,2)+ '
,'+ copy(s_erfassung,7,4)+'
,'+
QuotedStr(s_erfassung) +'
,'+ QuotedStr(timetostr(ZeitAnfang)) +'
,'+ QuotedStr(timetostr(ZeitEnde)) +'
,'+
QuotedStr(timetostr(Pause)) +'
,'+ QuotedStr(timetostr(GesamtZeitTag)) +'
,'+
QuotedStr(Art) +'
,'+ QuotedStr(timetostr(ZeitAnfang2)) +'
,'+ QuotedStr(timetostr(ZeitEnde2)) +'
,'+
QuotedStr(Art2) +'
,'+ QuotedStr(s_Taetigkeit) +'
)';
AdoCommand1.CommandType:= cmdText;
AdoCommand1.CommandText:=
sql;
AdoCommand1.Execute;
AdoQuery1.sql.clear;
AdoQuery1.sql.add('
SELECT id from zeiterfassungSB where Datum = '+QuotedStr(s_erfassung)+'
order by id desc');
AdoQuery1.open;
if AdoQuery1.recordcount > 0
then begin
AdoQuery1.first;
ID_Datensatz:= AdoQuery1.fieldbyname('
id').AsInteger;
end;
AdoQuery1.close;
//Hier die anderen beiden Tabelle füllen mit der erhaltenen id_Datensatz
for i:= 0
to length(frmErfassenAendern.aKunde_Projekt)-1
do begin
sql:= '
INSERT INTO '+TabelleKundeProjekt+'
(lfdNrTag, id_zeiterfassung, Berechnen, '+
'
Anfang, Ende, Kunde, Projekt, Taetigkeit) ' +
'
VALUES('+inttostr(i+1)+'
,'+
inttostr(id_Datensatz)+'
,'+
booltostr(frmErfassenAendern.aKunde_Projekt[i].Berechnen)+'
,'+
frmErfassenAendern.aKunde_Projekt[i].Anfang+'
,'+
frmErfassenAendern.aKunde_Projekt[i].Ende+'
,'+
frmErfassenAendern.aKunde_Projekt[i].Kunde+'
,'+
frmErfassenAendern.aKunde_Projekt[i].Projekt+'
,'+
frmErfassenAendern.aKunde_Projekt[i].Taetigkeit+'
)';
AdoCommand1.CommandType:= cmdText;
AdoCommand1.CommandText:=
sql;
AdoCommand1.Execute;
end;
Result:= true;
end;