Autor Téma: TFDTable.Filter a SQL Subquery  (Přečteno 263 krát)

Offline jd

  • Nováček
  • *
  • Příspěvků: 13
  • Karma: 0
    • Verze Delphi: D6, XE6, Berlin
TFDTable.Filter a SQL Subquery
« kdy: 19-10-2018, 10:39:32 »
Jak použít SQL Subquery v TFDTabale.Filter
Např.
Kód: [Vybrat]
ID in (select TABULKA1.ID from TABULKA1)Končí to chybou [FireDAC][Stan][Eval]-100 Column or function [select] is not found.
Pro TIBTable tuto konstrukci filtru lze použít.
Co nastavit? Díky
« Poslední změna: 23-10-2018, 09:04:10 od Radek Červinka »

Offline Delfin

  • Guru
  • *****
  • Příspěvků: 1285
  • Karma: 56
  • SW konzultant
    • Verze Delphi: 2009, Tokyo
Re:TFDTable.Filter a SQL Subquery
« Odpověď #1 kdy: 19-10-2018, 14:26:40 »
Co nastavit?

Pokud se nejedna o detail tabulku z relace master-detail, pak Live Data Window Mode. V tom pripade se pouzije filtrovani na strane DBMS (viz. TFDTable and Filtering). Jinak se pouzije lokalni engine (o vyrazech vice viz. Writing Expressions (FireDAC)).

Vzhledem k tride vyjimky se pouzil lokalni engine.
« Poslední změna: 23-10-2018, 09:04:24 od Radek Červinka »
I'm a soldier, so don't panic! I know the underground! I like WTFPL license! No more Google, go duck, go!

Offline jd

  • Nováček
  • *
  • Příspěvků: 13
  • Karma: 0
    • Verze Delphi: D6, XE6, Berlin
Re:TFDTable.Filter a SQL Subquery
« Odpověď #2 kdy: 19-10-2018, 16:54:05 »
O master-detail se nejedna.
FDTable.CachedUpdates := FALSE; FDTable.FetchOptions.Unidirectional := FALSE; FDTable.FetchOptions.CursorKind := ckAutomatic; Tabulka ma PrimaryKey.
LDW mode mam nastaveno presto pouziti filtru konci chybou.
V dokumentaci TFDTable and Filtering je:
For the Filter property. Note that the Filter property content is sent to a DB as is. You may use FireDAC escape sequences to make an expression compatible with a DBMS and with the local expression engine.
Co nastavit ve FDTable nebo jak subquery filtr (napr. pomoci FireDAC escape sequences) upravit aby proslo subquery ve filtu.
Pozivam Delphi XE6, databazi FB s pozadavkem i na jine DBMS.

Offline Delfin

  • Guru
  • *****
  • Příspěvků: 1285
  • Karma: 56
  • SW konzultant
    • Verze Delphi: 2009, Tokyo
Re:TFDTable.Filter a SQL Subquery
« Odpověď #3 kdy: 19-10-2018, 23:28:33 »
Co nastavit ve FDTable nebo jak subquery filtr (napr. pomoci FireDAC escape sequences) upravit aby proslo subquery ve filtu.
Pozivam Delphi XE6, databazi FB s pozadavkem i na jine DBMS.

Dotaz jsem pochopil z prvniho prispevku, bohuzel ted bez Delphi (a zdrojaku FireDAC) nedokazu poradit. Live Data Window Mode je dle popisu aktivni. Nevim proc nelze pouzit dany filtr. Zkusim se k instalaci Tokyo (10.2) dostat behem pristiho tydne (byt jsem se tomu i pres temer nevyuzitou licenci Architect chtel vyhnout). Pak snad mohu rict vic...
I'm a soldier, so don't panic! I know the underground! I like WTFPL license! No more Google, go duck, go!

 

S rychlou odpovědí můžete používat BB kódy a emotikony jako v běžném okně pro odpověď, ale daleko rychleji.

Jméno: E-mail:
Ověření:
Křestní jméno zpěváka Gotta: