Question How To Pass Params To A Qad's Explore View?

Edgar Chinchilla

New Member
Hi PT!

Please help me! I need to know how can I pass params from someprogram.p to an explore view used by the someprogram.p itself.

To be more especific, in someprogram.p I ask for a value (var1), then I ask for another value, but this last has a "seach icon" to select the value from a QAD explore view.

In the QAD explore view I need to get the entered value for var1 in someprogram.p to make a filter. I've tried may things but still no luck :-(

Could you help me?

Edgar Chinchilla

New Member
An admin please fix the post title from "Hot" to "How", thanks.

STD-0298 Use gpbrparm.i to pass parameters to lookups

Lookups created via Browse Maintenance often need runtime data to provide the proper filter for the query.

Passing data from the Progress program to the lookup is limited because the lookup is not run directly from the

Progress program but is run via a separate mechanism. Often the lookup will need to filter on a value in one of the

MFG/PRO global variables (global_part, global_site etc). This is fine and these can be used directly in the lookup.

However, other times the lookup will need data not in any of the global variables(i.e. values of current screen fields

or values retrieved from database records). For these cases use gpbrparm.i.

The following list of parameters can be set in the maintenance program via gpbrparm.i. These parameters can be

used directly in the query of the lookup.

Character parameters:






Decimal parameters:




Date parameters:



Logical parameter:


Any number of these can be set for a particular lookup by calling gpbrparm.i once for each parameter.

The usage of gpbrparm.i is as follows:

{gpbrparm.i &browse=<lookup-name>; &parm=<param-name>



<lookup-name> is the name of the lookup program

<param-name> is the name of one of the parameters listed above

<param-value> is the value you wish to assign to the parameter - this can be a field, variable or literal string.

The right example shows proper code usage of gpbrparm.i. The wrong example illustrates misuse of global

variables as lookup parameters. It is OK to use global variables in lookups but they should not be forced to take on

data that they were not intended for. In these cases gpbrparm.i should be used instead.


/* Setting a parameter to a program variable */

{gpbrparm.i &browse=mglu066.p &parm=c-brparm1 &val=mfguser}

/* Setting a parameter to a literal value */

{gpbrparm.i &browse=mglu066.p &parm=c-brparm1 &val=""operator""}


Edgar Chinchilla

New Member
STD-0298 Use gpbrparm.i to pass parameters to lookups...
Thanks @Marco Mendoza for your help, I finally end using system's empty global vars to pass the needed params because the "gpbrparm.i" don't work for me.

For future questions, here is the oficial documentation about the "gpbrparm.i".

FYI: I've tried the gpbrparm.i using lu, br, and nothing, my browse name is xx030, then I've tried with xxlu030.p, xxbr030.p, xx030.p but no luck. In the maintenance, mgdlfhmt.p (QAD 2012.0.80.13, Windows 10 RS1 x64) I have defined the xx030 as xxbr030.p and it works, but the library still don't send the param.