Search My Blog

Friday, June 27, 2025

OCR / Imaging Example - 2025 R1 Released!

 ** Hot News Item **

Updated OCR / Imaging Example!

    Software Tool & Die Inc. (STD) are please to announce the updated release of an STD Integrated Framework OCR / Imaging example application that utilizes the STD framework to implement both OCR scanning and Image management! The OCR / Imaging feature inside this application is all driven by DataWindow controls and utilizes the free and open source Tesseract and ImageMagicK products for OCR and Image management! 
 
   The OCR / Imaging application is a working prototype of a real life application that was actually put into production. It emulates a "web" look & feel with controls and menus leveraging DataWindow technology. It allows language switching, OCR data location, Image redaction and foreground text Escapement to signify a completed redaction of payment card information. The application also demonstrates security, reporting, work queue management and drag & drop data targeting!
 
   The OCR / Imaging application is a;; driven by the STD framework which allows the PB developer to easily build any GUI Application interface that is required (desired). The framework also allows the PB developer to be  exponentially more productive!
  
Bilingual Welcome Screen

 
Login dialogue utilizes Active Directory services

    Once you are past the the Login dialogue (any password is accepted in this demo app), you are presented with the main working dialogue for the application. Note that the Header band is a DataWindow that allows the application user to a) switch language, b) return to the "home" screen, c) Logout, d) View the App log (if they are an Admin User) and e) enter the App's Help information via an HTML URL. The main working menu on the left is also a DataWindow!
 
Main application working dialogue using DataWindow top & left menus
 
    The next step would be to select the "Administration" section of the left side DataWindow menu. This allows the App user to a)  Manage App users (if they are an App Admin) or b) Reassign work that is "in progress" in the assigned work queue. Note that the latter feature would be used where an App user is on vacation, sick, leaves the department, etc and there is "work in progress" that needs to be reassigned to another valid app user in order for it to be completed.
  
OCR / Image user security rights administration

    The next part could be the reporting section where privileged users and/or App Admin can get information about WIP (work in progress) by various status (completed, redacted, or reviewed). These areas (as well as the above mentioned Administration section), are just a standard PB Tab Control plus Tab Page that includes standard PB DataWindow controls to drive the show!
  
Example of Tab Page user object with DataWindow reports

    The "meat and potatoes" though of the application  is within the "Redaction" side of the left menu DataWindow. This brings into play a User Object Tab Control plus Tab Page that contains three DW's a) top main processing menu, b) right side image handling menu DW and c) a center DW that is used for displaying images, OCR, targeting, image manipulation, redaction and task completion, as follows:
   
Main image handling tab page with surrounding menu DW's!
 
    From here the App user can rotate the images, use the "Find" on the top tool bar to OCR the image to locate possible credit card information, use the right DW menu to manually target credit card information, redact and then complete & save the image back to the DBMS (of course all the time, using PB's BLOB handling commands). Note that because all the dialogues are DataWindow control based, the entire App then becomes Zoomable!
  
Image flip & rotation handling

Using OCR to locate possible credit card data within a form
  
Redacted credit card information on the image within the DW!
 
Final image redacted & saved back the the DB BLOB table.

     The STD OCR / Image PowerBuilder example application can now be downloaded from the SourceForge website. Please click here to download & enjoy the APP and the code behind that demonstrates that with PB, you can build any type of App GUI & functionality that you need! 
 
    
Enjoy ... Chris

Thursday, June 26, 2025

SQL Extract Utility - 2025R1 Released!

 ** Hot News **

Updated SQL Extract Utility! 

for Appeon PowerBuilder 2025

    Software Tool & Die Inc. (STD Inc) have just released an updated version of the SQL Extract utility version 2025.1.0.45 that can reverse engineer Appeon PowerBuilder's proprietary SQL format known as a PBSELECT format into either ANSI, PL/SQL or T-SQL format from within any DataWindow (TM) object. The updated version of the SQL Extract utility was designed to allow it to forward & reverse engineer the DataWindow source code from any Unicode based PowerBuilder library. This means that DataWindow source from PowerBuilder version 10 through PB 2025 can be parsed & the SQL run-time generated from a PBSELECT format just like when your DataWindows are actually running under control of your PowerBuilder based production applications! The utility will also identify DataWindows that are not using a PBSELECT format that may be already causing performance, migration or cross-DBMS issues and may require a review.

 
    The output of SQL Extract is a textual based .SQL file that can be input directly into SQL syntax analysis  products like: SQL Parser; SQL Doctor; Aqua Data Studio; DB Optimizer; etc (to name a few products) for further SQL analysis, formatting, & tuning. STD has successfully tested the new version of SQL Extract with SAP's latest SQL Anywhere & ASE 16 as well as SQL Server 2022, PostGreSQL 17  DBMS systems. SQL Extract can also handle other DB access mechanisms, such as: OLE-DB, ADO.net, MSOLEDBSQL, etc. Support for the ODBC db driver is still standard, but PB's native db drivers are fully supported as per the Appeon PB 2025 product feature set. Older DBMS client DB Drivers are also supported - for example the Open Client (SYC) native DB driver access mechanism for ASE.

    The updated of the SQL Extract utility will also work with Appeon's InfoMaker 2025, PowerClient & PowerServer 2025 development projects as well, as those products also utilize the same DataWindow technology. The new features of SQLXTract v2025 are as follows:
  • Migrated the App code from PB2017R1 build 1681 to PB 2025 build 3683.
  • Enhanced the SQL extraction logic to support "on the fly" DataWindow source conversion syntax
  • Tested SQL Extract with SA 17 and the new "PB Demo DB V2025" database
  • Added new Project for 64bit deployment
  • Tested SQL Extract on W10 version 22H2 build 19045.2788
  • Tested SQL Extract on W11 version 24H2 build 26100.4349
 

    The SQL Extract utility application is open source and thus royalty free to use. You can download the SQL Extract application source code from its current location on the SourceForge website.



Enjoy!

Regards ... Chris

Tuesday, June 24, 2025

InfoMaker Framework - 2025R1 Released!

 ** Hot News **

Updated InfoMaker Framework

of Reusable Functions


    Software Tool & Die Inc. (STD) are pleased to announce today an updated subset of their Integrated Framework that has been developed for the latest Appeon InfoMaker 2025 GA release build 3683. The updated STD InfoMaker Framework is a set of reusable functions that can be used in any InfoMaker Report or Form object where expressions are used to obtain, format, validate, derive, compute, etc various values. In this release as well, all the functions have been now documented by the Visual Expert 2025 product from Novalys, as follows

 
Visual Expert generated documentation in HTML format!


         The updated InfoMaker framework includes a library of reusable functions. These functions can perform a variety of value-added services to any InfoMaker set of Report or Form objects. The Functions are well documented internally. You can add these to your InfoMaker product by amending the IM library list to include the "STD_FC_IM_Functions.pbl" library. This will immediately give you access to all these global functions.

Step#1 - Select the Library List in the InfoMaker IDE
 

Step#2 - Add the STD InfoMaker Framework's library to your project


 Note: All the STD frameworks are free and can be downloaded from its STD Foundation Classes SourceForge project website. The new InfoMaker framework can be downloaded from here.

 In the near future, Software Tool & Die will also be adding more functions and another new area called Style Sheet Ancestors to this framework.
 
   STD would also like to thank Novalys Corporation for their support of the various STD Foundation Frameworks by supplying the VisualExpert product for the framework's documentation! 
 

Enjoy!
Regards ... Chris

Sunday, June 22, 2025

Send Message - 2025R1 Released!

 ** Hot News Item **

Updated Send Message Example!


    Software Tool & Die Inc. (STD) are please to announce the new release of an STD Integrated Framework example application that utilizes the STD framework to implement O/S messaging! The Send Message feature inside PowerBuilder has been around since PB version 2.0. However, it is not a well documented and known feature of the PB development tool. The STD Send Message example goes even further by allowing applications to communicate across processes. The STD framework allows the PB developer to easily implement messaging. The framework also allows the PB developer to be  exponentially more productive!
  
    The Send Message example application utilizes the latest STD Integrated Framework version 2025.1.0.436 released on 2025-05-19 and the newest Appeon PowerBuilder 2025 release build 3683 to locate external applications. In turn, the framework then facilitates external applications written in PB or almost any development language - to send messages back to  PB applications using a Send() command (PB or Windows API).
 
    The download includes three applications, Sender, Receiver and SendReceive. The SendReceive application demonstrates locating any object class in your PB App and its address (handle). Once an object class handle is found the calling object can use the PB Send() command to send it an O/S message. The messaged control can then send back information (ie: its Class Name) to the caller by using another Send() command. Note the PB Send command is the same as the MS-Windows API Send command. So using the Windows API allows non-PB Apps to send messages to a PB App.
 
SendReceive example using Send() to introspect other objects!

    The Integrated framework also allows you to send messages from one application to another (different processes). The Sender and Receiver applications in the download provide this example between applications (processes). These PB applications can be running as either a Native, System Tray or System Task process. They also demonstrate the use of the "Custom User Event" to be able to receive messages between any App and your PB App.
    
    The 2025 Send Message applications have also been updated to use the new PB Themes, TabbedView and DisplayMenuAsRibbonBar features of  PB 2025.


Sender & Receiver example of inter-process Send Messages

     The STD Send Message PowerBuilder example applications can now be downloaded from the SourceForge website. Please click here to download & enjoy!
  

Enjoy ... Chris

Friday, June 20, 2025

Structure Generator - 2025R1 Released!

** Hot News **

Structure Generator Utility



    Software Tool & Die Inc (STD) are pleased to announce a new free & open source utility for automatically generating PowerBuilder structures from any DataWindow. This comes in handy when building Web Service, .NET Assembly, User Object, etc interfaces for encapsulated data interaction. The Structure Generator utility is designed using the latest STD Foundation Class framework version 2025R1 and specifically works with the new PowerBuilder 2025 release. It works with the WorkSpace application type! 

    The generator starts by introspecting any PBL (PowerBuilder Library) to build a list of DataWindow objects contained within that library. The PB developer can point the utility to any MS-Windows folder that may contain a PBL. From there, the generator displays a list of DataWindow Objects (DWO) contained in the selected PBL. Any SQL or External based DWO can be used to build a set of structures for to use in constructing a data equivalent structure object source. 
  
Structure Generator in action!

    For .Net based interfaces you need to build two structures. One that maps any DWO's primary buffer and a second structure that houses the first. The SG can build both structures by selecting the "generate parent structure" option on the lower left hand side of the "Structure Builder" screen. You can also request that the SG prefix your Structure Item names (ie:  "si_"). Once the DWO and structure options are selected, the "Generate" command button will allow the developer to select the target folder and Structure name where the SG will build then actual PB structure object source code.
 
Selecting the location and name to build the structure!

  For the "Tracing Options" DWO shown above, lets enter the structure name "sr_trace_options" when we select the "generate" command button. The SG will complete the building of the resulting structure(s) based on the DWO's definition. 
  
Resulting PowerBuilder Structure source code!

    Once your structure(s) source are built by the SG utility, all the PB developer needs to do to ready the structures for use is to use the RMB on any PBL and then select the "Import" popup menu option. This will now import both the source code & compile the P-Code of the imported structure into working object for use in your PB application(s)!
   
Importing the new Structure into a PBL
 
Viewing the new Structure in the Structure Painter!

    Now to complete the structure, you can edit the Structure Item "description(s)" as required to complete the object's documentation. Then save the edited Structure for your use or share the structure PBL with your fellow PB developers for their productivity.

    To download the free & open source SG 2025R1 utility - click here!
    To download the free & open source STD 2025R1 Framework - click here

Enjoy ... Chris

Wednesday, June 18, 2025

Multimedia Player - 2025 R1 Released!

**  Hot news **

Multi-Media App updated for PB2025!


    Software Tool & Die Inc. are please to announce the release of its updated all PowerBuilder built MS-Window's Multi-Media Player version 2025R1 build 2025.1.0.40 example application that is all written in PowerBuilder 2025 build 3683! This application demonstrates the power of using the STD Integrated Framework plus its new "vs_ole_media_player_master" object class. The latest application release was designed with the following in mind:
  • Updated from PB version 202build 1892 to PB version 2025 build 3683!
  • Updated the STD Integrated framework to the latest release (2025 R1 build 2025.1.0.436)
  • Updated use the latest MS-Window's O/S "Notification" feature (STD framework coded)
  • Updated to use the latest PB2025's Theme features.
  • Can run in the O/S System Tray!
  • Provides 32 & 64 bit, M-Code and P-Code compiled EXE's (and their related projects).
  • Tested the Base64 code on W10 version 22H2 build 19045.2788
  • Tested the Base64 code on W11 version 24H2 build 26100.4349
  • Updated all Project Objects to use the latest C/S and PowerClient deployment features.
Media Player in action on an MP3 music stream

Media Player in action on an MP4 movie stream

     The Multimedia Player will allow local files to be played & viewed from your local machine. It is also designed to allow media data streams to be played and viewed from any valid URL across the internet. The MultiMedia Player supports the following formats: .MOV, .MP3, .MP4, .AVI, .WTV, .MID, .MKA, .MKV, .MV4, .WAV, .WMV, just to mention the main types. More music and video formats are also supported as well.
 
Use various media sources from your PC or across the internet!
 
 
    Your MultiMedia play list is also always at your finger tips using the STD Frameworks ability to add a User Object(s) to the main Menu Toolbar on an Main or MDI Frame.


   Unlock the "Power" in PowerBuilder applications by using the STD Integrated framework! The MultiMedia Player is just one example of building a PB application from this powerful all free & open source Framework! Click here to download the Multi-Media Player example application!
 
Tip: Use the "vs_ole_media_player_master" object class from the framework to add live application "how to" videos to your PB business applications! 

Enjoy ... Chris

Saturday, June 14, 2025

Compact Disc Player - 2025 R1 Released!

 ** Hot News **

New version of the PowerBuilder CD player released!

Built from the STD Integrated framework!  

    Software Tool & Die Inc.are please to announce the release of an updated Compact Disc Player (version 2025.1.65) application all written in PowerBuilder 2025 GS build 3683! This application demonstrates the power of using the STD Integrated Framework plus the all the Unicode based MCI (Multimedia Command Interface) API's now residing in the base classes. The updated application can be deployed as either a Win32 / Win64  native application or a PowerClient application and allows the user to control music from any CD/DVD player attached to their PC.


 

    The amazing changes to this release were the refactoring of the previous code to dovetail into the latest STD Integrated Framework for PB release 2025 R1! New features include: a) can now reside in the O/S's System Tray; b) can be compiled for the first time into a 64 bit EXE; c) can be compiled into either a 32 or 64 bit  application; d) complied into M-Code or P-Code,  e) W11 ready and; f) Theme ready!


 
 
Not only is this a "kool" application to run - it demonstrates important low-level control of the O/S that you can easily achieve using the framework's extensive external API's and support for PB 2025 GA's latest features. When you add the STD framework to the PB development mix - a whole new horizon of application possibilities emerges! 
 
 
     If you would like to enjoy the Native M-Code or P-Code versions of the above CD Player application, please visit the SourceForge website download the CD Player from this link. Note that all the applications and the framework itself  in the SourceForge project are free & open source!

 
    

  

 To commemorate the release of the various Star Wars movies, the CD Player has now been enhanced with various sound effects that salute this great story-line & movie franchise. 

 

I hope that you enjoy the updated Star-wars CD Player edition!

 

 

  You seek a PowerBuilder Master.
Know him I do,
Find him I will!
Hmmm .. you seek Chris Pollach

Friday, June 13, 2025

Integrated Framework Documentation - 2025 R1 Released!

 ** Hot News **

STD Integrated Framework

Documentation Updated for the 2025R1 Release!

    

        Software Tool & Die Inc (STD) are very pleased to announce that they have just released an updated version of the new 2025 R1 build 2025.1.0.436 of the STD Integrated Foundation Class framework documentation! The documentation has been produced using the latest Visual Expert 2025 software tool from Novalys.
   
  
STD Framework documentation main web page!
 
Visual Expert session engaged with the Integrated Framework

    Note: All the STD frameworks are free and can be downloaded from its STD Foundation Classes SourceForge project website. You can download the new updated STD Integrated Framework documentation from here.

   STD would like to thank Novalys Corporation for their support of the Foundation Classes by supplying the Visual Expert product for the framework's automated documentation generation!

Regards ... Chris

Thursday, June 12, 2025

Drag External Files Example - 2025 R1 Released!

 * Hot News Item **

Updated - External Files Drag & Drop Example!

    

    Software Tool & Die Inc. (STD) are please to announce the new release of an STD Integrated Framework example application that utilizes the framework to implement External File Drag & Drop! The ability to drag & drop into a PowerBuilder application via the STD Framework has been feature for almost a decade. However, there was not a detailed example on how to perform this action except in the OrderEntry example application. The STD framework implements this by allowing the PB Developer to just set one property, coding one event and then directing the file name data to any standard native PB control!
 
 New features in this release...
  • Built using the new PB2025 GA build 3683 release
  • Uses the latest STD Integrated Framework version 2025.1.0.436
  • Updated to support the latest PB2025 GA Theme features
  • Incorporates MS-Windows notification utility built in PB 2025 GA
  • Incorporates MS-Windows Marquee utility built in PB 2025 GA 
  • Includes deployment examples for 32 & 64bit M-Code / P-Code
  • Tested the DDE code on W10 version 22H2 build 19045.4529
  • Tested the DDE code on W11 version 24H2 build 26100.4351
  • PowerClient or PowerServer 2025 GA deployment ready as well!
  • Supports the new DisplayMenuAsRibbonBar feature found in PB 2025
  • Can toggle the RibbonBar feature ON or OFF in the App's INI file as follows ...
  • RibbonBar_Mode=Y/N
  • Added support for the new TabbedView MDI Sheet look & feel
  • Can toggle the TabbedView ON/OFF and also change its Look & Feel in the INI file as follows...
  •   [TabbedView]
    Mode=Y/N
    FaceName = "Tahoma"
    ShowCloseButton =Y
    ShowContextMenu=Y
    ShowIcon=Y
    ShowSeparator=Y
    ShowPowerTips=Y
    ShowText=Y
    TextSize=-8  

  •  
    New GUI Look & Feel automatic Ribbon Bar!
       
        The External File Drag & Drop example application utilizes the latest STD Integrated Framework version 2025.1.0.436 release and the latest Appeon PowerBuilder 2025 GA release build 3683 to locate external files dragged into any PB Application. In turn, the framework facilitates identifying external files coming into a PB application. This latest framework now also detects if the PB App is running in "ADMIN Mode" as well. This is important because external file drag & drop cannot be performed while the application is in that mode. 
      
    A list of External Files can be directed to any PB control!


        The Integrated framework allows the PB developer to enable the External Files Drag & Drop by just setting one property. The PB developer then just needs to code one event to handle the external file drop, as follows:
       
    Three easy steps... a) Property ON, b) Code framework event, c) Use function to get file names!


         The STD External File Drag & Drop PowerBuilder example application can now be downloaded from the SourceForge website. Please click here to download   

    Enjoy!  


    Regards ... Chris

    Wednesday, June 11, 2025

    DDE Example - 2025 R1 Released!

     Hot News!

    Updated PowerBuilder DDE Example Application

    Built using the latest STD Framework!

            Software Tool & Die Inc. are very pleased today to announce an updated example application that demonstrate a fully working Dynamic Data Exchange (DDE) Client and Server application! This latest release of the DDE Client/Server applications are are all written in the latest PowerBuilder version 2025 and and fully utilize the latest STD Integrated Framework version 2025 R1.


        In this updated release, the DDE Demo Applications includes the following changes:

    • Built using PB2025 GA build 3683
    • Uses the STD Integrated Framework  v2025.1.0.436
    • Updated to support the PB2025 GA Theme features
    • Incorporates MS-Windows notification utility built in PB 2025 GA
    • Incorporates MS-Windows Marquee utility built in PB 2025 GA 
    • Includes deployment examples for 32 & 64bit M-Code / P-Code
    • Tested the DDE code on W10 version 22H2 build 19045.4529
    • Tested the DDE code on W11 version 24H2 build 26100.4351
    • PowerClient or PowerServer 2025 GA deployment ready as well!

    Actual DDE Client and DDE Server in action!
     

        The deployed EXE's for the DDE Client and DDE Server are also included in the DDE Example Applications download. You can run either the Client or Server in mixed modes. For example a 32 bit client and a 64 bit server (or vise versa), a P-Code client and an M-Code server (or vise versa), or any combination of the various DDE EXE's built from the STD Framework. The DDE features will work with any combination of the above EXE's. So this feature is just another tool in the PBToolBox that PB Developers can use to accomplish inter-application communication!

      You can download the new STD Framework DDE Demo App for PB2025 GA build 3683, as follows:

    DDE Demo AppDownload 

    STD Framework:  Download  (latest OrderEntry Demo App that uses the framework!)

    Note: Older DDE examples and STD Frameworks are available in their respective "Archive" sub-folders found in the above links.

       Enjoy ... please let me know what you think & if you have any feature suggestions that you might like me to add for future releases! 

    Regards ... Chris

    Thursday, June 5, 2025

    Base64 Example - 2025 R1 Released!

     ** Hot News **

    STD Foundation Classes

    Updated BASE64 Example Application released!

     

         Software Tool & Die Inc. today are very pleased to announce an updated Base64 Encoding / Decoding example application version 2025 R1 for Appeon PowerBuilder that was built from the latest STD Integrated Framework version 2025.1.0.436 and the new Appeon PowerBuilder release PB2025 build. 
     
    The highlights in this release are:
    • Migrated the code from PB2022 R3 build 3356 to PB 2025 build 3683
    • Updated "Theme" support to PB2025 GA
    • DB Connection settings for SQLAnyWhere v17 now use updated STD Framework encryption
    • Requires ADMIN INI application to change DB Connection encryption settings (download)
    • Updated the STD Framework to the latest version2025.1.0.436
    • Tested the Base64 code on W10 version 22H2 build 19045.4529
    • Tested the Base64 code on W11 version 24H2 build26100.4061
    • Updated for PowerClient 2025 GA App deployment
    • Updated for PowerServer 2025 GA App deployment
    • Added support for the new DisplayMenuAsRibbonBar feature of PB 2025
    • Can toggle the RibbonBar feature ON or OFF in the App's INI file as follows ...
    •  RibbonBar_Mode=Y/N
    • Added support for the new TabbedView MDI Sheet look & feel 
    • Can toggle the TabbedView ON/OFF and also change its Look & Feel in the INI file as follows...
    •  [TabbedView]
      Mode=Y/N
      FaceName = "Tahoma"
      ShowCloseButton =Y
      ShowContextMenu=Y
      ShowIcon=Y
      ShowSeparator=Y
      ShowPowerTips=Y
      ShowText=Y
      TextSize=-8 
    • Tested both M-Code, P-Code, Native & PC / PS deployments with both 32 & 64 bit EXE's! 
     
    New TabbedView and Ribbon Bar GUI

     
    Base64 example from an ANSI text file!

         Base64 encoding and decoding is a critical  feature when processing XML and JSON files that contain binary datum. As well as using PowerBuilder's PBDOM feature, an XML DataWindow or interacting with Web Services that pass binary data back and forth (ie: JSON in a RESTFul web service). The received binary data will be in base64 encoded format - which is unusable to your PB application unless decoded (converted back) to its original binary state. Conversely, binary data that your PB application needs to send to other XML or JSON based applications must be converted (encoded) into the base64 standard.
     
    PowerClient based Base64 example using Unicode text file!
     
    Error handling for corrupt (incomplete) or wrong encoded Base64 files.

        The Base64 Example application utilizes standard Microsoft Base64 API's supplied by the MS-Windows O/S. These API's are now embedded in the framework's "nc_crypto_master" object class and easily called from your PowerScript code, as follows:
    • lo_crypto.of_base64_stringtobinary ( lblb_image , ls_base64 )

    Base64 file translation into an image (or any other binary format for that matter)!
     

        The latest Base64 Example - along with the STD Integrated Framework is also able be used with PowerClient and PowerServer (Cloud) PB 2025 applications. Thus, the Base64 Example application can also be deployed to your favourite Web Server for a more convenient deployment approach. 
     
        You can download the Base64 Example application from the STD Framework's website by clicking here! You can also download either of the free open source STD frameworks for PowerBuilder, InfoMaker and PowerServer version 2025 R1 by clicking here!
     
       Note: The Archive folder on SourceForge contains older versions of the PB Base64 application for older versions of PB!

    Enjoy!

    Regards ... Chris