Hello,
I have a TOraQuery component, with a relatively simple select. It joins tables for the master table called ATB.
select atb.rowid,
atb.*,
sby.c_nev1 c_belep_szintnev,
bko.c_nev c_szervezetnev,
saj.c_nev1 c_uzemkodnev,
bkp.c_nev c_onelszamolonev,
blo.c_nev1 c_munk_csoportnev,
bem.c_nev1 c_ktghelynev,
mfk.c_nev1 c_raktarnev,
asx.c_nev1 as c_uzemkod_csoportnev
from atb_kiveteles_belepesi_egyseg atb,
v_sby_lang sby,
v_bko_lang bko,
v_saj_lang saj,
v_bkp_lang bkp,
v_blo_lang blo,
v_bem_lang bem,
mfk_raktarak mfk,
asx_uzemkod_csoport asx
where atb.c_belep_szint = sby.c_egyedi_azon
and sby.n_kodtar_tip = 19
and atb.c_szervezet = bko.c_szervezet(+)
and atb.c_uzemkod = saj.c_uzemkod(+)
and atb.c_onelszamolo = bkp.c_onelszamolo(+)
and atb.c_munkal_csop = blo.c_kod(+)
and atb.c_ktghelykod = bem.c_ktghelykod(+)
and atb.c_raktarkod=mfk.c_raktarkod(+)
and mfk.n_cegkod(+)= :pn_cegkod
and atb.n_kivetel_egyedi_azon = :pn_kivetel_egyedi_azon
and atb.n_uzemkod_csop_egyedi_azon=asx.n_uzemkod_csop_egyedi_azon(+)
order by atb.n_kivetel_egyedi_azon
-- -1 row(s) affected.
I use it for data entry on a form, and when I post is, the update looks like this.
UPDATE ATB_KIVETELES_BELEPESI_EGYSEG
SET
D_DAT = :D_DAT
WHERE
ROWID = :Old_ROWID
That is ok. But, when the record is refreshed back, after the post, I see this, in the Devart SQL Monitor.
As you see, the join statements are missing from the select, which means, much more records are fetched back. And it is a refresh error, because it is 25 records, instead of one.
It causes a standard database error in my form, with
Refresh failed. Found 25 records.
error message.I chechked the OraQuery component, sqlUpdate, sqlRefresh, ... properties are empty.
As I remember, these auto-generated statements with the refresh, has used the original query.
I chechked the previuos compiled application, with and older Devart version, and it works fine.
Devart ODAC 13.1.0, Delphi RAD Studio 10.2.3
select atb.rowid,
atb.*,
sby.c_nev1 c_belep_szintnev,
bko.c_nev c_szervezetnev,
saj.c_nev1 c_uzemkodnev,
bkp.c_nev c_onelszamolonev,
blo.c_nev1 c_munk_csoportnev,
bem.c_nev1 c_ktghelynev,
mfk.c_nev1 c_raktarnev,
asx.c_nev1 as c_uzemkod_csoportnev
from atb_kiveteles_belepesi_egyseg atb,
v_sby_lang sby,
v_bko_lang bko,
v_saj_lang saj,
v_bkp_lang bkp,
v_blo_lang blo,
v_bem_lang bem,
mfk_raktarak mfk,
asx_uzemkod_csoport asx
where
ATB.ROWID = :Old_ROWID
order by atb.n_kivetel_egyedi_azon