Hallo Thomas,
habe mich wohl dämlich ausgedrückt.
Ich möchte für mehrere Personen nacheinander Arbeitszeitlisten aus
verschienenen Textdateien (je Person) erstellen.
So ungefähr:
Delphi-Quellcode:
//Arbeitszeitrechnung
//Verarbeitung im Zyklus je Person
for personnr:=1 to personanzahl do begin
LOADMONAT;
DRUCKAZLISTE1;
end;
procedure TAzeitrechdlg.loadmonat;
var
temptext: string;
azs: integer;
tagmin: integer;
i: integer;
temp: integer;
begin
aktmon:=lmon.Text;
adodataset1.First;
while not adodataset1.eof do adodataset1.Delete;
temptext:='Bediener='+quotedstr(bediener)+' AND Monat='+Quotedstr(aktmon);
adotable1.Filter:=temptext;
adotable1.Filtered:=true;
bernehmen1.Enabled:=false;
if adotable1.recordcount=0 then bernehmen1.Enabled:=true;
for azs:=0 to azlist.count-1 do begin
if copy(getsemistrfeld(azlist[azs],2),1,6)<>aktmon then continue;
adodataset1.append;
adodataset1['Datum']:=getsemistrfeld(azlist[azs],2);
adodataset1['Begzeit']:=getsemistrfeld(azlist[azs],3);
adodataset1['Endzeit']:=getsemistrfeld(azlist[azs],4);
adodataset1['Dauer']:=getsemistrfeld(azlist[azs],5);
adodataset1['Bem']:=getsemistrfeld(azlist[azs],6);
temptext:=trim(getsemistrfeld(azlist[azs],5));
tagmin:=0;
if temptext<>'' then tagmin:=strtomin(getsemistrfeld(azlist[azs],5));
monistmin:=monistmin+tagmin;
adodataset1['Min']:=tagmin;
adodataset1.Post;
end;
end;
procedure TAzeitrechdlg.DruckAZListe1Click(Sender: TObject);
var
temptext: string;
begin
rvproject1.SetParam('Monat',aktmon);
rvproject1.Open;
if not rvproject1.SelectReport('Report1',false) then begin
temptext:=temptext;
end;
rvproject1.execute;
rvproject1.Close;
end;
gedruckt wird halt immer nur der 1. Report immer wieder.
Wie kann ich denn ein Dataview löschen?
Bin halt wieder mal
Rudi Ratlos!
Gruß Detlef
[edit=Sharky]Delphi-Tags gesetzt. Mfg, Sharky[/edit]