1. Josh Turner
  2. PowerBuilder
  3. Friday, 27 October 2017 19:13 PM UTC

We have recently imported the PBDOM extension into one of our existing libraries. I feel like I am missing something very basic because our automated builds fail when trying to compile the library stating that the pbdom_document object is an illegal data type. Even though I can physically see the pbdom_document object in the library, the solution has temporarily been to manually import the extension on every environment separately. As far as I can tell there was no difference in the source but something about doing the import causes the compile issues to go away. However, this is not a good solution long term because it happens every time we set up a new environment in source control and sometimes after a GLV in source control. Please help.

pbdom_object                  C:\Builds\Unit_Testing\Source\reuse\xml\xml.pbl
 Library: C:\Builds\Unit_Testing\Source\reuse\xml\xml.pbl
     Object: pbdom_object
         pbdom_object Class Declaration
             (0014): Error       C0001: Illegal data type: pbdom_document
  pbdom_characterdata         C:\Builds\Unit_Testing\Source\reuse\xml\xml.pbl
 Library: C:\Builds\Unit_Testing\Source\reuse\xml\xml.pbl
     Object: pbdom_characterdata
         pbdom_characterdata Class Declaration
             (0014): Error       C0001: Illegal data type: pbdom_document
    pbdom_text                C:\Builds\Unit_Testing\Source\reuse\xml\xml.pbl
 Library: C:\Builds\Unit_Testing\Source\reuse\xml\xml.pbl
     Object: pbdom_text

    ...

 

Thanks

Josh Turner

 

 

Accepted Answer
Chris Pollach @Appeon Accepted Answer Pending Moderation
  1. Friday, 27 October 2017 20:14 PM UTC
  2. PowerBuilder
  3. # Permalink

Hi Josh;

 1) What version of PB are you using?

 2) Just add the PBDOM  PBD file to your Target instead of doing the PBX import. Make sure though that the PBD your using is of the same version as your PB though.

Regards ... Chris

Comment
  1. Josh Turner
  2. Tuesday, 31 October 2017 14:40 PM UTC
Thanks. Using PB 2017. I tried the PBD route but it still had some issues with source control for some reason (I'm using WizSource). Here's my scenario: I have computer A which is my development machine and computer B which is the build machine. On computer A, I added the pbdom170.pbd to my target path. I expanded the pbd and added each of objects under the pbd to source control. I also added the physical PBD file to source control. I checked in the target as well. On computer B, I do a GLV and the pbd shows up in the treeview in PB, but the objects under the pbd do NOT show up and compile error ensue. The pbd file itself was on the machine but seemed to be a "bad" copy because removing this one from the target and adding the one from the shared folder on that machine seemed to populate the objects again. And while this works, I was hoping for a completely automated method. Not having to add to the target on the build machine as well. I will keep fiddling with it. Thanks for your help.

  1. Helpful
There are no comments made yet.


There are replies in this question but you are not allowed to view the replies from this question.