Welcome!

Agile Computing Authors: Liz McMillan, Harry Trott, Ken Schwaber, Aruna Ravichandran, Elizabeth White

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".

http://infocenter.sybase.com/help/topic/com.sybase.dc00586_1100/html/dplynet/CJAJHFGB.htm

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.

http://infocenter.sybase.com/help/topic/com.sybase.dc00586_1100/html/dplynet/BABEEDAC.htm

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.

www.sybase.com/detail_list?id=11507&multi=true&SR=Y&show=1248

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.

www.sybase.com/support/community-forums

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
In his General Session at 17th Cloud Expo, Bruce Swann, Senior Product Marketing Manager for Adobe Campaign, explored the key ingredients of cross-channel marketing in a digital world. Learn how the Adobe Marketing Cloud can help marketers embrace opportunities for personalized, relevant and real-time customer engagement across offline (direct mail, point of sale, call center) and digital (email, website, SMS, mobile apps, social networks, connected objects).
SYS-CON Events announced today that Catchpoint, a leading digital experience intelligence company, has been named “Silver Sponsor” of SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Catchpoint Systems is a leading Digital Performance Analytics company that provides unparalleled insight into your customer-critical services to help you consistently deliver an amazing customer experience. Designed for digital business, C...
@ThingsExpo has been named the ‘Top WebRTC Influencer' by iTrend. iTrend processes millions of conversations, tweets, interactions, news articles, press releases, blog posts - and extract meaning form them and analyzes mobile and desktop software platforms used to communicate, various metadata (such as geo location), and automation tools. In overall placement, @ThingsExpo ranked as the number one ‘WebRTC Influencer' followed by @DevOpsSummit at 55th.
"There's a growing demand from users for things to be faster. When you think about all the transactions or interactions users will have with your product and everything that is between those transactions and interactions - what drives us at Catchpoint Systems is the idea to measure that and to analyze it," explained Leo Vasiliou, Director of Web Performance Engineering at Catchpoint Systems, in this SYS-CON.tv interview at 18th Cloud Expo, held June 7-9, 2016, at the Javits Center in New York Ci...
The 20th International Cloud Expo has announced that its Call for Papers is open. Cloud Expo, to be held June 6-8, 2017, at the Javits Center in New York City, brings together Cloud Computing, Big Data, Internet of Things, DevOps, Containers, Microservices and WebRTC to one location. With cloud computing driving a higher percentage of enterprise IT budgets every year, it becomes increasingly important to plant your flag in this fast-expanding business opportunity. Submit your speaking proposal ...
SYS-CON Events announced today that Linux Academy, the foremost online Linux and cloud training platform and community, will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Linux Academy was founded on the belief that providing high-quality, in-depth training should be available at an affordable price. Industry leaders in quality training, provided services, and student certification passes, its goal is to c...
20th Cloud Expo, taking place June 6-8, 2017, at the Javits Center in New York City, NY, will feature technical sessions from a rock star conference faculty and the leading industry players in the world. Cloud computing is now being embraced by a majority of enterprises of all sizes. Yesterday's debate about public vs. private has transformed into the reality of hybrid cloud: a recent survey shows that 74% of enterprises have a hybrid cloud strategy.
In the next five to ten years, millions, if not billions of things will become smarter. This smartness goes beyond connected things in our homes like the fridge, thermostat and fancy lighting, and into heavily regulated industries including aerospace, pharmaceutical/medical devices and energy. “Smartness” will embed itself within individual products that are part of our daily lives. We will engage with smart products - learning from them, informing them, and communicating with them. Smart produc...
"What is the next step in the evolution of IoT systems? The answer is data, information, which is a radical shift from assets, from things to input for decision making," stated Michael Minkevich, VP of Technology Services at Luxoft, in this SYS-CON.tv interview at @ThingsExpo, held November 3-5, 2015, at the Santa Clara Convention Center in Santa Clara, CA.
The emerging Internet of Everything creates tremendous new opportunities for customer engagement and business model innovation. However, enterprises must overcome a number of critical challenges to bring these new solutions to market. In his session at @ThingsExpo, Michael Martin, CTO/CIO at nfrastructure, outlined these key challenges and recommended approaches for overcoming them to achieve speed and agility in the design, development and implementation of Internet of Everything solutions with...
WebRTC sits at the intersection between VoIP and the Web. As such, it poses some interesting challenges for those developing services on top of it, but also for those who need to test and monitor these services. In his session at WebRTC Summit, Tsahi Levent-Levi, co-founder of testRTC, reviewed the various challenges posed by WebRTC when it comes to testing and monitoring and on ways to overcome them.
Internet of @ThingsExpo, taking place June 6-8, 2017 at the Javits Center in New York City, New York, is co-located with the 20th International Cloud Expo and will feature technical sessions from a rock star conference faculty and the leading industry players in the world. @ThingsExpo New York Call for Papers is now open.
Smart Cities are here to stay, but for their promise to be delivered, the data they produce must not be put in new siloes. In his session at @ThingsExpo, Mathias Herberts, Co-founder and CTO of Cityzen Data, discussed the best practices that will ensure a successful smart city journey.
Every successful software product evolves from an idea to an enterprise system. Notably, the same way is passed by the product owner's company. In his session at 20th Cloud Expo, Oleg Lola, CEO of MobiDev, will provide a generalized overview of the evolution of a software product, the product owner, the needs that arise at various stages of this process, and the value brought by a software development partner to the product owner as a response to these needs.
In 2014, Amazon announced a new form of compute called Lambda. We didn't know it at the time, but this represented a fundamental shift in what we expect from cloud computing. Now, all of the major cloud computing vendors want to take part in this disruptive technology. In his session at 20th Cloud Expo, John Jelinek IV, a web developer at Linux Academy, will discuss why major players like AWS, Microsoft Azure, IBM Bluemix, and Google Cloud Platform are all trying to sidestep VMs and containers...
SYS-CON Events announced today that MobiDev, a client-oriented software development company, will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place June 6-8, 2017, at the Javits Center in New York City, NY, and the 21st International Cloud Expo®, which will take place October 31-November 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. MobiDev is a software company that develops and delivers turn-key mobile apps, websites, web services, and complex softw...
The cloud market growth today is largely in public clouds. While there is a lot of spend in IT departments in virtualization, these aren’t yet translating into a true “cloud” experience within the enterprise. What is stopping the growth of the “private cloud” market? In his general session at 18th Cloud Expo, Nara Rajagopalan, CEO of Accelerite, explored the challenges in deploying, managing, and getting adoption for a private cloud within an enterprise. What are the key differences between wh...
"Tintri was started in 2008 with the express purpose of building a storage appliance that is ideal for virtualized environments. We support a lot of different hypervisor platforms from VMware to OpenStack to Hyper-V," explained Dan Florea, Director of Product Management at Tintri, in this SYS-CON.tv interview at 18th Cloud Expo, held June 7-9, 2016, at the Javits Center in New York City, NY.
The security needs of IoT environments require a strong, proven approach to maintain security, trust and privacy in their ecosystem. Assurance and protection of device identity, secure data encryption and authentication are the key security challenges organizations are trying to address when integrating IoT devices. This holds true for IoT applications in a wide range of industries, for example, healthcare, consumer devices, and manufacturing. In his session at @ThingsExpo, Lancen LaChance, vic...
WebRTC has had a real tough three or four years, and so have those working with it. Only a few short years ago, the development world were excited about WebRTC and proclaiming how awesome it was. You might have played with the technology a couple of years ago, only to find the extra infrastructure requirements were painful to implement and poorly documented. This probably left a bitter taste in your mouth, especially when things went wrong.