Consultor Eletrônico



Kbase P125182: The STRING ROWID comparison fails with MS SQL Server DataServer
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   4/29/2008
Status: Unverified

FACT(s) (Environment):

OpenEdge 10.1B
MS SQL DataServer
Windows NT 32 Intel/Windows 2000

SYMPTOM(s):

The STRING ROWID comparison fails with MS SQL Server DataServer

The STRING ROWID comparison does not work with MS SQL Server DataServer

The failing query is shown below:

/* sprots2000 Database is used to demonstrate the issue */

/* The following query works with OE10.0B but not with OE10.1B or OE10.1B01 or OE10.1B02 */

DEF VAR ch AS CHAR NO-UNDO.
FIND FIRST customer.
ch = string(ROWID(customer)).

FOR EACH Customer WHERE STRING(ROWID(Customer)) = ch:
ASSIGN Customer.address2 = "TestOne".
MESSAGE "Test One succeeded" VIEW-AS ALERT-BOX.
END.

No error is displayed

CAUSE:

Bug# OE00155226

FIX:

Upgrade to OE10.1C

or,

use similar to the following workaround to address the issue:


/* sprots2000 Database is used to demonstrate the issue */

DEF VAR ch AS CHAR NO-UNDO.
FIND FIRST customer.
ch = string(ROWID(customer)).

FOR EACH Customer WHERE ROWID(Customer) = TO-ROWID(ch):
ASSIGN Customer.address2 = "TestTwo".
MESSAGE "Test Two succeeded" VIEW-AS ALERT-BOX.
END.