Creating a PowerBuilder .NET Web Forms target – PB Docs 115
Creating a PowerBuilder .NET Web Forms target System requirements You must install the .NET Framework 2.0, 3.0, or 3.5 SDK (x86) and AJAX Extensions on the same computer as PowerBuilder, and you must make sure that the system PATH environment variable includes the location of the .NET Framework. If you installed a 1.x version of…
Modifying a .NET Web Service project – PB Docs 115
Modifying a .NET Web Service project You can modify a .NET Web Service project from the Project painter. The Project painter displays all the values you selected in .NET Web Service target or project wizards. However, you can also modify version, debug, and run settings from the Project painter. The Objects tab of the Project…
Support for .NET language features – PB Docs 115
Support for .NET language features When you use conditional blocks of code for the .NET environment, you can take advantage of the following features that are not available in the standard PowerBuilder application environment: Support for sbyte and ulonglong Sbyte is the signed format of the byte datatype and ulonglong is the unsigned format of…
Limitations – PB Docs 115
Limitations This section lists some limitations on the code that can be enclosed in conditional compilation blocks. Case sensitivity PowerScript is case insensitive, but C# is case sensitive. If a resource has the same name as another resource with differences only in the case of one or more characters, PowerBuilder cannot process the resource names…
Handling exceptions in the .NET environment – PB Docs 115
Handling exceptions in the .NET environment Modified exception hierarchy The PowerBuilder to .NET compiler changes the exception hierarchy used by the native PowerScript compiler. In the native PowerBuilder environment, Throwable is the root datatype for all user-defined exception and system error types. Two other system object types, RuntimeError and Exception, inherit directly from Throwable. In…
Using the Connection object – PB Docs 115
Using the Connection object This section describes how to build a .NET client application for an EAServer component using the Connection object. You need to complete the following steps: Use the Template Application target wizard to create a client application, then use a .NET application wizard to create a .NET target using the library list…
Chapter 16 Best Practices for .NET Projects – PB Docs 115
Chapter 16 Best Practices for .NET Projects About this chapter This chapter provides tips on design and coding for the .NET environment. Contents Topic Coding restrictions Design-level considerations Take advantage of global configuration properties Use client-side events to delay postbacks The changes required to transform a PowerBuilder application into a .NET application depend on the…
Coding restrictions – PB Docs 115
Coding restrictions Although PowerScript is essentially a compiled language, it is quite tolerant. For the sake of performance, the PowerBuilder .NET compiler is not designed to be as tolerant as the PowerBuilder native compiler. To be able to compile your applications with .NET, you should avoid certain practices in your PowerScript code. The following language-level…
Design-level considerations – PB Docs 115
Design-level considerations Although stricter compiler enforcement for the .NET environment can catch coding errors typically tolerated by the PowerScript compiler, the .NET environment might also require changes in application design that are not necessarily caught by the compiler. Use PowerBuilder system functions For a PowerBuilder .NET Web Forms application, use PowerBuilder system functions instead of…
Writing code inside a .NET block – PB Docs 115
Writing code inside a .NET block Because the main PowerBuilder compiler does not recognize the classes imported from .NET assemblies, you must surround the code referencing those classes in a conditional compilation block for a .NET application. For example, to reference the .NET message box Show function, you must surround the function call with preprocessor…