View Issue Details

IDProjectCategoryView StatusLast Update
0003190JEDI VCL00 JVCL Componentspublic2006-01-08 09:40
Reporterkarel kralAssigned Tojfudickar 
PrioritynormalSeveritymajorReproducibilityalways
Status resolvedResolutionfixed 
Product Version3.00 
Target VersionFixed in Version3.20 
Summary0003190: TJvFormStorage %FORM_NAME%\ does not work well on inherited form
DescriptionIf 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 InformationSteps 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.
TagsNo tags attached.

Activities

jfudickar

2005-09-13 01:34

developer   ~0007930

Could you please create a sample app and include it to this entry.

obones

2005-11-22 09:31

administrator   ~0008147

No answers for more than 14 days, this is considered fixed. Use the daily snapshots from here:

http://jvcl.sf.net/daily/

esasse

2005-12-28 06:08

developer   ~0008246

Is is still happening in 3.10, so it would be good to let it open.

jfudickar

2005-12-31 06:12

developer   ~0008258

@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
Jens

esasse

2006-01-02 04:42

developer   ~0008263

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.

jfudickar

2006-01-02 11:52

developer   ~0008264

I know the problem :-)

Good Luck.

Greetings
Jens

2006-01-03 14:16

 

JvFormStorageBug.rar (3,328 bytes)

esasse

2006-01-03 14:17

developer   ~0008269

Look at the attached project that reproduces the problem.

obones

2006-01-08 09:26

administrator   ~0008339

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.

obones

2006-01-08 09:40

administrator   ~0008340

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.

Issue History

Date Modified Username Field Change
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