1. Daryl Foster
  2. PowerBuilder
  3. Tuesday, 25 September 2018 06:06 AM UTC

Hi everyone,

After almost 20 years we've decided to migrate all our applications from ASE to MS SQL Server.  We've been able to use SQL Server Migration Assistant to migrate the database and I'm looking at updating my Powerbuilder code to work with SQL Server.  It looks like my main job is going to be converting all the *= syntax I've used over the years. But I'm wondering if anyone who has migrated their Powerbuilder applications from ASE to MS SQL Server in the past has any tips, tricks or advice for me?

We are currently using Appeon PB 2017 R2 and ASE 16.  We are migrating to SQL Server 2017

Thanks.

Ramendra Singh Accepted Answer Pending Moderation
  1. Friday, 31 March 2023 12:19 PM UTC
  2. PowerBuilder
  3. # 1

Hi All,

We are currently migrating our PowerBuilder application from ASE to RDS SQL Server 2019 and there is one very tricky issue I encounters.

When I retrieve/open a datawindow it's prompt me with "char_lenght" function error but there are no such function I am using inside this DW. 

To test it out, I created a sample project with the same connection parameters and exported/imported the same datawindow into the sample project and it works without any issue. 

Checking if someone encountered a similar issue.

 

  • Current PB version 2017R3 using with ASE 16.0
  • Migrated PB version 2019R3 with RDS SQL Server. 

 

DW Error when retrieving  

 

Successfully retrieved in sample app

 

Thanks

Ramendra 

 

 

 

Comment
  1. Armeen Mazda @Appeon
  2. Friday, 31 March 2023 21:43 PM UTC
Which database driver and version are you using? What is your DB connection string?
  1. Helpful
  1. Daryl Foster
  2. Sunday, 2 April 2023 23:11 PM UTC
Hi Ramendra, does your datawindow have a dropdown datawindow on it? If it has a dropdown datawindow that uses the char_length function it could auto retrieve and give you that error. Have you searched your Powerbuilder code to find char_length in your library?
  1. Helpful 3
  1. Ramendra Singh
  2. Monday, 3 April 2023 05:39 AM UTC
Hi Daryl, Thank you, yes, there was a dropdown datawindow with char_lenght() function used. I did searched earlier but not sure why it didn't bring the result earlier.



Regards

Ramendra
  1. Helpful
There are no comments made yet.
Chris Pollach @Appeon Accepted Answer Pending Moderation
  1. Tuesday, 25 September 2018 14:01 PM UTC
  2. PowerBuilder
  3. # 2

Hi Daryl;

   If your DWO's have a PBSELECT type of SQL in them (aka saved in "Graphics mode") - then the run-time SQL will follow the newer outer join syntax automatically by adding OJSyntax=ANSI_Escape to your DBParm field of the App's Transaction Object.

   However, if you saved your DWO's using the SQL setting in "Syntax Mode" - then the SQL in those objects will be treated "as is" at run-time (basically WYSIWYG). The same for in-line SQL. The only way to fix these DML statements is to manually wade through them and hand code the changes.

  This utility (SqlXtract) could identify all your DWO's that work in Syntax vs Graphic mode. It can also reconstitute the working DML and export it to text files (if that helps) to help with the conversion using external SQL tools.

Regards ... Chris

Comment
  1. Daryl Foster
  2. Thursday, 27 September 2018 00:48 AM UTC
Thanks Chris
  1. Helpful 1
There are no comments made yet.
  • Page :
  • 1


There are no replies made for this question yet.
However, you are not allowed to reply to this question.