Receive Data Queue (QRCVDTAQ)
From MidrangeWiki
Summary
Receives an entry from a Data Queue.
For more information on this API, visit Receive Data Queue (QRCVDTAQ) API (right-click to open link in a new tab).
Prototype for the QRCVDTAQ API
DQRCVDTAQ PR EXTPGM('QRCVDTAQ') D pDQName 10A const D pDQLibr 10A const D pDQLen 5P 0 D pDQData 32767A options(*varsize) D pDQWait 5P 0 const * Optional parm group 1 D pKeyOrd 2A const options(*nopass) D pKeyLen 3P 0 const options(*nopass) D pKeyData 256A const options(*nopass:*varsize) D pSndLen 3P 0 const options(*nopass) D pSndInf 44A const options(*nopass:*varsize) * Optional parm group 2 D pRemove 10A const options(*nopass); D pBsize 5P 0 const options(*nopass); D pErrCode likeds(ApiErrC) options(*nopass:*varsize);
An RPG/LE fully free-form alternative:
//============================================================================== // IBM API to Receive an entry from a Data Queue // https://www.ibm.com/support/knowledgecenter/en/ssw_ibm_i_72/apis/qrcvdtaq.htm //============================================================================== dcl-pr IBMAPI_RecvFromDtaQ extpgm('QRCVDTAQ'); DtaQName char(10) const; DtaQLib char(10) const; DtaQBufLen packed(5:0); DtaQBuffer char(65535) options(*varsize); DtaQWait packed(5:0) const; // optional parm group 1 DtaQKeyOrd char(2) const options(*nopass); DtaQKeyLen packed(3:0) const options(*nopass); DtaQKeyData char(256) const options(*nopass:*varsize); DtaQSndLen packed(3:0) const options(*nopass); DtaQSndInf char(44) const options(*nopass:*varsize); // optional parm group 2 DtaQRemove char(10) const options(*nopass); DtaQBsize packed(5:0) const options(*nopass); DtaQErrC likeds(ApiErrC) options(*nopass:*varsize); end-pr;