uCosminexus DocumentBroker Version 3 Standard GUI システム導入・運用ガイド
![[目次]](FIGURE/CONTENT.GIF)
![[用語]](FIGURE/GLOSS.GIF)
![[索引]](FIGURE/INDEX.GIF)
![[前へ]](FIGURE/FRONT.GIF)
6.3.4 文書削除コマンドで使用するファイル
(1) 検索条件ファイル
削除対象の文書の検索条件を記述するファイルです。
(a) ファイルの形式
ファイルの形式を次に示します。
- 削除対象となる文書の検索条件を指定します。属性列名は,表6-16を参照してください。
- 文字列はシングルクォートで囲って指定します。文字列にシングルクォートを指定する場合は,シングルクォートを2回記述してください。
- 比較述語は「>,<,=,<>,>=,<=」が指定できます。比較述語の前後は,半角スペースを指定してください。
- 複数の条件を連結して指定できます。論理演算子は「NOT,AND,OR」が指定できます。論理演算子の評価順序は,括弧内,NOT,AND,ORの順番です。
- 論理演算で指定できるネスト数については,データベースの制限に従います。
- 述語は「BETWEEN,LIKE,IN」が指定できます。ただし,「LIKE」,「IN」および「NOT BETWEEN」は @esysProp_ModifyTime,および@esysProp_CreateTimeと組み合わせて指定できません。
- 副問い合わせ,およびORDER BY句での指定はできません。
- 注意
- 文書削除コマンドでは,指定された検索条件文字列の構文をチェックしません。不正な値が指定されていた場合の動作は保証しません。
(b) 検索述語の構文規則
●論理演算子の形式
<検索条件> ::= <左括弧> <検索条件> <右括弧>
|<述語>
|NOT <検索条件>
|<検索条件> OR <検索条件>
|<検索条件> AND <検索条件> |
●述語の形式
<述語> ::= <比較述語>
|<Between述語>
|<In述語>
|<Like述語> |
●比較述語の形式
<比較述語> ::= <値式> <比較演算子> <値式>
<比較演算子> ::= <等号演算子>
|<不等号演算子>
|<小なり演算子>
|<大なり演算子>
|<小なり等号演算子>
|<大なり等号演算子> |
●<Between述語>の形式
<Between述語> ::= <値式>
〔 NOT 〕 BETWEEN <値式> AND <値式> |
<Between述語>の評価
- 第1の<値式>を「値式1」,第2の<値式>を「値式2」,第3の<値式>を「値式3」とした場合,「値式1」の値が,「値式2」と「値式3」の範囲内の値の場合,「真」になります。範囲外の場合,「偽」になります。
- 第1の<値式>を「値式1」,第2の<値式>を「値式2」,第3の<値式>を「値式3」とした場合,<Between述語>は,次の表記と同じ意味を表します。
〔NOT〕((値式2 <= 値式1) AND (値式1 <= 値式3))
<Between述語>の規則
指定順序が「Between 値式2 AND 値式3」の場合に,「値式2 ≦ 値式3」である必要はありません。ただし,「値2 > 値3」の時は偽となります。
●<In述語>の形式
<In述語> ::= <値式> 〔 NOT 〕 IN <In述語値>
<In述語値> ::= <左括弧> <In項目リスト> <右括弧>
<In項目リスト> ::= <値指定> { <コンマ> <値指定> }... |
<In述語>の評価
- 第1の<値式>が,<In述語値>の中の任意の値と一致する場合,<In述語>は「真」になります。NOTを指定した場合は,第1の<値式>が<In述語値>の中の任意の値と一致するとき,「偽」になります。
- 第1の<値式>が,<In述語値>の中のすべての値と一致しない場合,<In述語>は「偽」になります。NOTを指定した場合は,第1の<値式>が,<In述語値>の中のすべての値と一致しないとき,「真」になります。
<In述語>の規則
- 指定できるデータ型や<In項目リスト>に指定できる<値指定>については,データベースの制限に従います。
- <In項目リスト>を指定する場合は,第1の<値式>に<値指定>は指定できません。
●<Like述語>の形式
<Like述語> ::= <文字列Like述語>
<文字列Like述語> ::= <値式>
〔 NOT 〕LIKE <パターン文字列>
〔 ESCAPE <エスケープ文字> 〕
<パターン文字列> ::= <値指定>
<エスケープ文字> ::= <値指定> |
- <パターン文字列>
- _:1文字の任意の文字を示します。
- %:0文字以上の任意の文字数の文字列を示します。
- <エスケープ文字>
- <エスケープ文字>は,パターン文字列中に「_」や「%」を記述した場合に指定する文字列です。<エスケープ文字>には,任意の1文字を指定します。
<Like述語>の評価
- <値式>の値が,<パターン文字列>で表すパターンと一致した場合,「真」になります。NOTを指定した場合は,<値式>の値が,<パターン文字列>の表すパターンと一致したとき,「偽」になります。
- <値式>の値が,<パターン文字列>の表すパターンと一致しない場合,「偽」になります。NOTを指定した場合,<値式>の値が,<パターン文字列>の表すパターンと一致しないとき,「真」になります。
<Like述語>の規則
- パターン文字列とのパターン一致で,大文字・小文字を区別して評価します。
- <値式>に指定できるのは,文字列型の値だけです。
- <パターン文字列>に指定できるのは,文字列型の値だけです。
- <エスケープ文字>に指定できるのは,文字列型の値だけです。
(c) ファイルの記述規則
- 文書管理サーバの文字コードに合わせて,Shift-JISまたはUTF-8で記述してください。UTF-8で記述する場合は,文書削除コマンドで引数「-utf8」を指定してください。
- 検索条件は,改行を入れずに1行で記述してください。
(d) 指定できる検索条件
指定できる検索条件は,属性検索条件だけです。属性検索で指定できるプロパティの種類を次の表に示します。
なお,表に示すプロパティ以外を指定した場合の動作は保証されません。また,マスタ型は指定できません。
表6-20 指定できるプロパティの種類
| |
分類 |
プロパティ |
対応する属性列名 |
型 |
備考 |
| 1 |
システムプロパティ |
名前(文書名) |
esysProp_Name |
String |
− |
| 2 |
作成日付 |
esysProp_CreateTime |
Integer32 |
time_t型またはYYYYMMDD形式で指定します。※1 |
| 3 |
作成者ID |
esysProp_Creator |
String |
− |
| 4 |
更新日付 |
esysProp_ModifyTime |
Integer32 |
time_t型またはYYYYMMDD形式で指定します。※1 |
| 5 |
更新者ID |
esysProp_Modifier |
String |
− |
| 6 |
所有者名称 |
dbuUserProp_OwnerName |
String |
− |
| 7 |
更新者名称 |
dbuUserProp_ModifierName |
String |
− |
| 8 |
ファイル名称 |
ecmProp_FileName |
String |
− |
| 9 |
ファイルサイズ |
ecmProp_FileSize |
Integer32 |
− |
| 10 |
公開開始日 |
ecmProp_PubDayB |
Integer32 |
YYYYMMDD形式で指定します。 |
| 11 |
公開終了日 |
ecmProp_PubDayE |
Integer32 |
YYYYMMDD形式で指定します。 |
| 12 |
ユーザ定義プロパティ |
ユーザ属性1〜5(数値) |
ecmProp_UserInt1
〜
ecmProp_UserInt5 |
Integer32 |
− |
| 13 |
ユーザ属性1〜5(文字列) |
ecmProp_UserStr1
〜
ecmProp_UserStr5 |
String |
− |
| 14 |
文書種別用属性1〜10(数値) |
ecmProp_DocTypePropInt1
〜
ecmProp_DocTypePropInt10 |
Integer32 |
− |
| 15 |
文書種別用属性1〜10(文字列) |
ecmProp_DocTypePropStr1
〜
ecmProp_DocTypePropStr10 |
String |
− |
| 16 |
文書種別用属性1〜5(長文字列) |
ecmProp_DocTypePropLongStr1
〜
ecmProp_DocTypePropLongStr5 |
String |
− |
(凡例)−:該当しません。
- 注※1
- time_t型の形式は,1970年1月1日の万国標準時00:00:00を起点とした通算経過秒数になります。YYYYMMDD形式で指定する場合,@をプロパティ名の先頭に付与してください。@がない場合は,time_t型の形式が指定されたものとして扱われます。@を付与した場合,右辺の値はYYYYMMDD形式が指定されたものと判断し,1970年からの通算秒に変換されます。なお,時刻にはYYYYMMDDの00:00:00〜YYYYMMDDの23:59:59が指定されたものと仮定して変換します。
- @が指定されている「作成日付(@esysProp_CreateTime)」と「更新日付(@esysProp_ModifyTime)」プロパティだけが変換対象となります。なお,「作成日付(@esysProp_CreateTime)」と「更新日付(@esysProp_ModifyTime)」は,括弧で囲んだ指定はできません。括弧で囲んで指定すると通算秒への変換が正しく処理できません。
- 参考
- ユーザ属性の数値(整数型),数値(日付型),文字列,長文字列に,何もプロパティ値を入力していない文書を検索して削除する場合,検索条件ファイルには次のように記載します。
- 数値(整数型)の場合:ecmProp_UserInt1 = 0
- 数値(日付型)の場合:ecmProp_UserInt2 = 0
- 文字列の場合:ecmProp_UserStr1 = ''
- 長文字列の場合:ecmProp_DocTypePropLongStr1 = ''
記述例を次に示します。△は半角スペースを表します。
- 記述例1(文書名が「文書1」の文書を削除する場合)
- 記述例2(文書名が「文書1」または「文書2」の文書を削除する場合)
esysProp_Name△=△'文書1'△OR△esysProp_Name△=△'文書2'
|
- 記述例3(文書名「ab'c あ'いうえお」を検索する場合)
| esysProp_Name△=△'ab''c あ''いうえお' |
- 記述例4(作成日付の指定例(変換するパターン))
指定したSQL:@esysProp_CreateTime※1△>△20101112
⇒変換後SQL:esysProp_CreateTime△>△1289573999 |
- 記述例5(複数の条件を連結して指定する例)
| @esysProp_CreateTime△>△20101112△AND△@esysProp_CreateTime△<△20101212△AND△@esysProp_ModifyTime△>△20101212 |
- 記述例6(BETWEEN述語を指定する例)
| @esysProp_ModifyTime△BETWEEN△20101112△AND△20101212 |
- 記述例7(IN述語を指定する例)
| esysProp_Name△IN('sasuke','ziro') |
- 記述例8(LIKE述語を指定する例1)
- 記述例9(LIKE述語を指定する例2)
| esysProp_Name△LIKE△'s___' |
- 注※1
- @esysProp_ModifyTimeまたは@esysProp_ModifyTimeを指定した場合,その後ろに指定されている比較述語(>,<,=,<>,>=,<=)の次に指定されている数値はYYYYMMDD形式と見なして変換します。
(2) フォルダパスファイル
削除対象とする文書のフォルダパスを指定するファイルです。
(a) ファイルの形式
ファイルの形式を次に示します。
- CSV形式で作成してください。
- 同じパスが複数行指定されている場合は,コマンド実行時に重複している部分を取り除いて処理します。
(b) ファイルの記述規則
- 文書管理サーバの文字コードに合わせて,Shift-JISまたはUTF-8で記述してください。UTF-8で記述する場合は,文書削除コマンドで引数「-utf8」を指定してください。
- ヘッダ行は必ず指定してください。また,フィールドは必ず10個指定する必要があります。ヘッダ名は次のとおりです。
フォルダ名_1,フォルダ名_2,フォルダ名_3,フォルダ名_4,フォルダ名_5,フォルダ名_6,フォルダ名_7,フォルダ名_8,フォルダ名_9,フォルダ名_10
- レコード行には10個のフィールドを指定する必要があります。フォルダパスが10階層未満の場合は,行の末尾に「,(コンマ)」を付与して10フィールドにしてください。なお,「,(コンマ)」だけの指定はできません。
- フィールドは半角の「"(引用符)」で囲むことができます。「"(引用符)」で囲む場合は,すべてのフィールドを囲んでください。
- フィールドに記述する値に「,(コンマ)」を含む場合は,フィールドを半角の「"(引用符)」で囲んでください。例えば,指定する値が「Folder1,A」の場合,フィールドには「"Folder1,A"」と記述します。
- フィールドを半角の「"(引用符)」で囲んで記述する場合に,フィールドの値に半角の「"(引用符)」を含むときは,値の「"(引用符)」は2つ重ねて記述してください。例えば,指定する値が「Folder"A"」の場合,フィールドには「" Folder""A"""」と記述します。
- フォルダ階層は最上位のフォルダ名から,すべてを指定する必要があります。階層の途中のフォルダ名の記載を省略することはできません。例えば,「Folder01/Folder02/Folder03/Folder04」のうち,Folder03以下の文書を削除する場合,「Folder01/Folder02」の指定は省略できません。Folder01からFolder03までのすべてのパスを指定してください。
- 以下の重複するパスが多数指定されている場合,コマンド処理に時間が掛かるときがあります。事前に重複するフォルダ指定を除外することをお勧めします。
- 同じパスの重複指定
- すでに指定されているフォルダの下位フォルダ指定
- フィールド中には改行コードを記述しないでください。また,改行コードだけの指定はできません。
- 空行は,最終行以外で指定できません。
- コメント行は指定できません。
次のフォルダ以下の文書を削除対象とする場合に,フォルダパスファイルの記述例を示します。
- (指定内容)
- FolderA/FolderB/FolderC
- Folder1,A/Folder1,B/Folder1,C
- Folder"A"/Folder"B"/Folder"C"
- (記述例)
![[図データ]](FIGURE/ZU050307.GIF)
All Rights Reserved. Copyright (C) 2006, 2014, Hitachi Solutions, Ltd.