Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

In this Discussion

TLMDStorPropertiesStorage component is failing to load a stringlist property for a component

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

  • 9 Comments sorted by Votes Date Added
  • Hi,

    Unfortunately, I can't reproduce your issue. Can you please create simple demo project?
  • Thank you for your response. This issue is showing up in the use of a dataset component from IBOjects. I can't think of any way to reproduce this issue without the use of this component (TIBOQuery). Would you have access to IBOjects components (http://www.ibobjects.com/) if I would use this in an example?

    Thanks,
    Phil
  • Hi,

    I've installed "ibobjects" package, so you can create a demo using it. Btw, which TStrings property of TIBOQuery component you meant?
  • Sorry, the earlier message was wrong, it is not TStrings but TIB_StringList that we are working with. In particular, we like to use the LMD stor components to store / restore the TIB_Query.FieldsDisplayWidth and TIB_Query.FieldsIndex properties.

    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



  • Hi,

    The bug has been fixed. If you have access to LMD SVN, you can update the sources now, otherwise, please, wait for next minor release.
  • I'll have to wait for the next release. I hope that will be soon. Unfortunately, we didn't catch this b
  • (Oops, accidentally posted that comment before being done) . . . Unfortunately we didn't catch this issue before we moved this application to production. So it would be nice to be able to fix it soon.

    Thank you,
    Phil
  • If you can work with source files, I can send you modified files. Please ask for this via our support e-mail or just provide you e-mail here.
  • Unfortunately I don't think my license includes the LMD source files. but just in case, my email is phil@integraldesignsoftware.com.

    Thanks,
    Phil
Sign In or Register to comment.