View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0003190||JEDI VCL||00 JVCL Components||public||2005-09-12 04:42||2006-01-08 09:40|
|Reporter||karel kral||Assigned To||jfudickar|
|Target Version||Fixed in Version||3.20|
|Summary||0003190: TJvFormStorage %FORM_NAME%\ does not work well on inherited form|
|Description||If using TJvFormStorage on inherited form and this form have set AppStoragePath = %FORM_NAME%, the form information is stored to registry with the key of form's ancestor, not with the right form name.|
|Additional Information||Steps to reproduce:|
1. Create commom ancestor with name e.g. TMyAbstractForm, name it frmMyAbstractForm
2. Place TJvFormStorage and some JV storage on this form.
3. Inherite your form from TMyAbstractForm and name it frmMyForm
4. Run app and look into the registry. The form information is stored bellow key frmMyAbstractForm.
I have done some debugging and I have found the reason: Method SetAppStoragePath is called from form's constructor BEFORE the descendant's form name is loaded and set.
|Tags||No tags attached.|
||Could you please create a sample app and include it to this entry.|
No answers for more than 14 days, this is considered fixed. Use the daily snapshots from here:
||Is is still happening in 3.10, so it would be good to let it open.|
@esasse: Is it possible to create a small sample app for this. I'm not so firm in working with inherited forms.
Then i will try to look for this problem.
Greetings and thanks
||When I create a small project, everything works fine and I can't reproduce the problem. But in my large app it is happening and I can't find out what's different between them. I'll keep investigating and post here any news.|
I know the problem :-)
JvFormStorageBug.rar (3,328 bytes)
||Look at the attached project that reproduces the problem.|
I just had a look, if you set AutoFlush to True, it kind of works.
But with an invalid name for the second form. I have already fixed the second point, I am investigating the first point as it is not there yet.
This is now fixed in CVS, with the following restrictions:
The AppStorage component should NOT be on the base form. If it is, there will be one instance of it for every instance of the forms, leading to the usual problems with this kind of situation. This can we worked around by setting AutoFlush and AutoReload to True, and FlushOnDestroy to False. But this of course slows down the loading and saving of the form. Note that this situation will not be worked upon, it is a well known behaviour of these components.
|2005-09-12 04:42||karel kral||New Issue|
|2005-09-13 01:34||jfudickar||Note Added: 0007930|
|2005-11-22 09:31||obones||Status||new => resolved|
|2005-11-22 09:31||obones||Resolution||open => fixed|
|2005-11-22 09:31||obones||Assigned To||=> obones|
|2005-11-22 09:31||obones||Note Added: 0008147|
|2005-12-28 06:08||esasse||Status||resolved => feedback|
|2005-12-28 06:08||esasse||Resolution||fixed => reopened|
|2005-12-28 06:08||esasse||Note Added: 0008246|
|2005-12-31 06:12||jfudickar||Note Added: 0008258|
|2006-01-01 06:40||jfudickar||Status||feedback => assigned|
|2006-01-01 06:40||jfudickar||Assigned To||obones => jfudickar|
|2006-01-02 04:42||esasse||Note Added: 0008263|
|2006-01-02 11:52||jfudickar||Note Added: 0008264|
|2006-01-03 14:16||esasse||File Added: JvFormStorageBug.rar|
|2006-01-03 14:17||esasse||Note Added: 0008269|
|2006-01-08 09:26||obones||Note Added: 0008339|
|2006-01-08 09:26||obones||Status||assigned => confirmed|
|2006-01-08 09:40||obones||Status||confirmed => resolved|
|2006-01-08 09:40||obones||Resolution||reopened => fixed|
|2006-01-08 09:40||obones||Note Added: 0008340|