The syntax for the IXLCACHE REQUEST=READ_DATA is as follows:
![Read syntax diagram](./c.gif)
main diagram
.-,ASSIGN=YES-.
>>-IXLCACHE--b--REQUEST=READ_DATA--+-------------+-------------->
'-,ASSIGN=NO--'
.-,OLDNAME=NO_OLDNAME-.
.-,REGUSER=YES-+---------------------+-,VECTORINDEX=vectorindex-.
| '-,OLDNAME=oldname----' |
>--+---------------------------------------------------------------+-->
| .-,OLDNAME=NO_OLDNAME-----------------------. |
'-,REGUSER=NO-+-------------------------------------------+-----'
'-,OLDNAME=oldname-,VECTORINDEX=vectorindex-'
.-,RETURNDATA=YES-.
>--+-----------------+--,CONTOKEN=contoken---------------------->
'-,RETURNDATA=NO--'
.-,REQID=NO_REQID-. .-,OLDNAME=NO_OLDNAME-.
>--+-----------------+--,NAME=name-+---------------------+------>
'-,REQID=reqid----' '-,OLDNAME=oldname----'
>--+--------------------------------------------------+--------->
+-,BUFLIST=buflist-| parameters-1 |----------------+
'-,BUFFER=buffer-| parameters-2 |-,BUFSIZE=bufsize-'
.-,ADJAREA=NO_ADJAREA-.
>--+---------------------+--,STGCLASS=stgclass------------------>
'-,ADJAREA=adjarea----'
>--,VECTORINDEX=vectorindex------------------------------------->
.-,MODE=SYNCSUSPEND-----------------------.
>--+-----------------------------------------+------------------>
+-,MODE=SYNCECB-,REQECB=reqecb------------+
| .-,REQDATA=NO_REQDATA-. |
+-,MODE=SYNCEXIT-+---------------------+--+
| '-,REQDATA=reqdata----' |
+-,MODE=SYNCTOKEN-,REQTOKEN=reqtoken------+
+-,MODE=ASYNCECB-,REQECB=reqecb-----------+
| .-,REQDATA=NO_REQDATA-. |
+-,MODE=ASYNCEXIT-+---------------------+-+
| '-,REQDATA=reqdata----' |
'-,MODE=ASYNCTOKEN-,REQTOKEN=reqtoken-----'
.-,ANSAREA=NO_ANSAREA-------------.
>--+---------------------------------+--+------------------+---->
'-,ANSAREA=ansarea-,ANSLEN=anslen-' '-,RETCODE=retcode-'
>--+------------------+--| main-2 |----------------------------><
'-,RSNCODE=rsncode-'
![Read syntax diagram](./c.gif)
main-2
.-,PLISTVER=IMPLIED_VERSION-.
>>-+---------------------------+-------------------------------->
+-,PLISTVER=MAX-------------+
'-,PLISTVER=plistver--------'
.-,MF=S--------------------------.
>--+--------------------------------+--------------------------><
| .-,0D-----. |
+-,MF=(L-,mfctrl-+---------+-)---+
| '-,mfattr-' |
| .-,COMPLETE-. |
'-,MF=(E-,mfctrl-+-----------+-)-'
'-,COMPLETE-'
![Read syntax diagram](./c.gif)
parameters-1
.-,BUFADDRTYPE=VIRTUAL,PAGEABLE=YES,BUFSTGKEY=CALLERS_KEY,BUFALET=NO_BUFALET--------.
>>-+-----------------------------------------------------------------------------------+-->
| .-,BUFALET=NO_BUFALET-. .-,BUFADDRSIZE=31-. |
+-,BUFADDRTYPE=VIRTUAL-| parameters-2 |-+---------------------+-+-----------------+-+
| '-,BUFALET=bufalet----' '-,BUFADDRSIZE=64-' |
| .-,BUFADDRSIZE=31-. |
'-,BUFADDRTYPE=REAL-+-----------------+---------------------------------------------'
'-,BUFADDRSIZE=64-'
>--,BUFNUM=bufnum--,BUFINCRNUM=bufincrnum----------------------><
![Read syntax diagram](./c.gif)
parameters-2
.-,PAGEABLE=YES,BUFSTGKEY=CALLERS_KEY------.
>>-+------------------------------------------+----------------><
| .-,BUFSTGKEY=CALLERS_KEY-. |
+-,PAGEABLE=YES-+------------------------+-+
| '-,BUFSTGKEY=bufstgkey---' |
'-,PAGEABLE=NO-----------------------------'
Note: If you specify MODE=SYNCTOKEN or MODE=ASYNCTOKEN, then you must
also specify ANSAREA=ansarea,ANSLEN=anslen.