Welcome!

Agile Computing Authors: Elizabeth White, Mark Ross-Smith, Yeshim Deniz, Carmen Gonzalez, Larry Alton

Related Topics: Microsoft Cloud, PowerBuilder

Microsoft Cloud: Article

PowerBuilder Takes You To .NET

Preparing PowerBuilder applications for .NET Windows Forms deployment

Remember Win16? Whatever happened to it? Where did it go? It hung around for a while in the Win95/Win98 days alongside Win32 but then it went away. Well, wherever Win16 went, Win32 is going there too. Eventually, .NET will be the "native" Windows desktop technology and WinForm or its descendant will be the primary de facto API.

PowerBuilder is arguably the most productive (read fastest and easiest) .NET development tool on the market today. It doesn't require .NET experience on the part of the developer and the conditional compilation feature allows PowerBuilder applications to be maintained as a single code line for Win32 as well as for .NET deployments.

WinForm Benefits
Well, let's say that your company or your client's hasn't established a requirement, a standard, to move to deploying .NET applications quite yet. "Why should I explore deploying to .NET WinForm? I'm not required to deploy to .NET yet and I'll just end up with another client/server application...right?" The main benefits of deploying PowerBuilder applications as .NET WinForm are twofold: .NET interoperability and .NET Smart Client publishing.

.NET Interoperability
There are some fairly nice things in the .NET Framework. Think about the PowerBuilder projects in the past from which you've made external function calls, to which you added ActiveX/OCX, in which you implemented OLE. Think of the .NET Framework as a big fat external resource of which you'd like to take advantage. You may have a partner, a vendor, a .NET development group in your own company who's developed .NET resources with which you'd like to integrate your PowerBuilder applications. Once you deploy your PowerBuilder applications to WinForm (or WebForm), you can.

www.sybase.com/products/development/powerbuilder/videos

Smart Client Publishing
A major headache in supporting applications in production has historically been deployment. Browser-based applications became popular because of the prospect of the immediate and automatic update of application business logic and user interface for every single user. But even with the rising popularity of Rich Internet Applications (RIAs), anything in the browser has some intractable compromise lurking somewhere. Oh, and by the way, classic Web application projects still tend to be more expensive than their 4GL-developed counterparts.

What if you could take advantage of the best of both worlds? What if you could deploy your application and its updates using the ubiquity of the Web, but have the users end up with an uncompromised, rich-interfaced, fully functional application on their desktops with no browser-based compromises?

Applications operating on the workstation exploit client-side resources, reduce server load, don't consume as much bandwidth, and overall have better performance.

Once you deploy/compile your PowerBuilder application as .NET WinForm, your application and its updates can be "published" to the users' workstations just by filling in some property sheets, in a code-free manner by clicking a button...for one or 1,000 users.

www.sybase.com/products/development/powerbuilder/videos

http://video.sybase.com/webcasts/PB11SC3-020108.wmv

Game Plan
The approach to prepare your PowerBuilder application for WinForm deployment is twofold:

  1. Migrate forward to PowerBuilder 11.
  2. Modify your application to work around PowerBuilder features that may not be supported for .NET WinForm deployment.
While these two points are the salient ones, I'll also go into a couple of notable ancillary subtopics as well.

Before you start any part of this process, please...back up your PBLs! I can't tell you how often some poor soul posts a request on the PowerBuilder newsgroup saying he's lost his source or that his libraries have become corrupted somehow and is there a way to decompile his executables into source code. Please, folks, only perform the operations I'll discuss now with libraries that are backed up or are a working copy of your PBLs. And, remember, a backup is only as good as its restore. Verify that you can successfully restore your valuable collateral.

The Recipe
So here's a more detailed recipe for preparing and deploying a PowerBuilder application for WinForm:

  • Backup, backup, BACKUP!
  • Check in all classes from source control.
  • Backup, backup, BACKUP! (Sense a pattern?)
  • Install the required external resources.
    - http://infocenter.sybase.com/help/topic/com.sybase.dc37771_1100/pdf/pbeinst.pdf
  • Install PowerBuilder 11.x
  • Use the Migration Assistant tool (more later)
  • Formulate your Migration Plan
  • Address migration issues that are discovered
  • Backup, backup, BACKUP!
  • Migrate your application
  • Perform a Win32 compilation
  • Perform Quality Assurance
  • Backup, backup, BACKUP!
  • Create a WinForm deployment Target and Project
    - www.sybase.com/products/development/powerbuilder/videos
  • Perform an initial WinForm deployment
  • Save the Unsupported Features output log
  • Use the .NET Features Analyzer IDE Add-in tool (more later)
  • Formulate your Refactoring Plan
  • Refactor/modify your application to work around features unsupported for WinForm
  • Perform a "final" WinForm deployment
  • Back it up, folks
  • Perform Quality Assurance
  • Take advantage of .NET interoperability
  • Take Advantage of .NET smart client deployment/publishing

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
WebRTC is the future of browser-to-browser communications, and continues to make inroads into the traditional, difficult, plug-in web communications world. The 6th WebRTC Summit continues our tradition of delivering the latest and greatest presentations within the world of WebRTC. Topics include voice calling, video chat, P2P file sharing, and use cases that have already leveraged the power and convenience of WebRTC.
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.
"A lot of times people will come to us and have a very diverse set of requirements or very customized need and we'll help them to implement it in a fashion that you can't just buy off of the shelf," explained Nick Rose, CTO of Enzu, in this SYS-CON.tv interview at 18th Cloud Expo, held June 7-9, 2016, at the Javits Center in New York City, NY.
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.
WebRTC services have already permeated corporate communications in the form of videoconferencing solutions. However, WebRTC has the potential of going beyond and catalyzing a new class of services providing more than calls with capabilities such as mass-scale real-time media broadcasting, enriched and augmented video, person-to-machine and machine-to-machine communications. In his session at @ThingsExpo, Luis Lopez, CEO of Kurento, introduced the technologies required for implementing these idea...
The WebRTC Summit New York, to be held June 6-8, 2017, at the Javits Center in New York City, NY, announces that its Call for Papers is now open. Topics include all aspects of improving IT delivery by eliminating waste through automated business models leveraging cloud technologies. WebRTC Summit is co-located with 20th International Cloud Expo and @ThingsExpo. WebRTC is the future of browser-to-browser communications, and continues to make inroads into the traditional, difficult, plug-in web co...
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. In his session at @ThingsExpo, Craig Sproule, CEO of Metavine, demonstrated how to move beyond today's coding paradigm and shared the must-have mindsets for removing complexity from the develop...
While not quite mainstream yet, WebRTC is starting to gain ground with Carriers, Enterprises and Independent Software Vendors (ISV’s) alike. WebRTC makes it easy for developers to add audio and video communications into their applications by using Web browsers as their platform. But like any market, every customer engagement has unique requirements, as well as constraints. And of course, one size does not fit all. In her session at WebRTC Summit, Dr. Natasha Tamaskar, Vice President, Head of C...
Who are you? How do you introduce yourself? Do you use a name, or do you greet a friend by the last four digits of his social security number? Assuming you don’t, why are we content to associate our identity with 10 random digits assigned by our phone company? Identity is an issue that affects everyone, but as individuals we don’t spend a lot of time thinking about it. In his session at @ThingsExpo, Ben Klang, Founder & President of Mojo Lingo, discussed the impact of technology on identity. Sho...
DevOps is being widely accepted (if not fully adopted) as essential in enterprise IT. But as Enterprise DevOps gains maturity, expands scope, and increases velocity, the need for data-driven decisions across teams becomes more acute. DevOps teams in any modern business must wrangle the ‘digital exhaust’ from the delivery toolchain, "pervasive" and "cognitive" computing, APIs and services, mobile devices and applications, the Internet of Things, and now even blockchain. In this power panel at @...
With all the incredible momentum behind the Internet of Things (IoT) industry, it is easy to forget that not a single CEO wakes up and wonders if “my IoT is broken.” What they wonder is if they are making the right decisions to do all they can to increase revenue, decrease costs, and improve customer experience – effectively the same challenges they have always had in growing their business. The exciting thing about the IoT industry is now these decisions can be better, faster, and smarter. Now ...
WebRTC is about the data channel as much as about video and audio conferencing. However, basically all commercial WebRTC applications have been built with a focus on audio and video. The handling of “data” has been limited to text chat and file download – all other data sharing seems to end with screensharing. What is holding back a more intensive use of peer-to-peer data? In her session at @ThingsExpo, Dr Silvia Pfeiffer, WebRTC Applications Team Lead at National ICT Australia, looked at differ...
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.
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.
A critical component of any IoT project is what to do with all the data being generated. This data needs to be captured, processed, structured, and stored in a way to facilitate different kinds of queries. Traditional data warehouse and analytical systems are mature technologies that can be used to handle certain kinds of queries, but they are not always well suited to many problems, particularly when there is a need for real-time insights.
Big Data engines are powering a lot of service businesses right now. Data is collected from users from wearable technologies, web behaviors, purchase behavior as well as several arbitrary data points we’d never think of. The demand for faster and bigger engines to crunch and serve up the data to services is growing exponentially. You see a LOT of correlation between “Cloud” and “Big Data” but on Big Data and “Hybrid,” where hybrid hosting is the sanest approach to the Big Data Infrastructure pro...
Businesses are struggling to manage the information flow and interactions between all of these new devices and things jumping on their network, and the apps and IT systems they control. The data businesses gather is only helpful if they can do something with it. In his session at @ThingsExpo, Chris Witeck, Principal Technology Strategist at Citrix, discussed how different the impact of IoT will be for large businesses, expanding how IoT will allow large organizations to make their legacy applica...
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...
With major technology companies and startups seriously embracing IoT strategies, now is the perfect time to attend @ThingsExpo 2016 in New York. Learn what is going on, contribute to the discussions, and ensure that your enterprise is as "IoT-Ready" as it can be! Internet of @ThingsExpo, taking place June 6-8, 2017, at the Javits Center in New York City, New York, is co-located with 20th Cloud Expo and will feature technical sessions from a rock star conference faculty and the leading industry p...
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 ...