Hitachi

JP1 Version 12 JP1/IT Desktop Management 2 - Asset Console アクセス定義ファイル作成ガイド


2.3.2 許可外ソフトウェアがインストールされている資産をリストアップする場合の記述例

許可外ソフトウェアがインストールされている資産と、そのソフトウェアをリストアップしてファイルに出力する場合の記述例を次に示します。この例では、リストを作成するために、[JOIN_FIND]タグを使って複数クラスを結合して検索しています。

#AssetInformationManager HTML 0005
 
#===============================================================================
# 変数定義
#===============================================================================
[VAR]
  STATUS
  DUMMY
  WORK
  ECHOMSG
  MSG
  FILENAME
 
[SET_VALUE]
  MSG = $GETSESSION('MSG')
 
#===============================================================================
# 許可外ソフトウェアのインストール情報をCSV出力(メイン)
#===============================================================================
[BEGIN]
 
  [VAR]
    ASSET_NO
    GROUP
    USER
    SOFTNAME
    SOFTVR
    FH
    LINE
  [ARRAY]
    OUTLINE
 
  [SET_VALUE]
    FILENAME = $GETSESSION('CSV')
    FH = $FILEOPEN(FILENAME, RENEW)
 
    $SETARRAY(OUTLINE,'ソフトウェア名')
    $SETARRAY(OUTLINE,'バージョン')
    $SETARRAY(OUTLINE,'資産番号')
    $SETARRAY(OUTLINE,'部署')
    $SETARRAY(OUTLINE,'利用者')
 
    $FILEARRAY(FH, OUTLINE)
    $CLEARARRAY(OUTLINE)
 
    LINE = 0
 
  [TRANSACTION]
    [ASSET_ITEM_LOOP]
      [JOIN_FIND]
      [JOIN]
        joinassoc;InstalledListLink;
        joinfrom;InstalledList,InstalledInfo;
        jointype;INNER;
      [JOIN]
        joinassoc;InstalledLink;
        joinfrom;InstalledInfo,AssetInfo;
        jointype;INNER;
      [JOIN]
        joinfrom;AssetInfo,GroupInfo;
        jointype;OUTER;
        joinkey;AssetInfo.GroupID,GroupInfo.GroupID;
      [FIND_DATA]
        (InstalledList.InstalledPermit = '2')
      [GET_VALUE]
        SOFTNAME = InstalledList.InstalledName
        SOFTVR   = InstalledList.InstalledVersion
        ASSET_NO = AssetInfo.AssetNo
        GROUP    = GroupInfo.FullPathName
        USER     = AssetInfo.UserName
 
      [SET_VALUE]
        $SETARRAY(OUTLINE,SOFTNAME)
        $SETARRAY(OUTLINE,SOFTVR)
        $SETARRAY(OUTLINE,ASSET_NO)
        $SETARRAY(OUTLINE,GROUP)
        $SETARRAY(OUTLINE,USER)
 
        $FILEARRAY(FH, OUTLINE)
        $CLEARARRAY(OUTLINE)
 
        LINE = $ADD(LINE, 1)
    [ASSET_ITEM_LOOP_END]
 
  [SET_VALUE]
    $SETSTATUS('NORMAL')
  [TRANSACTION_END]
 
  [SET_VALUE]
    $FILECLOSE(FH)
 
  [IF]
    (LINE = 0)
    [THEN]
      [SET_VALUE]
        ECHOMSG = 'データはありませんでした'
        $ECHO(ECHOMSG)
        $EXIT(1)
    [ELSE]
      [SET_VALUE]
        ECHOMSG = LINE+'件のデータを出力しました'
        $ECHO(ECHOMSG)
  [IF_END]
 
[END]