Kbase P97176: Errors 9190 and 4391when copying data from one MEMPTR into another MEMPTR variable
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  10/16/2008 |
|
Status: Verified
FACT(s) (Environment):
Progress 9.1x
OpenEdge 10.0x
SYMPTOM(s):
Cannot copy more than 32K from one MEMPTR variable into another MEMPTR variable
Using PUT-BYTES and GET-BYTES functions, get the following errors:
Attempt to exceed maximum size of a RAW variable. (9190)
Unable to evaluate expression with UNKNOWN value in argument. (4391)
CAUSE:
Because the return value of GET-BYTES is passed immediately into the PUT-BYTES function, it is unable to determine if it should return RAW or MEMPTR.
Therefore, it will default to RAW, which is subject to the 32K limit.
FIX:
Use an intermediate MEMPTR variable to ensure GET-BYTES returns the correct datatype.
In OpenEdge 10, it's also possible to treat the MEMPTRs as large objects, and use the COPY-LOB statement to copy data from one MEMPTR to the other.