Versions Compared

Key

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

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

...

OV_QUERY_SYS_INFO

Note

...

注意: 組み込み関数の規則

...

クエリー・システム構成情報 

Info

この組み込み関数は、アプリケーションへの影響を考慮した上でユーザーの責任において使用してください。明示的か暗黙的かを問わず、いかなる保証もありません。免責事項全文を参照してください。

ファンクション番号:

993

必要なDLL:

U_BIF993.DLL

...

各製品の対応

Visual LANSA for Windows

使用可

Visual LANSA for Linux

使用不可

LANSA/AD

使用不可

...

引数

番号

タイプ

必須/任意

説明

最小長

最大長

最小小数桁数

最大小数桁数

1

A

必須

照会する情報

以下のいずれかの値として渡します。

以下のいずれかの値として渡します。 

SYS_

DRIV

DRIV 
SYS_DIR
SYS_DIR_EXECUTE
SYS_DIR_SOURCE
SYS_DIR_OBJECT
PART_DRIV
PART_DIR
PART_DIR_EXECUTE
PART_DIR_SOURCE
PART_DIR_OBJECT
TEMP_DRIV
TEMP_DIR
DRIV_LIST

1

256

 

 

...



戻り値

番号

タイプ

必須/任意

説明

最小長

最大長

最小小数桁数

最大小数桁数

1

A

必須

返される情報

SYS_

DRIV  LANSAシステムが存在するドライブが、ドライブ文字とコロンとして返されます

DRIV  LANSAシステムが存在するドライブが、ドライブ文字とコロンとして返されます(例:C:、D:、E

(smile)

:)

SYS_

DIR  LANSAシステムが存在するルート・ディレクトリが返されます

DIR  LANSAシステムが存在するルート・ディレクトリが返されます(例:D:\X_WIN95\X_LANSA)。

SYS_DIR_

EXECUTE  LANSAシステムのEXECUTEオブジェクトが存在するディレクトリが返されます

EXECUTE  LANSAシステムのEXECUTEオブジェクトが存在するディレクトリが返されます(例:D:\X_WIN95\X_LANSA\EXECUTE)。

SYS_DIR_

SOURCE  LANSAシステムのSOURCEオブジェクトが存在するディレクトリが返されます

SOURCE  LANSAシステムのSOURCEオブジェクトが存在するディレクトリが返されます(例:D:\X_WIN95\X_LANSA\SOURCE)

。 

SYS_DIR_

OBJECT  LANSAシステムのOBJECTオブジェクトが存在するディレクトリが返されます

OBJECT  LANSAシステムのOBJECTオブジェクトが存在するディレクトリが返されます(例:D:\X_WIN95\X_LANSA\OBJECT)。

PART_

DRIV  LANSAシステムが存在する現在の区画のドライブが、ドライブ文字とコロンとして返されます

DRIV  LANSAシステムが存在する現在の区画のドライブが、ドライブ文字とコロンとして返されます(例C:、D:、E

(smile)

:)

PART_

DIR  システムが存在する現在の区画のルート・ディレクトリが返されます

DIR  システムが存在する現在の区画のルート・ディレクトリが返されます(例:D:\X_WIN95\X_LANSA\X_DEM)。

PART_DIR_

EXECUTE  EXECUTEオブジェクトが存在する現在の区画のディレクトリが返されます

EXECUTE  EXECUTEオブジェクトが存在する現在の区画のディレクトリが返されます(例:D:\X_WIN95\X_LANSA\X_DEM\EXECUTE)。

PART_DIR_

SOURCE  SOURCEオブジェクトが存在する現在の区画のディレクトリが返されます

SOURCE  SOURCEオブジェクトが存在する現在の区画のディレクトリが返されます(例:D:\X_WIN95\X_LANSA\X_DEM\SOURCE)。

PART_DIR_

OBJECT  OBJECTオブジェクトが存在する現在の区画のディレクトリが返されます

OBJECT  OBJECTオブジェクトが存在する現在の区画のディレクトリが返されます(例:D:\X_WIN95\X_LANSA\X_DEM\OBJECT)。

TEMP_

DRIV  一時ファイル

DRIV  一時ファイル/オブジェクトが作成されるドライブが、ドライブ文字とコロンとして返されます(例:C:、D:、E

(smile)

:)

TEMP_

DIR  一時ファイル

DIR  一時ファイル/オブジェクトが作成されるディレクトリが返されます(例:D:\TEMP)。

DRIV_

LIST  戻り値2の作業リストが返されます。この値

LIST  戻り値2の作業リストが返されます。この値(戻り値1)は、DRIV_LIST要求を行うときにダミー引数として渡す必要があります。

1

256

 

 



2

リスト

任意

返された情報が保持される作業リスト。現時点では、DRIV_

LIST要求の場合のみ必要です。DRIV

LIST要求の場合のみ必要です。

DRIV_LIST要求に対して返される作業リストのレイアウトと形式については、以下の例を参照してください。

N/A

 

 

 

...




例 

以下のRDMLファンクションの例(CS/400の自由形式のファンクション・エディターでコピー/貼り付け可能)は、可能性のあるドライブ/パスのすべての組み合わせを照会して表示します。
FUNCTION OPTIONSパスのすべての組み合わせを照会して表示します。 

     FUNCTION OPTIONS(*DIRECT)

...


EXECUTE SUBROUTINE(SHOW_INFO)

...

 WITH_PARMS(SYS_DRIV)

...


EXECUTE SUBROUTINE(SHOW_INFO)

...

 WITH_PARMS(SYS_DIR)

...


EXECUTE SUBROUTINE(SHOW_INFO)

...

 WITH_PARMS(SYS_DIR_EXECUTE)

...


EXECUTE SUBROUTINE(SHOW_INFO)

...

 WITH_PARMS(SYS_DIR_OBJECT)

...


EXECUTE SUBROUTINE(SHOW_INFO)

...

 WITH_PARMS(SYS_DIR_SOURCE)

...


EXECUTE SUBROUTINE(SHOW_INFO)

...

 WITH_PARMS(PART_DRIV)

...


EXECUTE SUBROUTINE(SHOW_INFO)

...

 WITH_PARMS(PART_DIR)

...


EXECUTE SUBROUTINE(SHOW_INFO)

...

 WITH_PARMS(PART_DIR_EXECUTE)

...


EXECUTE SUBROUTINE(SHOW_INFO)

...

 WITH_PARMS(PART_DIR_OBJECT)

...


EXECUTE SUBROUTINE(SHOW_INFO)

...

 WITH_PARMS(PART_DIR_SOURCE)

...


EXECUTE SUBROUTINE(SHOW_INFO)

...

 WITH_PARMS(TEMP_DRIV)

...


EXECUTE SUBROUTINE(SHOW_INFO)

...

 WITH_PARMS(TEMP_DIR)

...


**********

...

 COMMENT(Display subroutine)
SUBROUTINE NAME(SHOW_INFO)

...

 PARMS(

...

  OV_QUERY)

...


DEFINE FIELD(#OV_QUERY)

...

 TYPE(*CHAR)

...

 LENGTH(50)

...


DEFINE FIELD(#OV_RESULT)

...

 TYPE(*CHAR)

...

 LENGTH(50)

...


USE BUILTIN(OV_QUERY_SYS_INFO)

...

 WITH_ARGS(#OV_QUERY)

...

 TO_GET(#OV_RESULT)

...


DISPLAY FIELDS(#OV_

...

QUERY #OV_RESULT)

...


ENDROUTINE

以下の例は、現在のPCに接続されているすべてのディスク・ドライブのドライブ文字とドライブ・タイプを表示します。ドライブ・タイプはREM (取り外し可能ドライブ)、FIX (ハード・ドライブ)、NET (ネットワーク・ドライブ)、CD (CD-ROMドライブ)、またはRAM (RAMドライブ)として返されることに注意してください。 として返されることに注意してください。 

Windows 3.1環境では、使用可能なドライブの分類はタイプREM、FIX、NETのみです。 1環境では、使用可能なドライブの分類はタイプREM、FIX、NETのみです。 

Windows 95/NT環境では、使用可能なドライブの分類はタイプREM、FIX、NET、CD、またはRAMのみです。 NT環境では、使用可能なドライブの分類はタイプREM、FIX、NET、CD、またはRAMのみです。 

また、この例では、ドライブ文字がchar(2)としてA:、B:などの形式で返されることに注意してください。
FUNCTION OPTIONSなどの形式で返されることに注意してください。 

     FUNCTION OPTIONS(*DIRECT)

...


DEFINE FIELD(#OV_RESULT)

...

 TYPE(*CHAR)

...

 LENGTH(50)

...


DEFINE FIELD(#OV_DRIVE)

...

 TYPE(*CHAR)

...

 LENGTH(2)

...


DEFINE FIELD(#OV_TYPE)

...

 TYPE(*CHAR)

...

 LENGTH(3)

...


DEF_

...

LIST NAME(#OV_DRIVD)

...

 FIELDS(#OV_

...

DRIVE #OV_TYPE)

...


DEF_

...

LIST NAME(#OV_DRIVW)

...

 FIELDS(#OV_

...

DRIVE #OV_TYPE)

...

 TYPE(*WORKING)

...

 ENTRYS(26)

...


**********

...

 COMMENT(Extract list off drives and display)
USE BUILTIN(OV_QUERY_SYS_INFO)

...

 WITH_ARGS(DRIV_LIST)

...

 TO_GET(#OV_

...

RESULT #OV_DRIVW)

...


CLR_

...

LIST NAMED(#OV_DRIVD)

...


SELECTLIST NAMED(#OV_DRIVW)

...


ADD_

...

ENTRY TO_LIST(#OV_DRIVD)

...


ENDSELECT
DISPLAY BROWSELIST(#OV_DRIVD)

...

以下の例は、対象のドライブ・タイプをREM、FIX、NET、またはALLとして指定するよう要求し、要求されたタイプのすべてのドライブをドロップダウンに表示します。この例では、ドライブ文字がchar(1)としてA、B、Cなどの形式で返されることに注意してください。
FUNCTION OPTIONSとしてA、B、Cなどの形式で返されることに注意してください。 

     FUNCTION OPTIONS(*DIRECT)

...


DEFINE FIELD(#OV_RESULT)

...

 TYPE(*CHAR)

...

 LENGTH(50)

...


DEFINE FIELD(#OV_DRIVE)

...

 TYPE(*CHAR)

...

 LENGTH(1)

...

 INPUT_ATR(DDHD)

...


DEFINE FIELD(#OV_WDRIVE)

...

 TYPE(*CHAR)

...

 LENGTH(1)

...


DEFINE FIELD(#OV_TYPE)

...

 TYPE(*CHAR)

...

 LENGTH(3)

...


DEFINE FIELD(#OV_WTYPE)

...

 TYPE(*CHAR)

...

 LENGTH(3)

...


DEFINE FIELD(#OV_RC)

...

 TYPE(*CHAR)

...

 LENGTH(2)

...


DEFINE FIELD(#OV_WCOUNT)

...

 TYPE(*DEC)

...

 LENGTH(7)

...

 DECIMALS(0)

...

 DEFAULT(*zero)

...


DEF_

...

LIST NAME(#OV_DRIVW)

...

 FIELDS(#OV_

...

WDRIVE #OV_WTYPE)

...

 TYPE(*WORKING)

...

 ENTRYS(26)

...


DEF_

...

COND NAME(*SHOWDRIV)

...

 COND('#OV_

...

wcount *gt 0')
**********

...

 COMMENT(Request type to be shown in Drop Down)
BEGIN_LOOP
REQUEST FIELDS(#OV_TYPE (#OV_DRIVE *SHOWDRIV))
BEGINCHECK
VALUECHECK FIELD(#OV_TYPE)

...

 WITH_LIST('REM'

...

 'FIX'

...

 'NET'

...

 'ALL')

...

 MSGTXT('

...

Type must be REM, FIX, NET or ALL')
ENDCHECK
**********

...

 COMMENT(Extract list off drives and display)
USE BUILTIN(OV_QUERY_SYS_INFO)

...

 WITH_ARGS(DRIV_LIST)

...

 TO_GET(#OV_

...

RESULT #OV_DRIVW)

...


USE BUILTIN(DROP_DD_VALUES)

...

 WITH_ARGS(DDHD)

...

 TO_GET(#OV_RC)

...


CHANGE FIELD(#OV_

...

WCOUNT #OV_DRIVE)

...

 TO(*NULL)

...


SELECTLIST NAMED(#OV_DRIVW)

...


IF COND('(#OV_

...

type =

...

 #OV_wtype)

...

 *

...

or (#OV_

...

type =

...

 ALL)')

...


CHANGE FIELD(#OV_WCOUNT)

...

 TO('#OV_

...

wcount +

...

 1')

...


USE BUILTIN(ADD_DD_VALUES)

...

 WITH_ARGS(

...

DDHD *BLANKS #OV_WDRIVE)

...

 TO_GET(#OV_RC)

...


IF_

...

NULL FIELD(#OV_DRIVE)

...


CHANGE FIELD(#OV_DRIVE)

...

 TO(#OV_WDRIVE)

...


ENDIF
ENDIF
ENDSELECT
IF COND('#OV_

...

wcount <= 0')
MESSAGE MSGTXT('No drives of the requested type exist on (or are accessible to) this system')
ENDIF
END_LOOP