ブログ

2021/07/07
【プリザンター】 第103回)CSVリストから添付ファイル付きのレコードを登録する方法

添付ファイルの一括登録

こんにちは、CCSの田中です。

プリザンターにデータのインポート機能がありますが、この機能では添付ファイルが取り込めません。少ない件数であれば手作業でも対応はできますが、数が多くなってきた場合は一括処理を行いたくなりますよね?
そんなときに、今回の登録方法を参考にしてみてください。

今回、プリザンターのオンラインマニュアルにも掲載されている

FAQ:サンプルコード:添付ファイルを含んだレコードを新規作成したい

を参考にして作成を進めます。

詳細手順

プリザンターのローカル環境でPowerShellを使って実行します。
一度、1つのレコードを登録するサンプルの一部を書き換えて、正常に動作することを確認してから、CSVを参照して複数取込を行います。

1.オンラインマニュアルに記載されているPowerShellの内容をファイルを保存します。(拡張子は.ps1としてください)
2.$requestUrl = の値の部分を、実際のサーバ名とサイトIDに書き換えます。
3.APIキーを取得します。
 1)プリザンターのメニューから、ログイン名が表示されているところをクリック
 2)「API設定」をクリックし
 3)表示されたAPIキーをコピー
4.上記でコピーしたAPIキーを、$apiKey= の値の部分にコピーします。
5.$file= Get-Item の値の部分は、実際のファイルのパスを指定します。
6.ps1ファイルを上書き保存します。
7.以下を記載した「ps.bat」を作成し保存します。

<バッチファイルの内容>


powershell -ExecutionPolicy RemoteSigned -File [上記で作成したps1ファイルパス]
pause



例:

powershell -ExecutionPolicy RemoteSigned -File C:\work\CreateRecord.ps1
pause



8.ps.batを管理者権限で実行します。
 ⇒指定したサイトIDに、タイトル「Test」で、指定された添付ファイルが付いてレコードが作成されます。


上記までの確認ができた後は、CSVから登録するために、以下の追加を行います。

9.作成したps1の内容を下記で囲みます。

<ps1の内容>

$createRecords = Import-Csv C:\Work\testdata.csv -Header "title","filepath"
foreach ($createRecord in $createRecords)
{
  ここにps1の内容
}



10.さらに、以下の個所の内容を一部書き換えます。

$file = Get-Item $createRecord.filepath
Title = $createRecord.title

※testdata.csvは、ヘッダー無しの状態でShift-JISで以下を指定する内容個数分記載します。

[タイトル],[ファイルパス]   ←ファイルパスは”(ダブルクォーテーション)で囲みましょう。

ここまでで、完了です。
先ほどと同じように、ps1ファイルを管理者権限で実行してみてください。
プリザンターにタイトルと添付ファイルが登録されていることが確認できると思います。

<CSVファイルの内容>

test1,"C:\work\test1.pptx"
test2,"C:\work\test2.pptx"
test3,"C:\work\test3.pptx"



上記のCSVを登録した例は以下イメージの通りです。







まとめ

さて、いかがでしたか?

添付ファイルの登録は要望が多いため、有効活用することができると思います。
詳細なところまではブログでは説明や支援ができませんが、サポート契約いただくことで、こういったことも支援ができますので、サポート未契約の方はご検討ください。

導入の支援、スクリプト開発などでお困りの場合は、当社で支援もいたします。プリザンター逆引き辞典PDF版やスタイル・スクリプトサンプル集PDF版の販売もしております!

☆☆ブログ内容への質問や追加説明をご希望の方は
【問い合わせフォーム】 こちら からお気軽にお問い合わせください☆☆

PAGE TOP