1. Gerardo Barquero
  2. PowerServer 2020 or older (Obsolete)
  3. Tuesday, 10 September 2019 20:40 PM UTC

Hi all!
I got that on Appeon web when trying to retrieve.
I guess it is a problem with decimal configuration, but I cant find an answer.
Can anybody help me?
Im using Appeon 2019 with Oracle 11g and my decimal separator is ","

This is the result running on client-server

 

but this happens when running in browwer

 

as you can see that the nls_numeric_character are the same in client-server and web.

 

I also checked the registry: \HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_XE

 

Thanks everyone

GErardo

 

 

 

Attachments (1)
Chris Pollach @Appeon Accepted Answer Pending Moderation
  1. Wednesday, 11 September 2019 16:10 PM UTC
  2. PowerServer 2020 or older (Obsolete)
  3. # 1

Hi Gerardo;

   Have you tried this in AEM for the Oracle Data Source ...

 

Regards ... Chris

Comment
  1. Gerardo Barquero
  2. Wednesday, 11 September 2019 18:26 PM UTC
Hello Chris and thanks again for replay.

Yes I've tried :( I read somewhere, but I could not find the url that Appeon doesn't undertand that parameter.

Do you think it's a mistake of mine or could by a bug? I dont think I'm the only one with ",." don't you?!

  1. Helpful
  1. Chris Pollach @Appeon
  2. Wednesday, 11 September 2019 18:51 PM UTC
Very weird!

May I suggest opening up a free Support Ticket for this issue ... https://www.appeon.com/standardsupport

  1. Helpful
  1. Gerardo Barquero
  2. Wednesday, 11 September 2019 20:06 PM UTC
thanks anyway. I will :(
  1. Helpful
There are no comments made yet.
Miguel Leeuwe Accepted Answer Pending Moderation
  1. Wednesday, 11 September 2019 04:04 AM UTC
  2. PowerServer 2020 or older (Obsolete)
  3. # 2

Hola Gerardo,

Estoy de acuerdo con lo que dicen los demás, pero también podrías intentar hacer lo siguiente en el código mismo, justo después de conectarte con CONNECT;

 

string ls_sqlText

ls_sqlText = "ALTER SESSION SET NLS_NUMERIC_CHARACTERS = ~',.~'"
EXECUTE IMMEDIATE :ls_sqlText;

 

salu2

Comment
  1. Miguel Leeuwe
  2. Wednesday, 11 September 2019 04:20 AM UTC
Lo he copiado de algún código viejo que tenía.

Probablemente no necesitas especificar los "~"

Con ésto:

ls_sqlText = "ALTER SESSION SET NLS_NUMERIC_CHARACTERS = ',.'"

.. creo que también valdría.

  1. Helpful
  1. Gerardo Barquero
  2. Wednesday, 11 September 2019 16:06 PM UTC
Hola Miguel, gracias por contestar, escribo de Costa Rica.

El problema pienso está en NLS_NUMERIC_CHARACTERS pero a nivel de registro, porque a nivel de base de datos, incluso a nivel de sesión, está ",."

Cuando le digo que a nivel de registro me refiero a: \HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_XE. Si seteo esa variable en ".," el error desaparece y en algunos casos retorna datos, pero genera otro conjunto de errores, supongo que porque la base datos enteramente está ",."

Tengo 20 años de usar PB pero apenas una semana de usar PS.

Qué piensa usted que puede ser?

Saludos Miguel.
  1. Helpful
  1. Miguel Leeuwe
  2. Wednesday, 11 September 2019 16:17 PM UTC
¿qué settings tienes en el servidor en el panel de control para el usuario que corre la powerserver para windows language? a lo mejor el problema reside allí
  1. Helpful
There are no comments made yet.
Kai Zhao @Appeon Accepted Answer Pending Moderation
  1. Wednesday, 11 September 2019 00:35 AM UTC
  2. PowerServer 2020 or older (Obsolete)
  3. # 3

HI Gerardo,

 

Please note the NLS_LANG on the machine where the Powerserver located at

should be the same with the one in the database. You can go to the Register on

the server where the Powerserver is installed to check if the NLS_LANG in the

directory: HKEY_LOCAL_MACHINE>SOFTWARE>ORICAL (or

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ORACLE) is the same with the one in

database. If they are different, change it as per the one in database and

restart the machine.

 

The NLS_LANG value is in the format

[NLS_LANGUAGE]_[NLS_TERRITORY].[NLS_CHARACTERSET], it is

"AMERICAN_AMERICA.AL32UTF8" on our end.

 

Please refer to the article below for details.

https://docs.oracle.com/cd/E12102_01/books/AnyInstAdm784/AnyInstAdmPreInstall18.html

 

You could use the below SQL statement to check the parameter in the database.

SELECT * FROM nls_database_parameter;

 

Regards,

ZhaoKai

Comment
  1. Gerardo Barquero
  2. Wednesday, 11 September 2019 15:45 PM UTC
Hi, Zhao, thanks for replay.

I already tested the NLS_LANGUAGE and it returns ",." in nls_session_parameters and v$nls_parameters too.

In my opinion the problen is the NLS_NUMERIC_CHARACTERS variable but in the registry. When it is setup with ",." returns error. Instead when is ".," doesn't. But the entire db is ",." so I get other type of errors. Do you get me?



I have not HKEY_LOCAL_MACHINE>SOFTWARE>ORICAL (or HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ORACLE) \HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_XE.

Insted I have: \HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_XE. Is it the same?



Thanks;

Gerardo

  1. Helpful
There are no comments made yet.
Chris Pollach @Appeon Accepted Answer Pending Moderation
  1. Wednesday, 11 September 2019 00:00 AM UTC
  2. PowerServer 2020 or older (Obsolete)
  3. # 4

Hi Geraldo;

  Note: For the Oracle database, the NLS_LANG on the machine where the PowerServer is located should be the same as the one on the Oracle database server. Please proceed to the Registry on the server where PowerServer is installed and check if the NLS_LANG is the same value as your DB.

Regedit.exe ...

HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE   // or ...
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ORACLE    // same as the value in your database.

if they are different, change the value to the same one as in the DB server side. Then restart the IIS on the PowerServer Server.

HTH

Regards ... Chris

Comment
  1. Gerardo Barquero
  2. Wednesday, 11 September 2019 00:54 AM UTC
Hi Chris, thanks for replay, I really apreciate it.

Those values are igual on both sides.

The db parameter that are making differences is the NLS_NUMERIC_CHARACTERS, when I set it up with ".," in the registry the "input string was not in a correct format" error desappears. But, I guess, like my entire db is set with ",." I get other errors.

Is it possible setup PowerServer as ",." Chris?

Regards from Costa Rica.
  1. Helpful
  1. Chris Pollach @Appeon
  2. Wednesday, 11 September 2019 15:57 PM UTC
Do you also have a 64bit Oracle registry entry? Something like:

Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Oracle\KEY_OraDBxxxx

That would also contain an entry for "NLS_LANG"

  1. Helpful
There are no comments made yet.
Chris Pollach @Appeon Accepted Answer Pending Moderation
  1. Tuesday, 10 September 2019 21:01 PM UTC
  2. PowerServer 2020 or older (Obsolete)
  3. # 5

Hi Gerardo;

   What language (regional setting) is set on the DBMS side?

Also, try this command in the PB IDE's SQL Painter's iSQL Pane ...

select value
from nls_session_parameters
where parameter = 'NLS_NUMERIC_CHARACTERS';

 

You should see both a "." and a ","

 

Regards ... Chris

Comment
  1. Gerardo Barquero
  2. Tuesday, 10 September 2019 22:33 PM UTC


Hello Chris, great to write to you... I follow you years ago as PB programmer!

I have "," and "." in both of the two, I mean regional setting and database.

In PB it works fine, but not this way when I use a browser. I have almost 20 years of using PB but just 7 days in Appeon! :(



Regards

Gerardo
  1. Helpful
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.