Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi DevExpress: "AutoSearch" funktioniert nach Änderung vom Repository nicht mehr (https://www.delphipraxis.net/215037-devexpress-autosearch-funktioniert-nach-aenderung-vom-repository-nicht-mehr.html)

Sinspin 26. Apr 2024 19:11

AW: DevExpress: "AutoSearch" funktioniert nach Änderung vom Repository nicht mehr
 
Zitat:

Zitat von haentschman (Beitrag 1536154)
Zitat:

Ich arbeite da fast nur noch mit Messages um dem Grid Zeit zu geben sich anzupassen.
...hast du auch schon mal dass Grid schwarz wenn du einen Dialog oder Form darüber öffnest? Hat DevExpress vor 2 Jahren eingebaut...ohne Lösung! :evil:

Ja. War aber schonmal schlimmer. Das meißte habe ich geschafft durch verwenden von Messages/Windows Botschaften aus den Grid Eventhandlern heraus, abzuschaffen.

Zitat:

Zitat von haentschman (Beitrag 1536154)
Zitat:

Ich würde für solche Eingaben keine ExtendedLookupTable nehmen
Das ist die Vorgaben "Eingabe" für die Artikelposition. Da wir verschiede Konstellationen der "Berechnung" haben, muß ich das vorher berechnen und in die Oberfläche fertig eintragen. :wink: Das Ergebnis der Auswahl kommt nur in EINE Tabelle. :zwinker:

Das ist ja eigentlich egal was man in die Felder füllt. Ich habe dafür einen Dialog mit Grid. Nach dem laden der Query erzeuge ich die Felder im Grid. Dann Nutzeransicht für die Ansicht laden falls das dort Sinn macht. Ich übergebe dem Dialog was für ein Feld ich als Antwort haben will. Via Freitextsuche kann der Nutzer die Ergebnisse filtern.

Generell würde ich die View im OnPopUp nicht ändern.
Besser wäre es das gesamte "Properties" Property auszutauschen. Dafür gibt es in den Columns des Grids ein Event.
Ich habe einen Fall wo ich drei verschiedene ButtonEdit in einem Editfeld anzeigen muss. Das klappt bisher (*knock on wood*) ganz gut.
Ein "TcxEditRepository" zum verwalten der Properties mit allen Details, ~GridViewField~GetProperties fürs tauschen.

Es würde mich wundern wenn dir das DevExpress nicht auch vorschlägt.

haentschman 14. Mai 2024 07:25

AW: DevExpress: "AutoSearch" funktioniert nach Änderung vom Repository nicht mehr
 
Liste der Anhänge anzeigen (Anzahl: 1)
Moin...8-)

Update:
Heureka...ich habs. :P

Ich der Spalte "F1" (unsichtbar) eingeben, View geht auf, Markierung steht da wo sie sein soll...siehen Bild.

Problem:
Im Original wurde die Datenmenge immer wieder neu erzeugt. Nun habe die Datenmenge (DataSet) nur einmal erzeugt. Im OnPopup wird nur das SQL getauscht.
Delphi-Quellcode:
procedure TdmRepositories.rpiArticlePropertiesInitPopup(Sender: TObject); //umbenannt
begin
  DMLUP.LoadArticle;
  TToolsDevExpress.ExpandLevel(TcxGridTableView(rpiArticle.Properties.View), 0, True);
end;
...
procedure TDMLUP.LoadArticle;
begin
  if not Assigned(dsReproPart.DataSet) then
  begin
    dsReproPart.DataSet := FDatabase.CreateQuery;
  end;
  FDatabase.FilllDataSetRepositoryPart(TFDQuery(dsReproPart.DataSet), FArticleFavorite, FReceiptAddress);
end;
...
procedure TDatabase.FilllDataSetRepositoryPart(Qry: TFDQuery; Favorite: Boolean; ReceiptAddress: string);
begin
  Qry.SQL.Text := GetSQLByName('REPO_CHOICE_ARTICLE_ALL');
  Qry.ParamByName('ADR').AsString := ReceiptAddress;
  if Favorite then
  begin
    Qry.SQL.Add(GetSQLByName('REPO_CHOICE_ARTICLE_FAVORITE'));
  end;
  Qry.SQL.Add(GetSQLByName('REPO_CHOICE_ARTICLE_WHERE'));
  Qry.SQL.Add(GetSQLByName('REPO_CHOICE_ARTICLE_ORDER'));
  Qry.ParamByName('UID').AsInteger := FPreferences.CurrentUser.ID;
  Qry.Open;
end;
...Danke fürs Zuhören. :wink:

Sinspin 14. Mai 2024 08:47

AW: DevExpress: "AutoSearch" funktioniert nach Änderung vom Repository nicht mehr
 
Zitat:

Zitat von haentschman (Beitrag 1536666)
Moin...8-)

Update:
Heureka...ich habs. :P
...

Danke fürs Zuhören. :wink:

:roll:
Ne ne ne. In Post 6 wurde dir das schon gesagt! Hier wurde nicht zugehört, sondern dein Problem benannt!
Aber Du hast offensichtlich nicht zugehört ;-)
Zitat:

Zitat von lxo (Beitrag 1536150)
Ich vermute das Problem eher im Freigeben des DataSets und dann ein neues zuordnen.



Alle Zeitangaben in WEZ +1. Es ist jetzt 03:30 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz