Ich habe eine kleine Lagerverwaltung (DBisam Datenbank), wo ich Lagereingänge und ausgänge registriere.
Alles klappt soweit gut (war bis dahin nur mit grosser Hilfe von
marabu möglich), die Lageraus-und eingänge werden mit aktuellem Datum und Uhrzeit verbucht, dabei die Bestände aktualisiert.
Nach der Verbuchung soll in Label6 das Datum und die Uhrzeit der Bechung angezeigt werden, dies funktoioniert auch beim ersten mal gut, doch bei der zweiten Buchung ändert sich die Uhrzeit nicht.
Hier der Code:
Delphi-Quellcode:
procedure Tmovestock.Button1Click(Sender: TObject);
//Eingang Material
var
dt: TDateTime;
fs: TFormatSettings;
begin
// weil du im Edit keinen Dezimalpunkt verwendest:
fs.DecimalSeparator := '
,';
dt := DateTimePicker1.DateTime;
with dbisamquery1
do
begin
SQL.Text := '
insert into movestock(code, eingang, datum) '
+ '
values (:code, :eingang, :datum)';
Params.ParamByName('
code').Value := combobox1.Text;
Params.ParamByName('
eingang').Value := StrToFloat(edit1.Text);
Params.ParamByName('
datum').Value := dt;
ExecSQL;
SQL.Text := '
update stockfabric set stock = stock + :stock where code = :code';
Params.ParamByName('
code').Value := combobox1.Text;
Params.ParamByName('
stock').Value := StrToFloat(edit1.Text);
ExecSQL;
SQL.Text := '
update stockfabric set date = :datum where code = :code';
Params.ParamByName('
datum').Value := dt;
ExecSQL;
end;
label6.Caption := datetimetostr(Datetimepicker1.dateTime);
button3.Click;
end;
button3 aktualisiert den Bestand des Vorrats in dbedit1 so:
Delphi-Quellcode:
procedure Tmovestock.Button3Click(Sender: TObject);
begin
dbisamquery3.SQL.Clear;
dbisamquery3.sql.Add('select stock from stockfabric where code='+quotedstr(combobox1.Text));
dbedit1.Text:='stock';
dbisamquery3.ExecSQL;
end;
anbei noch ein bild der Form