There are a total of four different ways that PSL code can be integrated into a PageBuilder project. Of course the first question is; “Why would you?” And the answer is clear. VDP is a complex business and no Drag & Drop system (even ours) can foresee the challenges faced in the VDP business. So sometimes some logic, or procedure, or control that just had not been foreseen will be required.
Many functions are provided with PageBuilder – dozens. And, firms who have some programming abilities can augment the built in functions on their own. There is simply – No Limit. On the other hand, customers can ask us to build them for them. The result is that even quite complex projects can be handled entirely in the PageBuilder suite. Once again, VDP Without Compromise.
Formatted Text Box
First and perhaps most simply, in the PageBuilder Formatted Text Box, one can insert PSL code – as much and as complicated as desired. One could, for example go to the PSL development system and write and test a whole lot of PSL code, then copy it into the Formatted Text box in Page builder.
The easiest way is to use the existing Value Functions – OR to create some on your own. Value functions can be inserted everywhere a variable might be. The built in ones deal with such matters as conversion of data types – numbers to dollars for example, or string functions such as capitalization issues, or math functions such as multiplication. But—any user can create their own and distribute them around the company.
PageBuilder also supports “Logical Functions.” These are used in, for example the N-Up Layout function to select which layout is printed for each record based on slightly more complex logic than a merge variable. One could write some logic along the lines of
“if gender = “male” and state = TX, and age > 30” then use this page.
Last, there are “Custom Boxes.” Many come with PageBuilder and are good examples. When these are invoked a pull down box appears awaiting population of values either by typing in a value or mapping a variable to the field. There are few limits to the complexity of these functions.
For example a financial firm might write a series of custom boxes to compute loan payment values based on variables associated with a given loan. A marketing firm might use these to draw some sort of graphic based on dimensions found in or calculated from values in the merge data.
The above are the four ways to integrate code into PageBuilder. But there is a completely different way to look at PageBuilder. There are two in this category.
- First, one can use PageBuilder as a “program generator.” PageBuilder writes PSL code. So a programmer could use PageBuilder to generate hundreds of lines of debugged code- very quickly - then in the PSL Development system, modify that code to his heart’s content.
- The other method is to have Page Builder just build libraries. Then the programmer can write the main program calling those libraries as needed.
For projects such as complex transactional work, the “Visa” example in the Help/Examples section of PageBuilder is a good example, of such behavior. PageBuilder was used to generate several hundred lines of code so that, for this quite complex transactional project a human had to write perhaps a hundred lines of code. The net time savings – two thirds. It was done in about a half a day versus about a day and a half to code it from scratch.
Next: Enterprise Architecture