This method is used for passing a parameter by reference either to JavaScript functions or with
...
Parameter
- "fieldName" - The name of the field as a string to pass. The field must already be defined using pjs.define() .
Note |
---|
...
Only one field can be passed to pjs.refParm() at a time. |
Tip |
---|
When using pjs.call(), the use |
...
of pjs.refParm() is optional. When a declared field is passed as a parameter |
...
to pjs.call(), it is automatically converted to |
...
use pjs.refParm() internally. The explicit use |
...
of pjs.refParm() may be more efficient in some cases |
...
Parameters
...
. |
...
Return Value
An object that is used to pass the value by reference.
RPG Equivalent
...
: PARM
Examples
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
// Define fields using pjs.define().
pjs.define("myField1", {type: "packed decimal", length: 7, decimals: 2});
pjs.define("myField2", {type: "packed decimal", length: 8, decimals: 3});
pjs.define("myField3", {type: "packed decimal", length: 12, decimals: 5});
// Call using default parameter wrap, pjs.refParm().
pjs.call('mypgm1', myField1);
// Call using explicit parameter wrap, pjs.refParm().
pjs.call('mypgm1', pjs.refParm("myField1")); |
Code Block | ||||
---|---|---|---|---|
|
...
| |||
// Define fields using pjs.define().
pjs.define("myField1", {type: "packed decimal", length: 7, decimals: 2});
pjs.define("myField2", {type: "packed decimal", length: 8, decimals: 3});
pjs.define("myField3", {type: "packed decimal", length: 12, decimals: 5});
// Call using default parameter wrap, pjs.refParm().
pjs.call('mypgm2', myField1, myField2, myField3);
// Call using explicit parameter wrap, pjs.refParm().
pjs.call('mypgm2', pjs.refParm("myField1"), pjs.refParm("myField2"), pjs.refParm("myField3")); |
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
// Define function double() that will receive a by reference parameter to multiply by two.
function double(number) {
// Define temporary field number as type float.
pjs.define("number", { type: 'float', length: 8, refParm: number });
// Double value of number.
number = number * 2;
// Because the field is by-reference, there is no need for a return statement.
}
// Define myNum field as type float.
pjs.define("myNum", { type: 'float', length: 8, initValue: 10 });
// The initial value of 10 of myNum is changed to 20 after the function executes.
double(pjs.refParm("myNum")); |