Forum Discussion

tlalok's avatar
tlalok
Contributor
15 years ago

table checkpoint error: the selected Object has no datastore

Hi,





I want to add a table checkopint to a keyword test I created. But after selecting a grid in the app with the finder tool theTC wizard gives me an error "the selected object has no data store".





Can I solve that from within TC or do I have to tell the developer to adjust the code, so TC can see the grid? If so, where should I look for further information?





The app is developed in Delphi 2007, the grid is a "Bold for Delphi"-grid.  I tried the same with a Delphi 2009 app and a different grid, but with the same result.







Thanks,





- Carsten












6 Replies

  • Hi Alex,



    thanks for pointing me to the right documentation. We now have an "open" app with symbol infos.



    My developer created a simple grid test for me with a "normal" Delphi dbGrid and a "BoldGrid" (thats what our app uses). As expected, the dbTable-grid can be checked with a TableCheckpoint - the "BoldGrid" still cannot.



    Now my devlopers asks, what properties the tableCheckpoint uses, to read the data out of the grid. With this info he might be able to let the "BoldGrid" appear like a normal "dbGrid" so that TC can read the grid data.



    Is there a documentation avaliable, what he has to do? It's probaby similar to the work you do when supporting 3rd-party grids like DevExpress.



    Thanks in advance,



    - Carsten
  • Hi Carsten,



    With this info he might be able to let the "BoldGrid" appear like a normal "dbGrid" so that TC can read the grid data.


    If your grid control is inherited from TDBGrid, you can try adding the value of your grid's WndClass property to the 'Borland Controls | DBGrid' Object Mapping group (see the "Object Mapping" help topic).



    If your grid control is not a descendant of TDBGrid, the only approach I can suggest is creating a custom routine that performs needed verifications by using the grid's native methods and properties.
  • Hi Jared,



    our idea now is to extend our "Bold-Grid" with virtual properties that clone the properties that TDBGrid has.



    Do you know if TestComplete recognizes TDbGrid by classname or by avaliable properties? It 1) is the case, then our idea won't work.



    It would be very helpful if there was some technical info with instructions how to support the table checkpoint with a custom grid.



    Could you supply us with anything like that?



    -Carsten


  • Hi,



    Let me quote the "BorlandTDBGrid Object" help topic:

    In order for TestComplete to be able to work with your controls as with BorlandTDBGrid objects, the control’s class name must be specified in the Borland Controls | DBGrid group of your project’s Object Mapping options.


    So, you can try adding the name of the resulting class to this group.
  • Hi Jared,



    thanks again. The object mapping was the right start. After mapping to TStringList the table checkpoint reported error messages what was missing. After going through these errors and changing our grid-code in several iterations we are now finally able to create table checkpoints for our custom (bold-) grid.



    This is a real time saver and I will refactor my tests to take advantage of the table checkpoint. Until now I was using exports of the grids to verify its content. A lot more code and less readable.



    Regards,



    - Carsten