PowerBuilder 2021 GA 1288 has the following known issues:
-
(Fixed in MR 1311) After you reset the DataWindowChild and the DataWindow, the application will crash when you execute the DataWindow’s InsertRow method.
You can upgrade to MR 1311 to resolve this issue or refer to the following page for solutions: https://www.appeon.com/developers/get-help/knowledgebase/application-crashes-after-resetting-datawindowchild.html.
-
(Fixed in MR 1311) In the ancestor object, if a structure contains a PowerObject array, when you assign a value to structure.powerobject[n], the same value will also overwrite the values of structure.powerobject[1] to structure.powerobject[n-1], that is, all of their values become the same as the value of structure.powerobject[n].
You can upgrade to MR 1311 to resolve this issue or refer to the following page for solutions: https://www.appeon.com/developers/get-help/knowledgebase/powerobject-array-values-structure-being-overwritten.html.
-
If the appname in the PBT file has different letter case from the appname in the source code, the PowerServer unsupported feature analysis will not work, and PowerBuilde IDE will prompt to full build the application every time when the application is loaded.
-
(Fixed in MR 1311) The Echarts demo contains redundant scripts which cause the following full build error: echarts.pbl(echarts).echarts.echarts Class Declaration.16: Warning C0088: Duplicate property name: unsupportedapierror.
You can upgrade to MR 1311 or remove the following scripts manually to resolve the error:
global type echarts from application boolean unsupportedAPIerror = true
PowerServer 2021 GA 1288 has the following known issues:
-
(Fixed in MR 1311) The PowerServer.Core package references the NuGet packages of all the supported database providers, therefore, all database DLLs will be downloaded from the NuGet website to the PowerServer C# solution, regardless of which type of database is used.
You can upgrade to MR 1311 to resolve this issue.
-
(Fixed in MR 1311) Warning MSB3270 (“There was a mismatch between …”) displays in the command window when you run the PowerServer Web APIs. It is an ignorable warning and will not affect the running of the Web APIs. The reason that it occurs is: The PowerServer.Core package references the NuGet packages of all the supported database providers, and the Informix NuGet package in it prefers the targeted processor architecture of the project be set to x64 instead of the current setting “Any CPU”. This issue will be resolved in the upcoming MR.
You can upgrade to MR 1311 to resolve this issue.
-
(Fixed in MR 1311) It happens sometimes in 64-bit environment that although .NET Core SDK (64-bit) is installed, when PowerServer Toolkit or SnapDevelop attempts to compile the PowerServer Web APIs, it throws the error “It was not possible to find any installed .NET Core SDKs”.
You can upgrade to MR 1311 to resolve this issue or refer to the following page for solutions: https://www.appeon.com/developers/get-help/knowledgebase/it-was-not-possible-find-any-installed-net-core-sdks.html.
-
(Fixed in MR 1311) When creating a database connection with SQL server in the PowerBuilder IDE > Database Configuration window, the port number must always be 1433. To use a different port number, you will have to manually change the port number in the PowerServer C# solution (ServerAPIs project > AppConfig > Applications.json) after building and deploying the PowerServer project.
You can upgrade to MR 1311 to resolve this issue.
-
The Informix DateTime type cannot be converted correctly to C# properties.
-
Data in the Informix database cannot be retrieved in the multi-language environment.
-
When DataWindow PBSELECT contains the Exist keyword with multiple parameters, syntax error may occur. Workaround: Convert the PBSELECT statement to a SQL SELECT statement.
-
If the stored procedure or function uses a temporary table, dynamic creation through SyntaxFromSQL is not supported.
-
PowerServer logging may not record the errors of DataWindow Retrieve in some scenarios.
-
A Decimal value in PowerServer will always display the decimal portion, for example, 3.000 will be displayed as 3.000 in PowerServer, and 3 in PowerBuilder.
-
A dynamically created DataWindow does not support retrieving blob values or updating the stored procedure.
-
Data type incompatibility issue may occur. For example, when the Oracle TimeStamp type is compared with the DataWindow Time type, query error may occur.
Oracle
-
Exceptions will occur when the stored procedure returns a value with precision over 28 digits, for example, dbms_random.value.
SQL Server
-
(Fixed in MR 1311) When connecting with the SQL Server database, only SQL Server Authentication is supported; Windows Authentication, Active Directory Password Authentication, and Active Directory Integrated Authentication are not supported currently.
As a workaround to support Windows Authentication, you can set the Integrated Security to True in the Database Configuration > Advanced settings when creating the cache, or modify the value of OtherOptions to "Integrated Security=True" in the generated PowerServer C# Solution > ServerAPIs project > AppConfig > Applications.json file.
You can upgrade to MR 1311 to resolve this issue, and pay special attentions to the description in Selecting a proper authentication mode.
-
(Fixed in MR 1311) Dynamic format cannot execute the revert syntax. Workaround: execute as user= 'last user'.
You can upgrade to MR 1311 to resolve this issue.
-
(Fixed in MR 1311) PowerServer Web APIs cannot connect to the SQL Server database through a named instance (for example, mycomputer\myinstance), although the database configuration in PowerBuilder can connect successfully.
You can upgrade to MR 1311 to resolve this issue.
-
When executing the stored procedure which contains a default value for the output parameter, PowerServer will fail to obtain the default value. For the code example below, PowerServer automatically uses null as the default value for the @v_out output parameter.
Create PROCEDURE [dbo].[up_pro104_001] @v_in1 varchar(10) = 'in1', @v_in2 varchar(10) = 'in2', @v_out varchar(10) = 'out' output, @v_in3 varchar(10) = 'in3' Declare lp_proc03 Procedure For up_pro104_001 ; Execute lp_proc03; fetch lp_proc03 into :ls_result;
SQL Anywhere
-
PowerServer has strict rules to the order of the parameters when executing the stored procedure. The code example below will produce an error when executed in PowerServer.
ls_tablename = "t_datatype_forupdate" ls_sql = "execute sa_reset_identity ?, new_identity=1;" prepare sqlsa from :ls_sql; execute sqlsa using :ls_tablename;
To workaround this issue, you need to list all of the parameters in order as below:
ls_sql = "execute sa_reset_identity ?, "dba", new_identity=1;"
-
TimeStamp data will fail to update in SQL Anywhere 16. Workaround: Upgrade to SQL Anywhere 17, or modify the model as below.
1. Add the following class
class DateTimeStringConvert : ValueConverter<DateTime, string> { public DateTimeStringConvert() : base(m => DateTime.Parse(m), m => m.ToString("yyyy-MM-dd hh:mm:ss.FFF")) { } }
2. Remove the SqlDefaultValue attribute from the TimeStamp columns, add the ValueConverter attribute to TypeName of the DwColumn attribute, and use the new class just added.
[DwColumn("Sales.salesorderheader", "modifieddate")] [ValueConverter(typeof(DateTimeStringConvert))] public DateTime Modifieddate { get; set; }
ASE
-
The database stored procedure cannot ignore the input parameter, no matter the input parameter has a default value or not.
Please view here.