Agile Computing Authors: Liz McMillan, William Schmarzo, Carmen Gonzalez, Jim Kaskade, Lori MacVittie

Related Topics: Microsoft Cloud, PowerBuilder

Microsoft Cloud: Article

PowerBuilder Takes You To .NET

Preparing PowerBuilder applications for .NET Windows Forms deployment

After designating which PBLs you want to have the tool examine, you'll be able to print, save, and browse the Migration Assistant's analysis report. (Figure B)

You can now begin formalizing your Migration Plan.

The Migration Assistant is a great boon to the developer in that its discovery success rate is close to 100%, but you'll want to add a thorough quality assurance cycle to the tail end of that plan.
Once you believe you and your team are ready for the migration process, open the application in PowerBuilder 11. The Migrate Application response window will open. Verify your library list, choose your message notification level, select whether you want PowerBuilder to automatically convert DBCS string manipulation functions appropriately for unicode usage...this is the point of no return and your last chance to back up your PBLs...then click OK. (Figure 3)

Unsupported Features in Windows Forms Projects
In its 11.x time frame, PowerBuilder is a .NET deployment solution. That is, the developer isn't strictly working with .NET in the PowerBuilder IDE. (.NET in the PowerBuilder IDE is slated for version 12). As such, any application can use PowerBuilder features that are appropriate to Win32 deployments, but aren't supported yet or not appropriate for .NET deployments. (Figure C)

There are, however, those unsupported features that Sybase doesn't plan to support for .NET deployment such as non-visual classes for profiling and tracing. PowerBuilder developers will have to identify where in their applications they may be using unsupported features and then decide how they want to refactor the application to work around each feature. The next part of this article will cover identifying unsupported features in your application, yet I highly recommend at some point that you review Chapter 11 of "Deploying Applications and Components to .NET" in the documentation to become familiar with this reference for "Unsupported Features in Windows Forms Projects".


Deploying Your WinForm Application
OK. It's time to deal with the nuts and bolts of features not supported for WinForm-deployed applications, so it's time to do our initial deploy! Since the thrust of this article is preparing your PowerBuilder application for WinForm deployment rather than the details of how to actually deploy it as WinForm, I'll refer you to the detailed external resources on just how to do that.
In the core document "Deploying Applications and Components to .NET," Chapter 9 "Deploying PowerBuilder Applications as .NET Windows Forms" takes you through the use of the .NET Windows Forms Application wizard.


There are also detailed recordings of deploying/publishing your WinForm application using .NET Smart Client techniques. Look for demonstrations of PowerBuilder 11's "Intelligent Updater" at www.sybase.com/products/development/powerbuilder/videos and at www.sybase.com/products/development/powerbuilder/webcasts.

The .NET Deployment Output Log
Once you've deployed your target as a WinForm, you'll want to examine the tabbed output logs in the PowerBuilder IDE. Exporting can save these logs and I highly recommend you do so.
Pay attention to the Default, Warnings, and Errors logs first. They arguably will have the most critical issues needing your attention. A text file named DeployLog.txt is generated with each .NET deployment in PowerBuilder 11. Besides aiding you with deployment errors it may be beneficial in helping you resolve any remaining configuration issues.

Now it's time to examine the Unsupported Features output log.

The Unsupported Features output log is populated the first time you deploy to WinForm and each subsequent time you choose to do a full rebuild. Of course, if after a deployment you add any features to your application that are unsupported, even an incremental rebuild should yield a populated output log. There's a lot of useful information in that output log, but I'm sure you'll agree that it'll take some effort to read through it in its raw form and continue to use it as a reference document as you formulate your Refactoring Plan. That's why the .NET Features Analyzer was recently introduced.

The .NET Features Analyzer IDE Add-in
The .NET Features Analyzer is available on Sybase's codeXchange Web site at https://powerbuilder.codexchange.sybase.com....

This tool was created in the 4GL tradition to provide you with a productive IDE for browsing the Unsupported Features output log.

The tool is an add-in to the PowerBuilder IDE. Once installed, open it from the File>New menu item in the IDE and select it from the Tool tabpage of the New response window. Use the tool to open a saved output log or tell it to import the log that may be open in the PowerBuilder IDE. .NET Features Analyzer lets you browse unsupported features by class and PBL. In its IDE, you may also examine the raw output log as well as any exceptions that are thrown. All of this may be printed and you may save the raw output from here as well. (Figure 4)

Formulate Your Refactoring Plan
So once you've identified the features in your application that aren't supported in a WinForm deployment, it's time to divide and conquer. Decide what workaround you'll use for each unsupported feature, how much time it'll take, what resources to assign, and estimate a time frame. In other words, you won't want to skimp in managing this as a formal project.

Some Caveats
A couple of caveats while you refactor your PowerBuilder application for WinForm deployment: 1) the functionality of the debugger for .NET deployment targets is different from Win32 deployments using pcode; 2) You may want to consider migrating to PowerBuilder 11.1 rather than version 11 to take advantage of the incremental compilation that was added. Otherwise your entire application will have to be compiled before you can see the runtime impact of the modification of a single line of code or even a minimal layout change in one of the visual painters. While the runtime speed is comparable to Win32 deployments, full build-and-deploy times for a library list of PBLs amounting to 150MB can take as much as a half-hour.

Additional Resources
Additional resources are available to aid you in this process. Besides the white papers and tech tips available from the support section of the Sybase Web site, there are technical articles in the PowerBuilder Developer Journal, the ISUG Journal, as well as the International Developer Magazine. The most notable supplemental resources in my opinion are the PowerBuilder newsgroups.


Sybase Newsgroups
The Sybase newsgroups are where your peers and a group of skilled volunteers (TeamSybase and Team iAnywhere) answer questions posted on a range of Sybase products and solutions. I can't think of a better place to get an answer to a question by a person who discovered the solution to the problem you're experiencing today...six months ago.


The Most Productive .NET Developer
PowerBuilder isn't the first development tool to take you to .NET, but it's among the first. Sybase wanted to ensure that PowerBuilder users could take their applications and their components to .NET long before they had to. PowerBuilder ensures that you don't have to rewrite all of your applications completely from the ground up to take them to .NET...unlike some of its competitors have.

PowerBuilder 11's WinForm deployment capabilities take the PowerBuilder presentation layer application of your two-tier or n-tier solution to .NET today and preserves your standing as the most productive business application developer on the block.

More Stories By John Strano

John Strano is a Sybase Technology Evangelist and is a charter member of TeamSybase. He has been using PowerBuilder since 1991 and has authored articles for multiple industry periodicals. John has been a Sybase Certified Instructor and has presented Sybase tools on an international basis since 1997. Over the last 17 years John has developed a variety of PowerBuilder applications from single-user scaling up to enterprise-class, web-based projects.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.

@ThingsExpo Stories
The Internet of Things (IoT), in all its myriad manifestations, has great potential. Much of that potential comes from the evolving data management and analytic (DMA) technologies and processes that allow us to gain insight from all of the IoT data that can be generated and gathered. This potential may never be met as those data sets are tied to specific industry verticals and single markets, with no clear way to use IoT data and sensor analytics to fulfill the hype being given the IoT today.
SYS-CON Events announced today that Numerex Corp, a leading provider of managed enterprise solutions enabling the Internet of Things (IoT), will exhibit at the 19th International Cloud Expo | @ThingsExpo, which will take place on November 1–3, 2016, at the Santa Clara Convention Center in Santa Clara, CA. Numerex Corp. (NASDAQ:NMRX) is a leading provider of managed enterprise solutions enabling the Internet of Things (IoT). The Company's solutions produce new revenue streams or create operating...
SYS-CON Events announced today that MathFreeOn will exhibit at the 19th International Cloud Expo, which will take place on November 1–3, 2016, at the Santa Clara Convention Center in Santa Clara, CA. MathFreeOn is Software as a Service (SaaS) used in Engineering and Math education. Write scripts and solve math problems online. MathFreeOn provides online courses for beginners or amateurs who have difficulties in writing scripts. In accordance with various mathematical topics, there are more tha...
The best way to leverage your Cloud Expo presence as a sponsor and exhibitor is to plan your news announcements around our events. The press covering Cloud Expo and @ThingsExpo will have access to these releases and will amplify your news announcements. More than two dozen Cloud companies either set deals at our shows or have announced their mergers and acquisitions at Cloud Expo. Product announcements during our show provide your company with the most reach through our targeted audiences.
@ThingsExpo has been named the Top 5 Most Influential Internet of Things Brand by Onalytica in the ‘The Internet of Things Landscape 2015: Top 100 Individuals and Brands.' Onalytica analyzed Twitter conversations around the #IoT debate to uncover the most influential brands and individuals driving the conversation. Onalytica captured data from 56,224 users. The PageRank based methodology they use to extract influencers on a particular topic (tweets mentioning #InternetofThings or #IoT in this ...
The Internet of Things will challenge the status quo of how IT and development organizations operate. Or will it? Certainly the fog layer of IoT requires special insights about data ontology, security and transactional integrity. But the developmental challenges are the same: People, Process and Platform and how we integrate our thinking to solve complicated problems. In his session at 19th Cloud Expo, Craig Sproule, CEO of Metavine, will demonstrate how to move beyond today's coding paradigm ...
Although it has gained significant traction in the consumer space, IoT is still in the early stages of adoption in enterprises environments. However, many companies are working on initiatives like Industry 4.0 that includes IoT as one of the key disruptive technologies expected to reshape businesses of tomorrow. The key challenges will be availability, robustness and reliability of networks that connect devices in a business environment. Software Defined Wide Area Network (SD-WAN) is expected to...
OnProcess Technology has announced it will be a featured speaker at @ThingsExpo, taking place November 1 - 3, 2016, in Santa Clara, California. Dan Gettens, OnProcess’ Chief Analytics Officer, will discuss how Internet of Things (IoT) data can be leveraged to predict product failures, improve uptime and slash costly inventory stock. @ThingsExpo is an annual gathering of IoT and cloud developers, practitioners and thought-leaders who exchange ideas and insights on topics ranging from Big Data in...
Developing software for the Internet of Things (IoT) comes with its own set of challenges. Security, privacy, and unified standards are a few key issues. In addition, each IoT product is comprised of (at least) three separate application components: the software embedded in the device, the back-end service, and the mobile application for the end user’s controls. Each component is developed by a different team, using different technologies and practices, and deployed to a different stack/target –...
Virgil consists of an open-source encryption library, which implements Cryptographic Message Syntax (CMS) and Elliptic Curve Integrated Encryption Scheme (ECIES) (including RSA schema), a Key Management API, and a cloud-based Key Management Service (Virgil Keys). The Virgil Keys Service consists of a public key service and a private key escrow service. 

SYS-CON Events announced today that CDS Global Cloud, an Infrastructure as a Service provider, will exhibit at the 19th International Cloud Expo, which will take place on November 1–3, 2016, at the Santa Clara Convention Center in Santa Clara, CA. CDS Global Cloud is an IaaS (Infrastructure as a Service) provider specializing in solutions for e-commerce, internet gaming, online education and other internet applications. With a growing number of data centers and network points around the world, ...
Data is the fuel that drives the machine learning algorithmic engines and ultimately provides the business value. In his session at Cloud Expo, Ed Featherston, a director and senior enterprise architect at Collaborative Consulting, will discuss the key considerations around quality, volume, timeliness, and pedigree that must be dealt with in order to properly fuel that engine.
Big Data has been changing the world. IoT fuels the further transformation recently. How are Big Data and IoT related? In his session at @BigDataExpo, Tony Shan, a renowned visionary and thought leader, will explore the interplay of Big Data and IoT. He will anatomize Big Data and IoT separately in terms of what, which, why, where, when, who, how and how much. He will then analyze the relationship between IoT and Big Data, specifically the drilldown of how the 4Vs of Big Data (Volume, Variety,...
From wearable activity trackers to fantasy e-sports, data and technology are transforming the way athletes train for the game and fans engage with their teams. In his session at @ThingsExpo, will present key data findings from leading sports organizations San Francisco 49ers, Orlando Magic NBA team. By utilizing data analytics these sports orgs have recognized new revenue streams, doubled its fan base and streamlined costs at its stadiums. John Paul is the CEO and Founder of VenueNext. Prior ...
SYS-CON Events announced today that Embotics, the cloud automation company, will exhibit at the 19th International Cloud Expo, which will take place on November 1–3, 2016, at the Santa Clara Convention Center in Santa Clara, CA. Embotics is the cloud automation company for IT organizations and service providers that need to improve provisioning or enable self-service capabilities. With a relentless focus on delivering a premier user experience and unmatched customer support, Embotics is the fas...
Ask someone to architect an Internet of Things (IoT) solution and you are guaranteed to see a reference to the cloud. This would lead you to believe that IoT requires the cloud to exist. However, there are many IoT use cases where the cloud is not feasible or desirable. In his session at @ThingsExpo, Dave McCarthy, Director of Products at Bsquare Corporation, will discuss the strategies that exist to extend intelligence directly to IoT devices and sensors, freeing them from the constraints of ...
In his general session at 19th Cloud Expo, Manish Dixit, VP of Product and Engineering at Dice, will discuss how Dice leverages data insights and tools to help both tech professionals and recruiters better understand how skills relate to each other and which skills are in high demand using interactive visualizations and salary indicator tools to maximize earning potential. Manish Dixit is VP of Product and Engineering at Dice. As the leader of the Product, Engineering and Data Sciences team a...
The Open Connectivity Foundation (OCF), sponsor of the IoTivity open source project, and AllSeen Alliance, which provides the AllJoyn® open source IoT framework, today announced that the two organizations’ boards have approved a merger under the OCF name and bylaws. This merger will advance interoperability between connected devices from both groups, enabling the full operating potential of IoT and representing a significant step towards a connected ecosystem.
The Internet of Things can drive efficiency for airlines and airports. In their session at @ThingsExpo, Shyam Varan Nath, Principal Architect with GE, and Sudip Majumder, senior director of development at Oracle, will discuss the technical details of the connected airline baggage and related social media solutions. These IoT applications will enhance travelers' journey experience and drive efficiency for the airlines and the airports. The session will include a working demo and a technical d...
What happens when the different parts of a vehicle become smarter than the vehicle itself? As we move toward the era of smart everything, hundreds of entities in a vehicle that communicate with each other, the vehicle and external systems create a need for identity orchestration so that all entities work as a conglomerate. Much like an orchestra without a conductor, without the ability to secure, control, and connect the link between a vehicle’s head unit, devices, and systems and to manage the ...