READ
READコマンドは、現在開いているドキュメントの指定したワークシートのセル範囲を作業リストに読み込む場合に使用されます。各セル値の末尾のブランクは切り詰められます。
READコマンドの前に読み込みモードでOPENコマンドを使用してください。
READ ----------- SHEET ----------- sheet1 ---------------------->
値
>-- R1C1 ------------ 1,1 ------------------------->
n,n
>-- R2C2 ------------ 0,0 ------------------------->
n,n
>-- IGNORE --------- *NONE ------------------------>
*EMPTY
>-- SCALE ----------値------------------------>
>-- NUMBERFORMAT --- *NONE ------------------------|
*DEFAULT
*CLIENT
*USERAGENT
値
キーワード
SHEET |
特定のシート名を入力できます。シート名を入力しない場合は、省略値sheet1が使用されます。 |
R1C1 |
読み込む特定の行および列を入力します。値を指定しない場合、省略値の1,1が使用されます。 |
R2C2 |
R2C2キーワード値には、行と列の値に0を使用できます。 読み込み処理を行う特定の最終行および最終列を入力します。値を指定しない場合、省略値の0,0が使用されます。この場合、シートの最後まで読み込みます。 注:現在、R2C2キーワードの列値は無視されます。値を0にするか、指定しません。 |
IGNORE |
省略値*NONEの場合、すべてのエントリーが処理されます。代替オプション*EMPTYの場合、空のエントリーは無視されます。 空のエントリーとは、リスト・エントリーを構成するすべてのセル値が空の文字列値の場合です。 |
SCALE |
このオプションのキーワードは、一般的な数字形式の数値セルで使用される10進法を指定します。省略値は4です。 |
NUMBERFORMAT |
このオプションのキーワードは、小数区切り文字が小数点文字「.」ではない数字文字列を処理します。 詳細については、「NUMBERFORMAT」を参照してください。 |
例
RDML
USE BUILTIN(JSM_COMMAND) WITH_ARGS('READ SHEET(PARTS) SERVICE_LIST(LINENUM,PARTNUM,PARTDSC,PARTAMT,PARTQTY)') TO_GET(#JSMSTS #JSMMSG #ORDLIST)
または
USE BUILTIN(JSM_COMMAND) WITH_ARGS('READ SHEET(PARTS) R1C1(10,3) R2C2(20,0) SERVICE_LIST(LINENUM,PARTNUM,PARTDSC,PARTAMT,PARTQTY)') TO_GET(#JSMSTS #JSMMSG #ORDLIST)
RDMLX
use builtin(jsmx_command) with_args(#jsmhdle 'read sheet(parts)') to_get(#jsmsts #jsmmsg #ordlist)
または
use builtin(jsmx_command) with_args(#jsmhdle 'read sheet(parts) r1c1(10,3) R2C2(20,0)') to_get(#jsmsts #jsmmsg #ordlist)
ILE RPG
* NB:This MUST match the structure xml provided to the JSM Server!
d xllist ds occurs(xlocur)
d linenum 7s 0
d partnum 7a
d partdsc 30a
d partamt 9s 2
d partqty 7s 0
d xlocur c const(999)
d xlsize c const(%size(xllist))
d xlcount s 9p 0 inz(0)
c eval jsmcmd = 'READ'
c + ' SHEET(ORDERLINES) R1C1(5,3)'
c + ' SERVICE_STRUCTURE(XL.XLOrderLine)'
c + ' OCCURS(' + %char(xlocur) + ')'
c + ' SIZE(' + %char(xlsize) + ')'
c eval %occur(xllist) = 1
c eval bytelength = xlocur * xlsize
c callp p_jsmcmdx(jsmcmd:xllist:bytelength:
c jsmsts:jsmmsg)
c if jsmsts = 'OK'
c callp p_jsmbytelngth(bytelength)
c if (bytelength > 0)
c and (bytelength <= xlocur * xlsize)
c callp p_jsmbyterecv(xllist)
c eval xlcount = bytelength / xlsize
c endif
c endif