Autor Téma: FireDAC - Devart (IBC) (povzdych?)  (Přečteno 2648 krát)

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 7424
  • Karma: 44
    • Verze Delphi: W11 + D11.3.1
FireDAC - Devart (IBC) (povzdych?)
« kdy: 28-10-2022, 13:11:34 »
Z mojej skúsenosti mi vychádza, že je FireDAC poriadne premakaný. Môj prípad. Mám zostavu a na nej 20 podzostáv. Ich prepojenie som riešil nasledovne:
  • MainQuery
  • DataSource.DataSet := MainQuery
  • OtherQuery
  • MasterSource := DataSource
  • Prepojenie údajov pomocou IndexFieldNames a MasterFields
Všetko pekne fungovalo. Nasadil som IBC a prepojenie údajov nefungovalo. Prekvapilo ma to. Z podpory FR som dostal odpoveď, ktorej riešením bolo:
  • MainQure.AfterScroll - aktulizácia všetkých parametrov pre OtherQuery + Open
  • Kvôli tomu som musel
  • Rozšíriť, alebo pridať WHERE o podmienky uvedené v IndexFieldNames
  • Nasekať to do AfterScroll
Musel som vykonať dosť práce navyše. Podľa mňa čiastočne utrpela čistota kódu.
Mal som ešte jednu takú situáciu, len si na ňu neviem spomenúť.
  • Je to naozaj tak?
  • Načo tam sú (IBC) IndexFielNames a MasterFields, keď nefungujú?
  • Máte podobnú skúsenosť?
  • Keby som chcel použiť nižšie úrovne programovania, tak by som asi pri IBC veľmi nepochodil
Len škoda tej otrasnej cenovej politiky. Ja kvôli podpore servera nevyhodím 2 500€ a kúpim niečo, čo na 80 % nepotrebujem. + raz(?) taká drahá podpora.
S FireDAC sa mi robilo celkom príjemne. Trochu horšie to je s IBC. Mnohé z toho je len otázka zvyku.
Win11 64b, Delphi 12.2, FireBird 4.01
Expert na kladenie nejasne formulovaných otázok.

Offline mirus

  • Mladík
  • **
  • Příspěvků: 76
  • Karma: 12
    • Verze Delphi: Delphi 10.2
Re:FireDAC - Devart (IBC) (povzdych?)
« Odpověď #1 kdy: 28-10-2022, 19:33:54 »
IndexFieldNames slouží ke třídění pořadí obdoba "order by"

MasterFields, DetailFields, MasterSource jsou pro Master-Detail

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 7424
  • Karma: 44
    • Verze Delphi: W11 + D11.3.1
Re:FireDAC - Devart (IBC) (povzdych?)
« Odpověď #2 kdy: 28-10-2022, 19:41:34 »
Vďaka za poučenie, opravu. Bodaj by mi to fungovalo! Vyskúšam.
Win11 64b, Delphi 12.2, FireBird 4.01
Expert na kladenie nejasne formulovaných otázok.

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 7424
  • Karma: 44
    • Verze Delphi: W11 + D11.3.1
Re:FireDAC - Devart (IBC) (povzdych?)
« Odpověď #3 kdy: 28-10-2022, 21:10:15 »
Zo svojich pokusov mám veľmi zmiešané pocity
FireDAC
Nastavím, všetko v čase návrhu
  • MasterFields a DetailFields - nefunguje ako očakávam
  • MasterFields a IndexFieldNames - funguje
IBC
Nastavím, všetko programovo
  • MasterFields a DetailFields - nepozná/nemá žiadne pole
Nenašiel som spôsob ako ich naplniť. Nemyslím ručne, ale nejako "automaticky". Dá sa to nejako dosiahnuť, ak má všetko nastavené?
Win11 64b, Delphi 12.2, FireBird 4.01
Expert na kladenie nejasne formulovaných otázok.

Offline mirus

  • Mladík
  • **
  • Příspěvků: 76
  • Karma: 12
    • Verze Delphi: Delphi 10.2
Re:FireDAC - Devart (IBC) (povzdych?)
« Odpověď #4 kdy: 28-10-2022, 21:21:55 »
U xxDAC od Devart je property IndexFieldNames pro řazení. Nevím jak je to u FireDAC.


Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 7424
  • Karma: 44
    • Verze Delphi: W11 + D11.3.1
Re:FireDAC - Devart (IBC) (povzdych?)
« Odpověď #5 kdy: 28-10-2022, 21:45:00 »
Je to to isté. Veď by ich vykastrovali, keby sa to odlišovalo od štandardných komponentov. Platí to pre Table i Query.
Len to nedokážem uplatniť.
Win11 64b, Delphi 12.2, FireBird 4.01
Expert na kladenie nejasne formulovaných otázok.