This section describes each of the targets you can build.
There are three wizards for creating application targets:
You use the Application Target wizard to create a new PowerScript-based Application object and the library containing it. You must create any other objects you need from scratch.
Template Application Target wizard
You use the Template Application Target wizard to create a PowerScript-based application, the library containing it, and a set of basic objects and scripts. If the application requires a connection to a SQL database, the wizard automatically creates a Connection object.
In the Template Application wizard, you can choose one of two application types: MDI Application and SDI Application.
MDI Application. The wizard automatically generates the shell and scripts for a basic Multiple Document Interface (MDI) application that includes these objects:
-
Application object
-
Frame window
-
Frame menu
-
Base sheet window
-
Sheet menu
-
Sheet menu service object
-
Sheet windows
-
About window
-
Toolbar window
-
Connection service object (if database connection is needed)
-
Project object (optional; can build later using a Project wizard)
You can run the MDI application immediately by clicking the Run button on the PowerBar. You can open sheets, display an About box, and select items from menus. The To-Do List can help you use the application as a starting point for continuing development of an MDI application.
SDI Application. In the Template Application wizard, you can also choose to create a Single Document Interface (SDI) application. An SDI application has only one main window with a menu and an about window. If the application requires a connection to a SQL database, the wizard automatically creates a Connection object.
For information about building MDI and SDI applications, see the section called “Building an MDI Application” in Application Techniques.
Existing Application Target wizard
You use the Existing Application Target wizard to add a target to your workspace that uses an application you built in an earlier version of PowerBuilder. After you complete the wizard, the Migrate Application dialog box opens so you can migrate the application to this version.
Before you upgrade. Always make a backup copy of all the PBLs used in an application before you upgrade it to a new version of PowerBuilder.
You can use the Migration Assistant to check for obsolete syntax in your application before you upgrade; then you can make changes in the earlier version of PowerBuilder and avoid some migration errors. The Migration Assistant is particularly useful if you are upgrading from PowerBuilder 6 or earlier. Open the Migration Assistant from the Tool tab of the New dialog box, and press F1 if you need help in the wizard.
You should also check the release notes for the version of PowerBuilder that you are using to find out if there are any migration issues that might affect you.
For more information about upgrading targets, see Upgrading targets.
For information about building standard PowerBuilder applications, see the rest of this book and Application Techniques.
In the PowerBuilder CloudPro Edition and Professional Edition, if you have installed and activated PowerBuilder as well as SnapDevelop successfully, you can select the C# Projects target in the PowerBuilder IDE; which will launch SnapDevelop IDE for you to create a C# project.
For more information about these target wizards, refer to the SnapDevelop user guide.
The .NET Assembly target is discontinued starting from PowerBuilder 2022. The ability to use this technique has been retained for backward compatibility.
The .NET assembly components do not support PowerScript features added since version PowerBuilder 2017, including but not limited to CoderObject, CrypterObject, CompressorObject, ExtractorObject, DotNetAssembly, DotNetObject, HTTPClient, JSONGenerator, JSONPackage, JSONParser, OAuthClient, OAuthRequest, ResourceResponse, RESTClient, RibbonBar, TokenRequest, TokenResponse, WebBrowser etc.
You may consider using the the section called “HTTPClient object” object as a replacement for the .NET assembly components.