I have set it as the very first line of my main form create procedure.
It is not working for me.
I have Master tables with many detail tables.
I have a table open procedure that refreshes the table if it is already open.
As part of this procedure, I check to see if the master source is null, and if not, to compare the values of the linking fields. If they do not match, then display a debug message, and close and reopen the table. I keep getting the message when I add a new record to the master, if the detail table is already open.
So, how can I fix this? Because I don't want to have to keep opening my details, and if I don't, then I show the detail records for the old record in my grids and such.
I have watched the query in dbmonitor, over and over.
It is running a query against the detail table, using the parameter value of the previous master record.
So, my problem still remains.
strange behaviour in new component (master detail)
how strange...
in my application i don't change any code just added 1 line of refreshParamOnInsert = true
i linked my detail with sql param
where the sql code is like this
just like that.
and this work normally
emm but i have one question for the developer
if it's in dbAccess unit then it work for the whole query in the project??
if i just wanna use this old behavior how can it be?
or i must put it in the every form that wanna use old behavior???
please inform me... thx before
in my application i don't change any code just added 1 line of refreshParamOnInsert = true
i linked my detail with sql param
where the sql code is like this
Code: Select all
select * from detail where id = :id
and this work normally
emm but i have one question for the developer
if it's in dbAccess unit then it work for the whole query in the project??
if i just wanna use this old behavior how can it be?
or i must put it in the every form that wanna use old behavior???
please inform me... thx before
i think it's totally different
if you use table, the records load all to memory (this that i knew)
when you declare master detail with the table, this make linking with something like filter
but if you use query that the detail declared sql with param then
when the master changed the detail will request to the server
so this might be different
and refreshParamOnInsert might means to refresh the sql with parameter to refresh and get the record from the server
if you use table, the records load all to memory (this that i knew)
when you declare master detail with the table, this make linking with something like filter
but if you use query that the detail declared sql with param then
when the master changed the detail will request to the server
so this might be different
and refreshParamOnInsert might means to refresh the sql with parameter to refresh and get the record from the server
RefreshParamOnInsert is a global variable and therefore if you have set RefreshParamOnInsert to True then this behavior will be used in whole application. You don't need to set RefreshParamOnInsert in every unit.lifeform wrote:emm but i have one question for the developer
if it's in dbAccess unit then it work for the whole query in the project??
if i just wanna use this old behavior how can it be?
or i must put it in the every form that wanna use old behavior???
please inform me... thx before
Try to compose a small sample to demonstrate the problem and send it to dmitryg*devart*com.ccmcbride wrote:I have set it as the very first line of my main form create procedure.
It is not working for me.
I have Master tables with many detail tables.
I have a table open procedure that refreshes the table if it is already open.
As part of this procedure, I check to see if the master source is null, and if not, to compare the values of the linking fields. If they do not match, then display a debug message, and close and reopen the table. I keep getting the message when I add a new record to the master, if the detail table is already open.
So, how can I fix this? Because I don't want to have to keep opening my details, and if I don't, then I show the detail records for the old record in my grids and such.
I have watched the query in dbmonitor, over and over.
It is running a query against the detail table, using the parameter value of the previous master record.
So, my problem still remains.