1. Arcady Abramov
  2. Beta Testing
  3. Thursday, 16 January 2020 10:21 AM UTC

I had this question in the comments of another thread, but it appears that it requires a new one.

Our company has a lot of code written in PB 12.6 NET, which serves as effective code sharing through COM for our various desktop applications. Pb 12.6 allowed for effective consumption of .NET assemblies, so it was widely used for over 5 years.

Apparently, there is no direct conversion to C# through Snap Develop so we will need to do it gradually.

The biggest problem is the conversion of DW objects. If this is solved, then the rest is likely to be relatively easy.

Does anyone have any idea how to quickly convert PB 12.6 DW object to PB classic DW objects? There is no UI issue here as all .NET components are non-visual

Thank you

Arcady

Accepted Answer
Michael Kramer Accepted Answer Pending Moderation
  1. Thursday, 16 January 2020 16:38 PM UTC
  2. Beta Testing
  3. # Permalink

Hi Arcady, I expect DataWindow source is identical in PB .NET vs. "PowerScript" (for lack of better phrase). Difference being each DW object resides in its own .SRD file in a "PBL-folder". I therefore suggest:

  1. Create one new PowerScript target having a .PBL file matching each PBL-folder.
  2. Import all your PB .NET DW files into these new libraries.
    You can mass import once for each PBL-folder
  3. Finally, migrate the DW objects into C# models using SnapDevelop.

These models match the needs of SnapObjects' DataStore/ModelStore. I know there are manual steps in this but it seems fairly low risk process from where I sit (albeit that is no PB .NET apps to try this out myself).

HTH /Michael

Comment
There are no comments made yet.
Olan Knight Accepted Answer Pending Moderation
  1. Thursday, 16 January 2020 17:20 PM UTC
  2. Beta Testing
  3. # 1

I would take one PB.NET DWO SRD file and compare it side by side with a PBv12.6 native DWO SRD file to see what the differences are between the two formates.

If those differences are in the header, you might be able to simple copy the header from the PB native v12.6 SRD file, put it into a new file, then copy the body of the .NET SRD file into that new file.

Of course, it depends on what the differences between the two SRD file formats end up being, but if you CAN do this it sure beats manually recreating datawindow objects.


Good Luck,

Olan

Comment
There are no comments made yet.
Armeen Mazda @Appeon Accepted Answer Pending Moderation
  1. Thursday, 16 January 2020 16:26 PM UTC
  2. Beta Testing
  3. # 2

Hi Arcady, you may not get good response to this question because so few people were able to successfully use the old PB.NET.  Anyway, if there is some way you can export from PB.NET the .SRD file or the DataWindow definition, you could then create the DataWindow data objects in the native PB IDE.  From there, then you can open up the .PBL that contains these data objects in the SnapDevelop IDE and convert them to C# models to be used by the .NET DataStore.

Comment
  1. Arcady Abramov
  2. Thursday, 16 January 2020 16:34 PM UTC
There is no need to export the SRD file from PB.NET, it is a separate file on the disk in it's natural form (pbl is a directory).

But there is a problem importing it to PB classic. If I send the SRD file here, will someone from Appeon be able to look at it and tell me what is not supposed to be there?

  1. Helpful
  1. Chris Pollach @Appeon
  2. Thursday, 16 January 2020 17:04 PM UTC
FYI: Appeon PB will not be able to understand a PB.Net DWO because the syntax is not entirely the same as PB.Net was WPF / WCF based.
  1. Helpful
  1. Armeen Mazda @Appeon
  2. Friday, 17 January 2020 01:16 AM UTC
The team is swamped with the beta right now so we don't have the time to analyze this. You can try Michael and Olan's suggestions see if any of those are workable. Or a suggestion I have is locate the original PBLs you used before you migrated to PB.NET and start with those. I guess this should reduce the effort significantly.
  1. Helpful
There are no comments made yet.
  • Page :
  • 1


There are no replies made for this question yet.
However, you are not allowed to reply to this question.