ページの先頭行へ戻る
MeFt V11.0 ユーザーズガイド
FUJITSU Software

7.3.5 入力処理

【提供インタフェース】

  

機能説明
画面機能

  オペレータからの入力を項目群または項目単位に受け取ります。利用者プログラムはレコードデータ項目の内容を参照することにより、オペレータからの入力データを獲得できます。

  ディスプレイ機能の入力が完了すると、利用者プログラムはアテンション情報の獲得で入力完了の要因となったアテンション情報を獲得できます。

  使用する定義体名を定義体名とレコードデータ領域長の設定、または定義体名の設定で設定した後に、当機能を使用します。

印刷機能

  多目的プリンタ機能を利用して、多目的プリンタ装置からの入力をバーコード項目、またはID項目に受け取ります。利用者プログラムはレコードデータ項目の内容を参照することにより、多目的プリンタ装置からの入力データを獲得できます。

  プリンタ装置の制御(ps_control_printer)で用紙の給紙を行った直後に、当機能を使用します。

[形式]

PSINT PSFUNCTION ps_read(
    PSFILE psfile,
    PSUSHORT mode,
    PSPSTR pGroup,
    PSPVOID pRecord,
    PSPVOID pAttr);

[パラメタ]

psfile

:

オープン処理で獲得した表示ファイル識別子を指定します。

mode

:

入力の種類を指定します。値とその意味は以下のとおりです。

PS_READ_NORMAL

:

通常入力を行います。

PS_READ_CLEAR

:

全画面消去入力を行います。

PS_READ_NOERASE

:

非消去入力を行います。非消去入力を指定する際には、入力制御方法として以下の値も同時に指定できます。

PS_READ_ALARM

:

アラームを鳴らします。

PS_READ_CHANGED

:

変更通知を行います。

組み合わせパターンを以下に示します。

PS_READ_NOERASE

PS_READ_NOERASE|PS_READ_ALARM

PS_READ_NOERASE|PS_READ_CHANGED

PS_READ_NOERASE|PS_READ_ALARM|PS_READ_CHANGED

プリンタ機能で指定できる値は、PS_READ_NORMALだけです。

pGroup

:

入力の対象とする項目群名または項目名を指定します。項目群名または項目名には、先頭から最大6文字までのNULLで終わる文字列を指定します。

pRecord

:

レコードデータ領域を指すポインタを指定します。

pAttr

:

リザーブです。必ず0を指定します。

[使用例]

ウィンドウ情報ファイル"DSPFILE"を使って画面をオープンし、オープンした画面に定義体"SAMPLE"を表示させた後に、オペレータからの入力を受け取ります。入力の対象とする項目群には"@ALLF"を指定し、すべての入力項目を対象とします。

PSFILE psfile;
SAMPLE samp;
PSUSHORT Error; 
psfile = ps_open("DSPFILE", PS_OPEN_DSP, &Error, 0);
~ レコードデータ領域 data へのデータ設定 ~
ps_set_formatsize(psfile, "SAMPLE", s_SAMPLE);
ps_write(psfile, PS_WRITE_NORMAL, "@ALLF", &samp, 0);
ps_read(psfile, PS_READ_NOERASE, "@ALLF", &samp, 0); 
~ 中略 ~
ps_close(psfile, &Error);
[診断]

  正常終了時には0が返されます。エラー発生時には1または2が返されます。psfileの指定に誤りがある場合には2が、それ以外のエラーの場合には1が返されます。1が返された場合には通知コードの獲得通知コードを獲得してエラー原因を識別できます。

  処理中にオペレータがタスクリストからの終了を選択すると-1が返されます。その場合、利用者プログラムは必ずプログラムを終了してください。

[形式]

READ ファイル名.

[パラメタ]

PROCESSING MODE句

:

入力の種類を指定します。値とその意味は以下のとおりです。

空白

:

通常入力を行います。

CL

:

全画面消去入力を行います。

NE

:

非消去入力を行います。

AL

:

アラームを鳴らして、非消去入力を行います。

NI

:

変更通知を行い、非消去入力を行います。

AI

:

変更通知を行い、アラームを鳴らして、非消去入力を行います。

プリンタ機能で指定できる値は、"空白"だけです。

GROUP句

:

入力の対象とする項目群名または項目名を指定します。

[使用例]

定義体SAMPの項目群S001を表示し、オペレータからの入力を受け取ります。入力の対象とする項目群には"@ALLF"を指定し、すべての入力項目を対象とします。

MOVE "SAMP" TO DSP-FORMAT.
MOVE "  " TO DSP-MODE.
MOVE "S001" TO DSP-GROUP.
WRITE SAMP.
MOVE "@ALLF" TO DSP-GROUP.
READ ディスプレイファイル.
[診断]

  FILE STATUS句に通知コードが格納されます。

  なお、エラーには入力データエラーも含まれています。以下の通知コードは入力データエラーです。

MEFD_RC_LFLD(47)MEFD_RC_ALL(48)MEFD_RC_NEC(49)MEFD_RC_MINI(4A)MEFD_RC_VALID(4B)MEFD_RC_LIMIT(4C)MEFD_RC_JPN(52)MEFD_RC_ANK(53)MEFD_RC_NUM(54)MEFD_RC_NSIGN(55)MEFD_RC_NPOINT(56)MEFD_RC_REDUN(57)MEFD_RC_SINP(58)

  上記の通知コードの場合、項目の状態の参照を使って、入力データエラーのある項目を知ることができます。