I am having a problem where the TLMDStorPropertiesStorage component is failing to load a stringlist property for a component, when using a TLMDStorINIVault.
The property is saved to the INI file, and other components' properties are loaded correctly, so the general setup of the LMD Stor components is working. The properties of the various LMD Stor components are below for reference.
The stringlist propert (quGeneralSummary.FieldsDisplayWidth) is being written to the ini, and the ini is correctly updated when a user changes the property and then closes the form. The lines in the ini are:
quGeneralSummary.<FieldsDisplayWidth.Strings>.value1@Component@String@0=ITEMDESC=300
quGeneralSummary.<FieldsDisplayWidth.Strings>.value2@Component@String@0=PACKAGEDESC=105
quGeneralSummary.<FieldsDisplayWidth.Strings>.value3@Component@String@0=NETWEIGHT_KG=85
quGeneralSummary.<FieldsDisplayWidth.Strings>.value4@Component@String@0=ACTUALVALUE=75
However, when the form loads, the property is not updated based on the value from the ini (the design-time value is always used).
I have tried changing the TLMDStorPropertiesStorage to not autoload, in favor of manually loading, to see if the timing affects things, but with no success.
I also set the value of the stringlist property in code, to prove that it can be updated, and this worked fine.
Finally I tried adding a TLMDStorRegistryVault component, and pointing the TLMDStorControllerVault to it instead; and with this configuration the stringlist property was loaded correctly. So it looks like the problem is specific to the TLMDStorINIVault.
I am using Delphi DX10, Seattle, and LMD version 2016.6
Can you please offer any suggestions for how to get the stringlist property to load correctly?
Thank you,
Phil
Comments
Thanks,
Phil
I have an example prepared. You can find the source code here:
https://vip.soonr.com/filelink/buajy-bris3nc-y7sdll5x
I hope this method of sending it to you is ok.
Since this example is for a TIB_Query, I created a simple Firebird database (Example.FDB) and included the embedded Firebird client files with the example. If you would happen to have a Firebird database server installed, you could omit the firebird client files.
In the example, the grid column positions and widths should be remembered/restored from the INI - I think. We typically use the Registry vault to store these properties. But in this case, we can't use the registry, but need to use an INI vault.
Thanks,
Phil
Thank you,
Phil
Thanks,
Phil