[] operator problems after Scripter Update

Hi

I made an update from the old Scripter 6.2, but sadly now I have some issues with the indexed properties and the TIBOQuery.

Long time ago I implemented the TIBOQuery in Scripter which is a TDataSet compatible Query from IBOComponents without problems. But after update to scripter 6.5.4 I can no more access field values via the [] operator. Eg. MyVar := MyIBOQuery['FieldXY'] gives me the error of an "invalid typecast". This problem only occures on the TIBOQuery, not for eg the TAdoQuery. The strange thing is that in Events like MyIBOQuery.OnNewRecord I can access fields of the parsed TIBOQuery via the namespace DataSet['FieldXY'] without problems. The error only occure by adressing the Component directly by its name.

I would be very thankfully for any helping hand pointing me to the right direction.
best regards

How is MyIBOQuery registered in the scripter (or declared)?

There seems to be a tricky one, is there any chance you can reduce the project to a minimal application that just reproduces the problem? This way it's easier to debug and check exactly what's going on.

I registered via RTTI by script made by SSImporter

...
  Scripter.DefineClassByRTTI(TIBODataset); /* base class for TIBODataSet - its a class of TDataSet */
  Scripter.DefineClassByRTTI(TIBOBaseQuery); / base cloass for TIBOQuery */
  Scripter.DefineClassByRTTI(TIBOQuery);
...

The TDataSet stuff is registered via the IDEScripter.LoadLibrary('DB',True);

Yes I have a small example, but for compiling you'll neet the TIBOQuery.

You can send the project using TIBOQuery. What you could do to help is avoid using them at design-time, but we can manage to compile it.

Thank you very much. To which adress I can send the sample?

Samples can be sent to: mailto:help@tmssoftware.com


Nancy Lescouhier2015-11-30 09:32:06

OK, Sample sent.

For easier reproducing I included a Firebird Embedded Server

  • Database, so you do not need any Firebird Stuff installed on your machine. Sadly the included Precompiled exe + Embedded Firebird
    grows up the Sample to 18 MB.
    So please tell me if didn't received the sample cause of a mail attachement size limit.<!--if gte mso 9>
    <w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="true" DefSemi="true" DefQat="false" DefPriority="99" LatentStyleCount="267">
    <w:LsdException Locked="false" Priority="0" Semi="false" UnhideWhenUsed="false" Qat="true" Name="Normal"/>
    <w:LsdException Locked="false" Priority="9" Semi="false" UnhideWhenUsed="false" Qat="true" Name="ing 1"/>
    <w:LsdException Locked="false" Priority="9" Qat="true" Name="ing 2"/>
    <w:LsdException Locked="false" Priority="9" Qat="true" Name="ing 3"/>
    <w:LsdException Locked="false" Priority="9" Qat="true" Name="ing 4"/>
    <w:LsdException Locked="false" Priority="9" Qat="true" Name="ing 5"/>
    <w:LsdException Locked="false" Priority="9" Qat="true" Name="ing 6"/>
    <w:LsdException Locked="false" Priority="9" Qat="true" Name="ing 7"/>
    <w:LsdException Locked="false" Priority="9" Qat="true" Name="ing 8"/>
    <w:LsdException Locked="false" Priority="9" Qat="true" Name="ing 9"/>
    <w:LsdException Locked="false" Priority="39" Name="toc 1"/>
    <w:LsdException Locked="false" Priority="39" Name="toc 2"/>
    <w:LsdException Locked="false" Priority="39" Name="toc 3"/>
    <w:LsdException Locked="false" Priority="39" Name="toc 4"/>
    <w:LsdException Locked="false" Priority="39" Name="toc 5"/>
    <w:LsdException Locked="false" Priority="39" Name="toc 6"/>
    <w:LsdException Locked="false" Priority="39" Name="toc 7"/>
    <w:LsdException Locked="false" Priority="39" Name="toc 8"/>
    <w:LsdException Locked="false" Priority="39" Name="toc 9"/>
    <w:LsdException Locked="false" Priority="35" Qat="true" Name="caption"/>
    <w:LsdException Locked="false" Priority="10" Semi="false" UnhideWhenUsed="false" Qat="true" Name="Title"/>
    <w:LsdException Locked="false" Priority="1" Name="Default Paragraph Font"/>
    <w:LsdException Locked="false" Priority="11" Semi="false" UnhideWhenUsed="false" Qat="true" Name="Subtitle"/>
    <w:LsdException Locked="false" Priority="22" Semi="false" UnhideWhenUsed="false" Qat="true" Name="Strong"/>
    <w:LsdException Locked="false" Priority="20" Semi="false" UnhideWhenUsed="false" Qat="true" Name="Emphasis"/>
    <w:LsdException Locked="false" Priority="59" Semi="false" UnhideWhenUsed="false" Name="Table Grid"/>
    <w:LsdException Locked="false" UnhideWhenUsed="false" Name="Placeholder Text"/>
    <w:LsdException Locked="false" Priority="1" Semi="false" UnhideWhenUsed="false" Qat="true" Name="No Spacing"/>
    <w:LsdException Locked="false" Priority="60" Semi="false" UnhideWhenUsed="false" Name="Light Shading"/>
    <w:LsdException Locked="false" Priority="61" Semi="false" UnhideWhenUsed="false" Name="Light List"/>
    <w:LsdException Locked="false" Priority="62" Semi="false" UnhideWhenUsed="false" Name="Light Grid"/>
    <w:LsdException Locked="false" Priority="63" Semi="false" UnhideWhenUsed="false" Name="Medium Shading 1"/>
    <w:LsdException Locked="false" Priority="64" Semi="false" UnhideWhenUsed="false" Name="Medium Shading 2"/>
    <w:LsdException Locked="false" Priority="65" Semi="false" UnhideWhenUsed="false" Name="Medium List 1"/>
    <w:LsdException Locked="false" Priority="66" Semi="false" UnhideWhenUsed="false" Name="Medium List 2"/>
    <w:LsdException Locked="false" Priority="67" Semi="false" UnhideWhenUsed="false" Name="Medium Grid 1"/>
    <w:LsdException Locked="false" Priority="68" Semi="false" UnhideWhenUsed="false" Name="Medium Grid 2"/>
    <w:LsdException Locked="false" Priority="69" Semi="false" UnhideWhenUsed="false" Name="Medium Grid 3"/>
    <w:LsdException Locked="false" Priority="70" Semi="false" UnhideWhenUsed="false" Name="Dark List"/>
    <w:LsdException Locked="false" Priority="71" Semi="false" UnhideWhenUsed="false" Name="Colorful Shading"/>
    <w:LsdException Locked="false" Priority="72" Semi="false" UnhideWhenUsed="false" Name="Colorful List"/>
    <w:LsdException Locked="false" Priority="73" Semi="false" UnhideWhenUsed="false" Name="Colorful Grid"/>
    <w:LsdException Locked="false" Priority="60" Semi="false" UnhideWhenUsed="false" Name="Light Shading Accent 1"/>
    <w:LsdException Locked="false" Priority="61" Semi="false" UnhideWhenUsed="false" Name="Light List Accent 1"/>
    <w:LsdException Locked="false" Priority="62" Semi="false" UnhideWhenUsed="false" Name="Light Grid Accent 1"/>
    <w:LsdException Locked="false" Priority="63" Semi="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 1"/>
    <w:LsdException Locked="false" Priority="64" Semi="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 1"/>
    <w:LsdException Locked="false" Priority="65" Semi="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 1"/>
    <w:LsdException Locked="false" UnhideWhenUsed="false" Name="Revision"/>
    <w:LsdException Locked="false" Priority="34" Semi="false" UnhideWhenUsed="false" Qat="true" Name="List Paragraph"/>
    <w:LsdException Locked="false" Priority="29" Semi="false" UnhideWhenUsed="false" Qat="true" Name="Quote"/>
    <w:LsdException Locked="false" Priority="30" Semi="false" UnhideWhenUsed="false" Qat="true" Name="Intense Quote"/>
    <w:LsdException Locked="false" Priority="66" Semi="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 1"/>
    <w:LsdException Locked="false" Priority="67" Semi="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 1"/>
    <w:LsdException Locked="false" Priority="68" Semi="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 1"/>
    <w:LsdException Locked="false" Priority="69" Semi="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 1"/>
    <w:LsdException Locked="false" Priority="70" Semi="false" UnhideWhenUsed="false" Name="Dark List Accent 1"/>
    <w:LsdException Locked="false" Priority="71" Semi="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 1"/>
    <w:LsdException Locked="false" Priority="72" Semi="false" UnhideWhenUsed="false" Name="Colorful List Accent 1"/>
    <w:LsdException Locked="false" Priority="73" Semi="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 1"/>
    <w:LsdException Locked="false" Priority="60" Semi="false" UnhideWhenUsed="false" Name="Light Shading Accent 2"/>
    <w:LsdException Locked="false" Priority="61" Semi="false" UnhideWhenUsed="false" Name="Light List Accent 2"/>
    <w:LsdException Locked="false" Priority="62" Semi="false" UnhideWhenUsed="false" Name="Light Grid Accent 2"/>
    <w:LsdException Locked="false" Priority="63" Semi="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 2"/>
    <w:LsdException Locked="false" Priority="64" Semi="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 2"/>
    <w:LsdException Locked="false" Priority="65" Semi="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 2"/>
    <w:LsdException Locked="false" Priority="66" Semi="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 2"/>
    <w:LsdException Locked="false" Priority="67" Semi="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 2"/>
    <w:LsdException Locked="false" Priority="68" Semi="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 2"/>
    <w:LsdException Locked="false" Priority="69" Semi="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 2"/>
    <w:LsdException Locked="false" Priority="70" Semi="false" UnhideWhenUsed="false" Name="Dark List Accent 2"/>
    <w:LsdException Locked="false" Priority="71" Semi="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 2"/>
    <w:LsdException Locked="false" Priority="72" Semi="false" UnhideWhenUsed="false" Name="Colorful List Accent 2"/>
    <w:LsdException Locked="false" Priority="73" Semi="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 2"/>
    <w:LsdException Locked="false" Priority="60" Semi="false" UnhideWhenUsed="false" Name="Light Shading Accent 3"/>
    <w:LsdException Locked="false" Priority="61" Semi="false" UnhideWhenUsed="false" Name="Light List Accent 3"/>
    <w:LsdException Locked="false" Priority="62" Semi="false" UnhideWhenUsed="false" Name="Light Grid Accent 3"/>
    <w:LsdException Locked="false" Priority="63" Semi="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 3"/>
    <w:LsdException Locked="false" Priority="64" Semi="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 3"/>
    <w:LsdException Locked="false" Priority="65" Semi="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 3"/>
    <w:LsdException Locked="false" Priority="66" Semi="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 3"/>
    <w:LsdException Locked="false" Priority="67" Semi="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 3"/>
    <w:LsdException Locked="false" Priority="68" Semi="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 3"/>
    <w:LsdException Locked="false" Priority="69" Semi="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 3"/>
    <w:LsdException Locked="false" Priority="70" Semi="false" UnhideWhenUsed="false" Name="Dark List Accent 3"/>
    <w:LsdException Locked="false" Priority="71" Semi="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 3"/>
    <w:LsdException Locked="false" Priority="72" Semi="false" UnhideWhenUsed="false" Name="Colorful List Accent 3"/>
    <w:LsdException Locked="false" Priority="73" Semi="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 3"/>
    <w:LsdException Locked="false" Priority="60" Semi="false" UnhideWhenUsed="false" Name="Light Shading Accent 4"/>
    <w:LsdException Locked="false" Priority="61" Semi="false" UnhideWhenUsed="false" Name="Light List Accent 4"/>
    <w:LsdException Locked="false" Priority="62" Semi="false" UnhideWhenUsed="false" Name="Light Grid Accent 4"/>
    <w:LsdException Locked="false" Priority="63" Semi="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 4"/>
    <w:LsdException Locked="false" Priority="64" Semi="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 4"/>
    <w:LsdException Locked="false" Priority="65" Semi="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 4"/>
    <w:LsdException Locked="false" Priority="66" Semi="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 4"/>
    <w:LsdException Locked="false" Priority="67" Semi="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 4"/>
    <w:LsdException Locked="false" Priority="68" Semi="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 4"/>
    <w:LsdException Locked="false" Priority="69" Semi="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 4"/>
    <w:LsdException Locked="false" Priority="70" Semi="false" UnhideWhenUsed="false" Name="Dark List Accent 4"/>
    <w:LsdException Locked="false" Priority="71" Semi="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 4"/>
    <w:LsdException Locked="false" Priority="72" Semi="false" UnhideWhenUsed="false" Name="Colorful List Accent 4"/>
    <w:LsdException Locked="false" Priority="73" Semi="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 4"/>
    <w:LsdException Locked="false" Priority="60" Semi="false" UnhideWhenUsed="false" Name="Light Shading Accent 5"/>
    <w:LsdException Locked="false" Priority="61" Semi="false" UnhideWhenUsed="false" Name="Light List Accent 5"/>
    <w:LsdException Locked="false" Priority="62" Semi="false" UnhideWhenUsed="false" Name="Light Grid Accent 5"/>
    <w:LsdException Locked="false" Priority="63" Semi="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 5"/>
    <w:LsdException Locked="false" Priority="64" Semi="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 5"/>
    <w:LsdException Locked="false" Priority="65" Semi="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 5"/>
    <w:LsdException Locked="false" Priority="66" Semi="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 5"/>
    <w:LsdException Locked="false" Priority="67" Semi="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 5"/>
    <w:LsdException Locked="false" Priority="68" Semi="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 5"/>
    <w:LsdException Locked="false" Priority="69" Semi="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 5"/>
    <w:LsdException Locked="false" Priority="70" Semi="false" UnhideWhenUsed="false" Name="Dark List Accent 5"/>
    <w:LsdException Locked="false" Priority="71" Semi="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 5"/>
    <w:LsdException Locked="false" Priority="72" Semi="false" UnhideWhenUsed="false" Name="Colorful List Accent 5"/>
    <w:LsdException Locked="false" Priority="73" Semi="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 5"/>
    <w:LsdException Locked="false" Priority="60" Semi="false" UnhideWhenUsed="false" Name="Light Shading Accent 6"/>
    <w:LsdException Locked="false" Priority="61" Semi="false" UnhideWhenUsed="false" Name="Light List Accent 6"/>
    <w:LsdException Locked="false" Priority="62" Semi="false" UnhideWhenUsed="false" Name="Light Grid Accent 6"/>
    <w:LsdException Locked="false" Priority="63" Semi="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 6"/>
    <w:LsdException Locked="false" Priority="64" Semi="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 6"/>
    <w:LsdException Locked="false" Priority="65" Semi="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 6"/>
    <w:LsdException Locked="false" Priority="66" Semi="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 6"/>
    <w:LsdException Locked="false" Priority="67" Semi="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 6"/>
    <w:LsdException Locked="false" Priority="68" Semi="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 6"/>
    <w:LsdException Locked="false" Priority="69" Semi="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 6"/>
    <w:LsdException Locked="false" Priority="70" Semi="false" UnhideWhenUsed="false" Name="Dark List Accent 6"/>
    <w:LsdException Locked="false" Priority="71" Semi="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 6"/>
    <w:LsdException Locked="false" Priority="72" Semi="false" UnhideWhenUsed="false" Name="Colorful List Accent 6"/>
    <w:LsdException Locked="false" Priority="73" Semi="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 6"/>
    <w:LsdException Locked="false" Priority="19" Semi="false" UnhideWhenUsed="false" Qat="true" Name="Subtle Emphasis"/>
    <w:LsdException Locked="false" Priority="21" Semi="false" UnhideWhenUsed="false" Qat="true" Name="Intense Emphasis"/>
    <w:LsdException Locked="false" Priority="31" Semi="false" UnhideWhenUsed="false" Qat="true" Name="Subtle Reference"/>
    <w:LsdException Locked="false" Priority="32" Semi="false" UnhideWhenUsed="false" Qat="true" Name="Intense Reference"/>
    <w:LsdException Locked="false" Priority="33" Semi="false" UnhideWhenUsed="false" Qat="true" Name="Book Title"/>
    <w:LsdException Locked="false" Priority="37" Name="Bibliography"/>
    <w:LsdException Locked="false" Priority="39" Qat="true" Name="TOC ing"/>
    </w:LatentStyles>

Unfortunately we didn't receive it yet. 

2nd try resent to help@tmssoftware.com

Still nothing. Could you maybe upload to a service like DropBox and send us the link (through private e-mail) so we can download from there?

OK, resent the mail without attachment and included a download-link. Hope it will work 

Thanks a lot, we received now and were able to fix it. Next version will have the fix, and I have sent you the patch through e-mail.

THX. I compiled the demo with the patch and it seems to work now.
Thank you for the very fast and perfect help & support