Versions Compared

Key

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

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

...

7.75.3 IF_STATUS の使用例

例1:IF例1:IF_STATUSコマンドを使用して、「見つからない」状態のレコードをトラップし、ファンクションを異常終了してエラーを発行します。 FETCH     FIELDS

   FETCH     FIELDS(#NAMEINFO)

...

 FROM_FILE(NAMES)

...

 WITH_KEY(#CUSTNO)
IF_

...

STATUS IS_NOT(*OKAY)

...


ABORT     MSGTXT('Customer name details not found')
ENDIF

これは以下の例と同じです。 

   FETCH     FIELDS(#NAMEINFO) FROM_FILE(NAMES)

...

 WITH_KEY(#CUSTNO)

...


IF        COND('

...

#IO$STS *NE OK')
ABORT     MSGTXT('Customer name details not found')
ENDIF


例2:上記の例を、(レコードが見つかった場合は)詳細を表示し、それ以外の場合はファンクションを異常終了するよう変更します。 

   FETCH     FIELDS(#NAMEINFO) FROM_FILE(NAMES)

...

 WITH_KEY(#CUSTNO)
IF_

...

STATUS IS(*OKAY)

...


DISPLAY   FIELDS(#NAMEINFO)

...


ELSE
ABORT     MSGTXT('Customer name details not found')
ENDIF

これは以下の例と同じです。 

   FETCH     FIELDS(#NAMEINFO) FROM_FILE(NAMES)

...

 WITH_KEY(#CUSTNO)

...


IF        COND('

...

#IO$STS =

...

 OK')

...


DISPLAY   FIELDS(#NAMEINFO)

...


ELSE
ABORT     MSGTXT('Customer name details not found')
ENDIF