Kbase 20526: The file extension needs to be included in calls in v. 9.1B
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  16/10/2008 |
|
Status: Verified
FACT(s) (Environment):
Progress 9.1B
Progress 9.1C
SYMPTOM(s):
** The length argument value must be greater or equal to -1. (83)
Using a link / URL or calls to procedures that does not use the file extension.
CHANGE:
Upgrading to versions 9.1B
CAUSE:
In older versions of Progress than 9.1B it was possible to use calls to procedures excluding the file extension (.w, .p, .r, .html, .htm). In version 9.1B the file extension is needed if not you get the error:
** The length argument value must be greater or equal to -1. (83)
This will only happen if developers make use of ADM2 technology, both in Webspeed and SmartObjects applications. The cause is the support Progress added for the ObjectName property of each SmartObject for the SBO functionality. In the Main Block of smart.i you will find code that assigns each object's ObjectName property with a default value. The last line in this compound ASSIGN statement is causing the problem.
FIX:
The workaround is to copy src\adm2\smart.i from the original Progress installation directory to a similar structure in the application's working directory (\src\adm2\smart.i). Then change the line of code mentioned before into:
cObjectName = ENTRY(1, SUBSTR(cObjectName, iStart), ".":U).
Then recompile your SmartObjects and everything works fine again.