Why this matters now:SAP has already pushed a security fix, CVE-2024-0056, into the PowerBuilder 2022 R3 line, and Windows Server 2025 is now the only certified target environment going forward. Deloitte's 2026 Global Technology Leadership Study puts 21 to 40 percent of enterprise IT spend into servicing exactly this kind of deferred technical debt. Every PowerBuilder shop running client or server applications makes this call in 2026, whether it schedules the decision or has it made for them by a support deadline.

Two Different Upgrades, One Misleading Word

PowerBuilder 2022 R2 to 2022 R3 and PowerBuilder anything-to-2025-R2 both get called an "upgrade" in the same planning meeting, and that shared word does quiet damage. One is a mechanical rebuild against a newer IDE with no breaking changes between the two point releases. The other replaces the compiler, removes tooling the app may depend on, drops a runtime dependency, and asks every SOAP integration to become a REST client. Calling both of these "the PowerBuilder upgrade" is how a six-week stabilization pass and a genuine architecture project end up competing for the same calendar slot.

Option A exists for one reason: reduce risk without touching architecture. The IDE moves to 2022 R3, apps rebuild, and the client picks up SQL Server ADO.NET SNI connectivity fixes and the CVE-2024-0056 security patch along the way. Nothing about DataWindow behavior, the PFC framework, or SOAP client usage changes, because there is no breaking change between the two releases. What this path does not deliver is anything from the 2025 modernization line: no new compiler, no automatic REST API generation, no .NET 10 support, no UI modernization.

Option B is a different commitment. PowerBuilder 2025 builds on SAP PowerBuilder 12.6 and keeps strong backward compatibility, so the Migration Assistant can usually get a legacy application running with minimal code changes rather than a rewrite. But minimal code changes is not the same as no remediation: SnapDevelop has been removed from the IDE as of 2025 R2, the .NET 4.8 dependency is gone, SOAP clients need to become HTTPClient or REST objects, and any PFC framework usage needs review before the build passes. Skip 2022 R3 entirely if the budget and timeline support doing this properly. Don't run through it as a warm-up lap.

"A stable PowerBuilder application on 2022 R3 is not modernized. It has been kept safe to stay exactly as it was."
21–40%
of enterprise IT spending is absorbed by servicing technical debt instead of funding new capability, per Deloitte's 2026 Global Technology Leadership Study. The patch-only path is the cheaper move today; deferred long enough, it becomes part of this number.
60–80%
of enterprise IT budgets go toward maintaining and patching systems already in production rather than modernizing them, per Gartner analysis. Staying on the patch cycle indefinitely is itself a budget decision, not a neutral default.
4
breaking changes 10decoders' PowerBuilder upgrade-path documentation flags before any client moves straight to 2025 R2: SOAP client replacement, PFC framework remediation, the removed .NET 4.8 dependency, and SnapDevelop tooling moving outside the IDE. Internal 10decoders delivery data.

What Actually Breaks Between 2022 R3 and 2025 R2

Upgrade considerationWhat it requiresSeverity
SOAP client usageReplace with HTTPClient/REST objects before any 2025 R2 build passesCritical
PFC framework dependencyFull remediation pass required; PFC-heavy apps need the longest test cycleCritical
.NET 4.8 runtime dependencyRemoved entirely; runtime files change and .NET Core 3.1 is unsupportedHigh
SnapDevelop-based C# REST toolingMoves outside the IDE; any team relying on it for REST work needs a new toolchainHigh
Stored procedures with embedded business logicScope as a separate workstream from the IDE upgrade, not a line item inside itCritical
Database driver targets (SQL Server 2025, PostgreSQL 18, Oracle 26ai)Confirm the ADO.NET driver path before committing to a go-live dateModerate

Not sure which PowerBuilder upgrade path your estate actually needs?

10decoders runs PowerBuilder upgrade-path assessments that inventory breaking changes, classify stored procedures, and give a scoped, honest recommendation on 2022 R3 versus 2025 R2 before your team commits a sprint to either one.

Book a Free AI Assessment →

The Workstream Nobody Scopes Correctly: Stored Procedures to REST

PowerBuilder 2025 offers full support for modern REST APIs, with built-in objects handling HTTP communication and JSON processing, plus out-of-the-box support for OAuth 2.0, JWT tokens, and mutual TLS 1.3. PowerServer uses these web APIs to let applications retrieve or update data through RESTful services instead of connecting to the database directly, and the CRUD functionality that used to live inside a stored procedure call now returns DataWindow result sets as JSON. On paper, this reads as a straightforward technical swap.

In practice, the work runs in five steps: inventory every stored procedure called from PB code, classify each as simple CRUD or complex business logic, wrap the simple ones as REST endpoints through ASP.NET Core or the PowerServer web API, replace the embedded SQL and procedure calls in PB with HTTPClient calls, and validate DataWindow binding against the new data source. The step that gets underestimated is the second one. McKinsey and Oxford's research on large IT projects found that big initiatives run 45 percent over budget on average, and undocumented scope is a recurring driver of that overrun.

Twenty-year-old procedure code carries undocumented side effects more often than not, and if any of those procedures compute commissions or other business logic, converting them to APIs is a business logic migration wearing a technical migration's clothes. Scope it that way from the start, as a workstream separate from the PB IDE upgrade, not a subtask inside it.

Stage 1
Early-stage

Patch and Stabilize on 2022 R3

Security fixes, ADO.NET connectivity patches, and DataWindow/PowerServer bug fixes land with no breaking changes. The right move when the goal is reducing risk without committing to architecture work yet.

Stage 2
Transitional

Modernize the Runtime

The Migration Assistant flags Unicode, SOAP client, and PFC framework issues on the way to 2025 R2. REST API generation, the new compiler, and .NET 10 support land, but SOAP, PFC, and SnapDevelop dependencies all need remediation first.

Stage 3
Mature

Decouple the Data Layer

Stored procedures get inventoried, classified, and wrapped as REST endpoints on their own workstream. DataWindow binding runs against APIs instead of direct database calls, and logic that used to live inside a 20-year-old procedure finally has a name and an owner.

Before You Touch the IDE

None of the items below require a decision meeting before you can start. Most take an afternoon with access to the codebase and a stored procedure inventory.

PowerBuilder Upgrade Path Checklist

Inventory SOAP client usageFind every SOAP call in the codebase before deciding whether 2022 R3 or 2025 R2 fits the timeline.
Check PFC framework dependencyConfirm how much of the application relies on the PowerBuilder Foundation Class framework; this drives remediation scope more than any other single factor.
Audit SnapDevelop-based toolingIf any C# REST work runs through SnapDevelop, plan its replacement before committing to 2025 R2.
Count .NET 4.8 dependenciesRemoved entirely in 2025 R2; anything built against it needs a runtime plan first.
Inventory stored procedures called from PB codeThis becomes the input to the separate stored-procedure-to-API workstream, not an afterthought inside the IDE upgrade.
Classify each procedure: simple CRUD or business logicProcedures touching commissions, pricing, or calculated fields get their own review before conversion.
Confirm the target database driver pathSQL Server 2025, PostgreSQL 18, and Oracle 26ai via ADO.NET all need driver confirmation before go-live.
Decide the target state before scheduling the IDE movePatch-and-stabilize and full modernization are different projects with different budgets. Pick one before the first ticket gets created.
"The upgrade you postpone this year becomes the migration you're forced into three years from now, on someone else's timeline."

What to Do This Week

01 Inventory your breaking-change surface

Search the codebase for SOAP client calls, PFC framework usage, SnapDevelop-based REST tooling, and any component still depending on .NET 4.8. This single inventory tells you more about real upgrade cost than any vendor roadmap.

02 Classify every stored procedure PB code calls

Split the list into simple CRUD operations and procedures carrying business logic. Anything touching commissions, pricing, or calculated fields goes into its own review, not the general upgrade backlog.

03 Decide the workstream split before you write a single ticket

Treat the PB IDE upgrade and the stored-procedure-to-API conversion as two separate projects with two separate budgets and timelines. Combining them into one line item is the fastest way to blow both.

04 Pick the target state, not just the next version

Decide up front whether the goal is a low-disruption stabilization pass on 2022 R3 or a full modernization engagement on 2025 R2. The two paths need different staffing, different timelines, and different sign-off, and starting IDE work before that decision is made is how projects drift.

Let 10decoders Map Your PowerBuilder Upgrade Path

Our PowerBuilder assessment inventories breaking changes, classifies your stored procedures, and gives you a scoped recommendation on 2022 R3 versus 2025 R2 before your team commits a sprint to either one.