I am trying to call an RPGLE service program from PHP using the PHP Toolkit. The procedure returns a data structure that includes an element of type N (indicator) and returns either *off or *on.

I am trying to figure out how to structure my return parameter in PHP to accept a value of this type and cannot find any information about sending or receiving boolean values with XMLService.

有帮助吗?

解决方案

I contacted Alan Seiden with this question and his answer fixed my issue.

You can use a 1-byte character parameter in place of a specialized indicator type. For example:

Input

$params[] = $toolkit->AddParameterChar('in', 1, 'My indicator', 'MYIND', '0');

Output

$retVal = $toolkit->AddParameterChar('out', 1, 'My indicator', 'MYIND');

The XML (for an output param) will come back like:

<return io='out' comment='My indicator'>
    <data var='MYIND' type='1A' ><![CDATA[0]]></data> 
</return>

Which yields PHP in the $result['retvals'] of:

array(1) { ["MYIND"]=> string(1) "0" }

Which will evaluate to true/false (1/0) correctly as long as you don't type check.

Thank you very much Alan!

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top