Jump to content


Photo
- - - - -

global screen calling a report


5 replies to this topic

#1 Paul Taylor

Paul Taylor

    Member

  • Members
  • PipPip
  • 20 posts
  • Gender:Male

Posted 11 January 2017 - 01:52 PM

we are running: 6.2 release 6.2.65 green screen, I have a gs trying to do a global call to a ®report function and am getting the 661 type mismatch, I came across a post that said that as of version 5 calling a non global from a global should not be an issue after version 5 is this the case in this situation.

 



#2 DARREN

DARREN

    ProIV Guru

  • Members
  • PipPipPipPipPip
  • 395 posts
  • Gender:Male
  • Location:Florida,USA

Posted 11 January 2017 - 02:09 PM

That is correct. A global function can and often is called from a screen and/or update. 
Check the parameters in the interface to the global function are the same type as the parameters they are being mapped to i.e. Alpha to Alpha and Numeric to Numeric. 
Are you passing an array to the global report?
Does the global report have the correct function security category for your operator?
 
 


Things should be made as simple as possible, but not simpler

#3 Paul Taylor

Paul Taylor

    Member

  • Members
  • PipPip
  • 20 posts
  • Gender:Male

Posted 11 January 2017 - 02:18 PM

there are no parms, but it is a global function (global screen) calling a function (report)  GLOBAL-LSCALL(PCBC04A), security should not be an issue.



#4 DARREN

DARREN

    ProIV Guru

  • Members
  • PipPipPipPipPip
  • 395 posts
  • Gender:Male
  • Location:Florida,USA

Posted 11 January 2017 - 04:17 PM

a) Ensure the global report is defined as a global report (the global switch has been set) and it has been compiled.

B) Ensure the security category on the global report is defined in the security category of the operator that is attempting to run it. 


Things should be made as simple as possible, but not simpler

#5 Paul Taylor

Paul Taylor

    Member

  • Members
  • PipPip
  • 20 posts
  • Gender:Male

Posted 11 January 2017 - 04:22 PM

the global screen is calling a non-global report.



#6 DARREN

DARREN

    ProIV Guru

  • Members
  • PipPipPipPipPip
  • 395 posts
  • Gender:Male
  • Location:Florida,USA

Posted 11 January 2017 - 05:03 PM

You cannot do that.
Make the report global (set the switch and recompile).
You can still @LFUNCT to the report from other parts of the system (frowned upon - but does work) OR create a wrapper function that calls the global report and @LFUNCT to that from other parts of the system (obviously code changes required for this implementation solution).

Alternatively, @LFUNCT to the Report. This solution will require the window to close and then exit the parent function. 
You could enhance the window to pass back a parameter like #RunReport

...and in the parent function test the parameter
//

if #RunReport =  True then

   @LFUNCT = 'PCBC04A'

  FNEXIT

endif

   


Things should be made as simple as possible, but not simpler



Reply to this topic



  


0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users