Project

General

Profile

Feature #3558

SEARCH("<program_name>.r") should return a value when there is a converted 4GL program that would match in the original system

Added by Greg Shah about 8 years ago. Updated about 8 years ago.

Status:
New
Priority:
Normal
Target version:
-
Start date:
Due date:
% Done:

80%

billable:
No
vendor_id:
GCD
case_num:
version_reported:
version_resolved:
reviewer:
production:
No
env_name:
topics:

History

#1 Updated by Greg Shah about 8 years ago

Many applications implement code that checks for the existence of specific .r files ("compiled" r-code for specific program names).

A common way to do this is to use SEARCH("<program_name>.r"). On a system where there is a compiled program of that name, it would return a non-unknown path/filename. The result is usually checked against unknown and then different code paths are taken.

Sometimes this is for licensing purposes (don't run the application unless it is the compiled version). Other times it may be used to detect if parts of the application are present before trying to run them or to detect the starting program that was used.

This same problem can occur when the 4GL code searches for a .[pPwW] file. This might happen in an application that runs from source code instead of r-code.

In the converted FWD system, if there was an external procedure of the proper basename, then we probably should return some non-unknown value. The legacy path and filename to the program name would probably be the best choice. This would allow some number of these cases to work properly. Since the code can indeed be executed from a RUN statement using this same path and filename, then it would make the converted system appear consistent.

Searches for .r and for the .[pPwW] (or really for any program name that is in our name map) should be supported in this "virtual" manner.

#4 Updated by Constantin Asofiei about 8 years ago

  • % Done changed from 0 to 100
  • Assignee set to Constantin Asofiei

This was solved part of #3544 (3507a rev 11293 and 11294).

#5 Updated by Constantin Asofiei about 8 years ago

  • % Done changed from 100 to 80

This one is still opened - there is one more issue, RUN prog. is valid in 4GL as long as there is a r-code compiled prog.r file.We need to fix this both in SourceNameMapper and CallGraphWorker.resolveExternalPrograms.

Also available in: Atom PDF