Created On: 26 January 2011
Problem:
A problem has been discovered in Micro Focus Mainframe Express Enterprise Edition 3.1 WebSync 7 or earlier. A function call in the right hand side of a UPDATE SET clause ends in sqlcode -440. However the same function is working in SELECT using the same parameter.
So for a correctly defined User Defined Function named UDF1...
* UPDATE can find but not execute function UDF1
EXEC SQL UPDATE TABLET1
SET ADDRDESCN = UDF1(:ADRDESCN)
WHERE ADDRTYPE = 20
END-EXEC.
* SELECT can find and execute function UDF1 correctly.
EXEC SQL
SELECT ADDRTYPE ,ADDRDESCN
,UDF1 (ADDRDESCN)
INTO :ADRTYPE ,:ADRDESCN, :FCTRETURN
FROM TABLET1
WHERE ADDRTYPE = 20
END-EXEC.
So for a correctly defined User Defined Function named UDF1...
* UPDATE can find but not execute function UDF1
EXEC SQL UPDATE TABLET1
SET ADDRDESCN = UDF1(:ADRDESCN)
WHERE ADDRTYPE = 20
END-EXEC.
* SELECT can find and execute function UDF1 correctly.
EXEC SQL
SELECT ADDRTYPE ,ADDRDESCN
,UDF1 (ADDRDESCN)
INTO :ADRTYPE ,:ADRDESCN, :FCTRETURN
FROM TABLET1
WHERE ADDRTYPE = 20
END-EXEC.
Resolution:
This problem was resolved in WebSync 8 for MFEEE 3.1. Go to the Support Line website to download and install the latest maintenance WebSync.
Incident #2440884
Old KB# 33091
#MFDS
#XDBsclcode-440
#EnterpriseDeveloper