JUST.DB コマンドラインツール ②-ダウンロード編

前章からの続きとなり、今回はCLIを使用したデータのダウンロードの方法をご紹介します。

前章:https://www.fsz.co.jp/?fszblog=just-db-%e3%82%b3%e3%83%9e%e3%83%b3%e3%83%89%e3%83%a9%e3%82%a4%e3%83%b3%e3%83%84%e3%83%bc%e3%83%ab-%e2%91%a0-%e5%b0%8e%e5%85%a5%e7%b7%a8

まず、データのダウンロードをするには実行ユーザをCLIで覚えておく必要があるため、準備をします。

準備①:コマンドプロンプトを管理者実行にて起動(管理者でない場合、実行不可となります)

cdコマンドにてjsfa-command-toolsを解凍したフォルダまで移動します。
その後、bin・bin64のどちらかマシンスペックに合っているもののフォルダへ移動します。

準備②:「jsfa_encrypt」にてユーザ登録
コマンド:jsfa_encrypt add [user]
[user]:登録されているJUST.DBユーザ名

パスワードを求められるので、入力します。(パスワードは非表示となります)

パスワードを更新したい時には以下のコマンドにて変更可能です。
コマンド:jsfa_encrypt update [user]
[user]:登録されているJUST.DBユーザ名

一度登録した後は情報残り続けるため、次回以降は上記の準備は不要となります。

これにてようやく本編であるデータのダウンロードの説明となります。

まず、データのダウンロードにおけるコマンドは以下となります。
コマンド:jsfa_recorddownload -t [tenant] -u [user] -s [settings] -f [csvfile]
[tenant] :JUST.DBのテナント名(https://テナント名.just-db.com/sites/)
[user] :JUST.DBへの接続に使用するユーザーのログインID
[settings]:ダウンロード用の設定ファイル(※1)
[csvfile] :レコード情報ファイルの保存先ファイル名のフルパス

※1:ダウンロードの設定ファイルのテンプレートは以下となります。(エディタに貼り付けをして、*.settingとして保存してください)

# パネル識別名
#
# 設定値: インポート対象のパネルの識別名
# デフォルト値: なし(必須)
panelName = Panel_0000000001

# フィルター識別名
#
# 設定値: 出力情報の絞込みを行うフィルターの識別名
#        指定しない場合は、デフォルトフィルターが適用される。_all を指定すると、全件出力とする。
#        該当するフィルターが存在しない、またはフィルターの参照権限がない場合は、デフォルトフィルターが適用される。
# デフォルト値: なし(デフォルトフィルターが適用される)
filterName = _all

# フィルター種類
#
# 設定値: フィルター識別名を設定している場合に、フィルター種類が共通か個人かどうかを設定する。
#         common: 共通フィルター
#         personal: 個人フィルター
# デフォルト値: common
filterType = common

# ヘッダー出力有無
#
# 設定値: CSVヘッダー行の出力有無を設定。
#         true: 1行目に表示名、2行目に識別名ヘッダーを出力
#         false: ヘッダーを出力しない
# デフォルト値: true
withHeader = true

# 通知
#
# 設定値: 処理完了後の通知方法を設定する
#         0: 通知メッセージなし
#         1: 正常終了を通知
#         2: エラー終了を通知
#         3: 正常終了・エラー終了を通知
# デフォルト値: 0
notification = 3

# 通知メール有無
#
# 設定値: 通知メールの送信有無を設定する。
#        通知が「0: 通知メッセージなし」の場合はメール送信を行わない。
#         true: 送信する
#         false: 送信しない
# デフォルト値: なし
notificationMail = false

# ファイル系フィールド有無
#
# 設定値: ファイル・画像フィールドをエクスポート対象に含めるかどうかを設定する。
#        trueが指定され、かつ対象パネルにファイル・画像フィールドがある場合、実ファイルを含むZIPファイルがダウンロードされる。
#         true: 含める(レコード情報・ファイルを出力する)
#         false: 含めない(レコード情報・ファイルのいずれも出力しない)
# デフォルト値: false
withFileFields = true

# 採番フィールド詳細有無
#
# 設定値: 採番フィールドの値の出力内容に、結合文字列の他に接頭語、番号、接尾語を含めるかどうかを設定する。
#        true: 含める(結合文字列・接頭語・番号・接尾語を出力する)
#        false: 含めない(結合文字列のみを出力する)
# デフォルト値: false
withIdNumberFieldComponents = true

# リッチテキストフィールドHTMLタグ有無
#
# 設定値: リッチテキストフィールドの値の出力内容に、装飾用HTMLタグを含めるかどうかを設定する。
#        true: 含める
#        false: 含めない
# デフォルト値: true
withRichTextTag = true

# ユーザーデフォルト組織・役職情報有無
#
# 設定値: ユーザーフィールド・ユーザー系システムフィールドの値の出力内容に、各ユーザーのデフォルト組織・役職情報を含めるかどうかを設定する。
#        true: 含める
#        false: 含めない
# デフォルト値: false
withUserFieldDefaultOrganizationsAndPositions = false

# スケジュール: 期間フィールドを複数列で出力する/単一列で出力する
#
# 設定値:スケジュール: 期間フィールドについて、複数列で出力するか単一列で出力するかを設定する。
#        true: 複数列で出力
#        false: 単一列(改行区切り)で出力
# デフォルト値: false
withMulticolSchedulePeriodFields = false

# 住所フィールドを複数列で出力する/単一列で出力する
#
# 設定値: 住所フィールドについて、複数列で出力するか単一列で出力するかを設定する。
#        true: 複数列で出力
#        false: 単一列(改行区切り)で出力
# デフォルト値: false
withMulticolAddressFields = false

# ファイル・画像フィールドをダウンロード対象に含める場合、ZIPファイル出力時の文字コードを出力する
#
# 設定値: ファイル・画像フィールドをダウンロード対象に含める場合、ZIPファイル出力時の文字コードを次の値で設定します。
#        shift-jis: ZIPファイル出力時の文字コードをShift_JISとする
#        utf-8: ZIPファイル出力時の文字コードをUTF-8とする
# デフォルト値: shift-jis
zipCharset = shift-jis

上記をファイルで保存後、必須で変更するパラメータ部分は以下となります。
panelName:パネルの識別名

他のパラメータについては必要に応じて変更してください。

これにてダウンロードの準備が整いましたので、さっそくコマンドを使用してみましょう!
実行前

実行後

データのダウンロードが出来ました!
なお、このコマンドは1パネル毎となりますので、複数のデータダウンロードするときは複数のコマンドと複数の設定ファイルを用意する必要があります。

例)
jsfa_recorddownload -t [tenant] -u [user] -s C:\work\JUST\download\panel_0000000001.setting -f C:\work\JUST\download\panel_0000000001
jsfa_recorddownload -t [tenant] -u [user] -s C:\work\JUST\download\panel_0000000002.setting -f C:\work\JUST\download\panel_0000000002
jsfa_recorddownload -t [tenant] -u [user] -s C:\work\JUST\download\panel_0000000003.setting -f C:\work\JUST\download\panel_0000000003

少々のパネルからデータを出力するときはJUST.DBのパネルから直接エクスポートしたほうが早いですが、
機械的・定期的に出力したい場合、上記のコマンドをバッチ化することによってWindowsスケジューラから呼出だけでRPA化が可能です。
また、本ツールはパネル・データテーブルが増えるほど効果が大きくなるものとなりますので、是非ご活用ください。

次章ではデータのアップロードをご紹介しますので、またご覧いただければ幸いです。