Character set ISO88591 on HP Neoview

Hi,

A DBA has set up HP Neoview tables with the ISO88591 character set, rather than unicode. Not sure why they did it…but apparently it is a done deal.

Because of this, literals need to have to be concatenated with _ISO88591 string…so your traditional where clause would need to go
from:
where src_actv_flg = ‘Y’
to:
where src.src_actv_flg = _ISO88591’Y’

The problem is when we use the IN operator with @prompt. We have no control over the number of values a user can enter. Apparently HP fixed this issue in their driver HP ODBC 2.4. HP ODBC isn’t currently supported driver (2.3.1 is).

Anyone see anything like this?

Thanks,

Steve


SteveBickerton :canada: (BOB member since 2002-08-15)

Steve, could you not, maybe, do something with a customised list of values and allow users just to select from that?

Or hardcode (do not re-genaterate) the SQL behind the LOV concatenating this code when the data is selected?

Obviously, both methods would mean no freeform text, in the prompt, but select from your LOV only.

Messy, I know and it depends on how many “IN” prompts you have…


Mak 1 :uk: (BOB member since 2005-01-06)

HP is aware of the issue and will release a new driver which will solve the problem. The driver will do the translation so you won’t need to do crazy concatenations for LOVs. This will be HP ODBC 2.4.1 apparently. IN the meantime, we’ve dropped the ISO tables and gone back to unicode. :lol:

I tried playing with the lov, but each lov would have to passed as _ISO88591’Y’.


SteveBickerton :canada: (BOB member since 2002-08-15)

The obvious and sensible solution to the “problem”… :wink: .


Mak 1 :uk: (BOB member since 2005-01-06)