Power to Build

Home » Misc » PowerBuilder/PVCS Interface

PowerBuilder/PVCS Interface



See here for a detailed discussion on how PowerBuilder IDE integrates an SCC software for source control. This is a continuation of that post, about a specific implementation using PVCS. As mentioned there, PB uses Microsoft SCC API to integrate Source control functionality in. But, since PB stores objects inside a PowerBuilder library, which is a binary file, the source control function is not as direct, as you would in say Visual Studio. Like I said, you don’t want to checkin/checkout the binary file, but the actual objects inside the library.

When you work with Objects in PVCS from inside PowerBuilder, remember you are working with a 2 step process. PowerBuilder library (.PBL) contains the objects in binary format and PVCS will only understand (text) files at the File System level. So, each time you do any PVCS operation from within PB, you are invoking transaction between PB and File System and then File System to PVCS.

When you check in a new object in PB following steps happen:

1. PB exports out the object to corresponding text file format to the directory where the PBL is.

2. PB calls an API to add this file to PVCS.

3. Updates the status of the file on both sides.

When you Check out an object in PB for e.g., following steps happen:

1. An API call to PVCS makes it checkout the corresponding file – locks, exports it to the Workfile directory.

2. The workfile is then imported into PBL to replace the current copy of the object.

3. Updates status on both sides (locked/checked out etc).

So, if you have an object checked out in PB, chances are the file on source folder won’t be up-to-date with it yet, until you do some PVCS operation.


Comments, please?

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: