Hallo,
TDialogService.InputQuery ignoriert die zweiten Felder. Hier die Ersteingabe.
Delphi-Quellcode:
procedure TFrameBuchhaltungPrivat.SpeedButtonNeuClick(Sender: TObject);
var
Kategorie: TKategorie;
Konto: TKonto;
begin
TDialogService.InputQuery('Kategorie',['Name','Beschreibung'],['',''],
procedure(const AResult: TModalResult; const AValues: array of string)
var
LValue: string;
begin
if AResult = mrOk then
begin
Konto:= TKonto(ListViewPrivat.Selected.TagObject);
Kategorie:= TKategorie.Create;
Kategorie.KategorieID:= -1;
Kategorie.KontoPlanID:= Konto.KontoPlanID;
if Konto.Nebenbuch <> TNebenbuch.Kategorie then
begin
Konto.Nebenbuch:= TNebenbuch.Kategorie;
FViewModelKontoPlan.callUpdateKonto(Konto);
end;
Kategorie.Name:= AValues[0];
Kategorie.Beschreibung:= AValues[1];
FViewModelKontoPlan.callCreateKategorieDataSet(Kategorie);
FreeAndNil(Kategorie);
showKategorieListe
end;
end);
end;
Die zweite Eingabe unter Beschreibung wird gespeichert, aber dann nicht mehr angezeigt.
Hier die Korrektur:
Delphi-Quellcode:
procedure TFrameBuchhaltungPrivat.ListViewPrivatKategorieItemClickEx(const Sender: TObject; ItemIndex: Integer; const LocalClickPos: TPointF; const ItemObject: TListItemDrawable);
var
Kategorie: TKategorie;
begin
if ItemObject is TListItemAccessory then
begin
Kategorie:= TKategorie(ListViewPrivatKategorie.Selected.TagObject);
TDialogService.InputQuery('Kategorie',['Name','Beschreibung'],[Kategorie.Name,Kategorie.Beschreibung],
procedure(const AResult: TModalResult; const AValues: array of string)
var
LValue: string;
begin
if AResult = mrOK then
begin
Kategorie.Name:= AValues[0];
Kategorie.Beschreibung:= AValues[1];
FViewModelKontoPlan.callUpdateKategorieDataSet(Kategorie);
TListViewItem(ListViewPrivatKategorie.Selected).Text:= Kategorie.Name;
TListViewItem(ListViewPrivatKategorie.Selected).Detail:= Kategorie.Beschreibung;
end;
end);
end;
end;
Der Screenshot zeigt, dass die Beschriftung beim zweiten Feld fehlt und der Inhalt des zweiten Feldes. Wie gesagt, speichern tut es.
Danke schon mal für die Hilfe.
Ps.: Vielleicht ist es von Bedeutung, ich habe die Version Athene.
Gruß Peter