Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

[ Image Removed |../../index.htm#lansa/rcv_from_data_queue.htm]
現在地:

...

9.177 RCV_FROM_DATA_QUEUE

Note

注意

...

 9.1

...

組み込み関数の規則     利用オプション

IBM i IBM i のデータ待ち行列、またはWindowsでエミュレートされたデータ待ち行列から1個または複数の作業リスト項目を受け取ります。データ待ち行列の詳細については、IBMの適切なマニュアルを参照してください。 注:この組み込み関数は、IBM i またはWindowsオペレーティング・システムの完全な制御下で実行されるアプリケーションでのみ使用してください。
 

Note

注意:この組み込み関数は、IBM i またはWindowsオペレーティング・システムの完全な制御下で実行されるアプリケーションでのみ使用してください。

引数

番号

タイプ

必須/任意

記述

最小長

最大長

最小小数桁数

最大小数桁数

1

A

必須

データ待ち行列の名前を指定するまたは含むリテラルまたは変数

この名前は、IBM i

この名前は、IBM i オブジェクト命名規則に従う必要があります。命名規則に従っているかどうかは、組み込み関数によってチェックされません。

1

10

 

 



2

N

必須

戻り値1で指定された作業リストの、完全な1エントリーのバイト長が指定されたリテラル、またはそのバイト長が含まれた変数

1

5

0

0

3

N

必須

データ待ち行列にデータが到達するまで、この組み込み関数が待機する時間(秒)を指定したリテラル、またはその時間を含めた変数

 - 負の値は待機時間が無制限であることを表します。

 - ゼロの値は待機する必要がないことを表します。

 - 正の値は秒数です。

この引数の詳細については、IBM提供の適切なマニュアルを参照してください。また、IBM提供プログラムのQRCVDTAQを参照してください。このプログラムは、この組み込み関数で実際に使用されています。

1

5

0

0

戻り値

番号

タイプ

必須/任意

記述

最小長

最大長

最小小数桁数

最大小数桁数

1

L

必須

指定のデータ待ち行列からエントリーを受け取る作業リストの名前

1

10

 

 



技術上の注記

  • この組み込み関数は、IBM i またはWindowsオペレーティング・システムで使用することができます。別のオペレーティング・システムでのデータ待ち行列の使用については、SND_TO_DATA_QUEUE組み込み関数に関する技術上の注記を参照してください。

PICKLISTと呼ばれるデータ待ち行列から顧客番号とパーツ番号を受け取り、その詳細を印刷します。エントリーがデータ待ち行列にあることがすでにわかっていると仮定します。 PICKLISTと呼ばれるデータ待ち行列から顧客番号とパーツ番号を受け取り、その詳細を印刷します。エントリーがデータ待ち行列にあることがすでにわかっていると仮定します。 

     DEF_

...

LIST  NAME(#PICK)

...

 FIELDS(#CUSTNO #PARTNO) TYPE(*WORKING)

...

 ENTRYS(1)

...


         (where #CUSTNO is defined in the dictionary as a signed 5,0 number and #PARTNO is defined in the dictionary as a packed 7,0 number)
USE       BUILTIN(RCV_FROM_DATA_QUEUE)

...

 WITH_ARGS('PICKLIST'

...

 9 0) TO_GET(#PICK)
GET_

...

ENTRY NUMBER(1)

...

 FROM_LIST(#PICK)

...


EXECUTE   SUBROUTINE(PRINT_PICK)

...

永久ループの中で、顧客番号とパーツ番号の詳細の到着を待ち、到着時に1つずつ受け取ります。到着した時に各詳細を印刷します。 永久ループの中で、顧客番号とパーツ番号の詳細の到着を待ち、到着時に1つずつ受け取ります。到着した時に各詳細を印刷します。 

     DEF_

...

LIST  NAME(#PICK)

...

 FIELDS(#CUSTNO #PARTNO) TYPE(*WORKING)

...

 ENTRYS(1)
BEGIN_LOOP

...


USE       BUILTIN(RCV_FROM_DATA_QUEUE)

...

 WITH_ARGS('PICKLIST'

...

9 -1)

...

 TO_GET(#PICK)
GET_

...

ENTRY NUMBER(1)

...

 FROM_LIST(#PICK)

...


EXECUTE   SUBROUTINE(PRINT_PICK)
END_LOOP

...

永久ループの中で、顧客番号とパーツ番号の詳細の到着を待ち、到着時に詳細(最大5個までのブロック単位)を受け取ります。各ブロックが到着した時にそれを印刷します。 を受け取ります。各ブロックが到着した時にそれを印刷します。 

     DEF_

...

LIST   NAME(#PICK)

...

 FIELDS(#CUSTNO #PARTNO) TYPE(*WORKING)

...

 ENTRYS(5)

...

 COUNTER(#LISTCOUNT)
BEGIN_LOOP

...


  USE        BUILTIN(RCV_FROM_DATA_QUEUE)

...

 WITH_ARGS('PICKLIST'

...

9 -1)

...

 TO_GET(#PICK)

...


  BEGIN_LOOP USING(#I)

...

 FROM(1)

...

 TO(#LISTCOUNT)

...


    GET_ENTRY  NUMBER(#I)

...

 FROM_LIST(#PICK)

...


   EXECUTE    SUBROUTINE(PRINT_PICK)

...


  END_LOOP
END_LOOP

...

...

Note

注意:投入元ルーチンが、このデータ待ち行列に、顧客番号とパーツ番号のペアーを、実際に1、2、3、4、または5エントリー投入する場合、この組み込み関数は正常に動作します。しかし、ファンクションが、5個より多くのエントリーを1つのデータ待ち行列エントリーに投入した場合、このアプリケーションはエラーになります。#PICK作業リストは最大で5エントリーまでしか含められないためです。