今回はPlatioの勤怠連絡テンプレートを利用して共通ユーザー機能が無効の場合に、ASTERIA WarpのPlatioユーザー管理用コンポーネントの使用場面を想定して動作を説明します。
※ユーザー管理を行うPlatio管理APIは、Enterpriseプランのみでご利用いただけます。
目次
- 事前準備
- PlatioCreateUserコンポーネントの動作
- PlatioSearchUserコンポーネントの動作
- PlatioUpdateUserコンポーネントの動作
- PlatioDeleteUserコンポーネントの動作
事前準備
ミニアプリのユーザーの確認
勤怠連絡テンプレートでサンプルユーザーを設定すると、下記のユーザーが登録されます。
- user1
- user2(マネージャー)
ASTERIA Warpのコネクション定義に使うユーザーを設定
ASTERIA WarpからPlatioへ接続して処理を行うフローでは、Platio接続用の「コネクション」を作成する必要があります。今回はPlatioのユーザー管理用のコンポーネントを使用するために、Platioユーザーの「user2」を用いてコネクション定義を行います。
操作としては、勤怠連絡ミニアプリの管理メニュー「ユーザー」から、user2のユーザーの編集画面で「APIでのレコードや添付ファイルへのアクセスを許可」と「APIでのユーザーの管理を許可」にチェックを入れて保存します。
ASTERIA WarpでPlatioコネクションを作成
[ASTERIA Warp]Platioコンポーネントでのデータ連携:概要と事前準備の手順をご参照いただき、以下の操作を行ってください。
- データビューアーにuser2でログインし、開発者向け情報からAPIトークンを取得する
- ASTERIA WarpでPlatioコネクションを作成する
※コネクションに定義されたミニアプリ内にてPlatio APIを使用できます。
PlatioCreateUserコンポーネントの動作
PlatioCreateUserコンポーネントの使用場面例としては、新入社員の入社に伴い、新入社員が使用するPlatioユーザーを指定のミニアプリに一括で設定することを想定して動作を確認します。
今回の処理としては、まず新規作成するPlatioユーザーをCSVファイルで準備して、FileGetコンポーネントで読み込みます。次に読み込んだPlatioユーザーの情報をPlatioCreateUserコンポーネントに渡して、勤怠連絡ミニアプリのPlatioユーザーとして作成します。
※PlatioCreateUserコンポーネントの詳細は、こちらのコンポーネントマニュアルをご参照ください。
CSVファイルの作成
最初に新規作成するPlatioユーザーをCSVファイルで準備します。
以下はPlatioCreateUserコンポーネントでPlatioユーザーを作成するために必要なフィールドです。
氏名,メールアドレス,パスワード,管理者,APIアクセス権,管理APIアクセス権,プロファイル
※チーム機能が有効の場合は上記に加えて「チーム」と「チームリーダー」の設定が必要になります。
<CSVファイルの例:UserInfo.csv>
"user3","user3@sample.org","Platio001","false","false","false","デフォルト"
"user4","user4@sample.org","Platio001","true","false","false","社員"
"user5","user5@sample.org","Platio001","false","false","false","デフォルト"
ASTERIA WarpのフローデザイナーにCSVファイルをアップロード
ここからはフローデザイナーへログインします。先ほど作成したCSVファイルをエクスプローラーからファイルペインにドラッグ&ドロップして、ホームディレクトリにアップロードします。
フローを作成する
下記の「コンポーネントを配置」の手順で各コンポーネントを配置し、フローを作成します。
※前提としてプロジェクト、Platioコネクションは作成済みです。
コンポーネントを配置
Startコンポーネントに続いて、RecordGetコンポーネントとMapperコンポーネントを配置します。次にコネクションペインからPlatioコネクションをドラッグ&ドロップし、PlatioCreateUserコンポーネントを選択して配置します。最後にEndコンポーネントを配置します。
ストリームを定義
RecordGetコンポーネントの「ファイルパス」プロパティに新規作成するPlatioユーザーの情報を記述したCSVファイル名(UserInfo.csv)を指定します。また文字化けを防ぐために「ファイルのエンコーディング」プロパティを「自動判別」から「UTF-8」に変更します。
続いて、フィールドの定義を行います。ストリームペインで右クリックメニューから「CSV形式で編集」を選択します。
以下のCSV形式のフィールド定義を「CSV形式で編集」の編集画面にコピー&ペーストして、保存します。
Name,String
Email,String
Password,String
Admin,Boolean
ApiAccess,Boolean
ManagementApiAccess,Boolean
ProfileName,String
次にMapperコンポーネントをダブルクリックして開き、入力ストリームの項目を出力ストリームにあるPlatioCreateUserコンポーネントの基本プロパティにそれぞれマッピングします。
フローを実行
フローを実行した後、Platio Studioの管理メニューから「ユーザー」を確認すると、新たにuser3、user4、user5のPlatioユーザーが作成されていることが確認できます。
PlatioSearchUserコンポーネントの動作
PlatioSearchUserコンポーネントの使用場面例としては、ミニアプリに登録されたPlatioユーザーを取得して、社員リストを作成することを想定して動作を確認します。
今回の処理としては、勤怠連絡ミニアプリに登録されているPlatioユーザーをPlatioSearchUserコンポーネントで検索します。続いて社員リストに必要な情報をFilePutコンポーネントに渡してCSVファイルに書き込みます。今回の社員リストではユーザーID、氏名、メールアドレスからなる社員リストを作成します。
今後の動作確認で扱うPlatioUpdateUserコンポーネントやPlatioDeleteUserコンポーネントは、ユーザーIDの指定が必須になるため、今回のPlatioSearchUserコンポーネントの動作確認でユーザーIDを取得して、社員リストとして保存します。
※PlatioSearchUserコンポーネントの詳細は、こちらのコンポーネントマニュアルをご参照ください。
フローを作成する
下記の「コンポーネントを配置」の手順で各コンポーネントを配置し、フローを作成します。
※前提としてプロジェクト、Platioコネクションは作成済みです。
コンポーネントを配置
はじめにコネクションペインからPlatioコネクションをドラッグ&ドロップし、PlatioSearchUserコンポーネントを選択して配置します。続いてMapperコンポーネント、FilePutコンポーネントを、Endコンポーネントを配置します。
ストリームを定義
Mapperコンポーネントのストリームペインにあるストリーム型を「CSV」に変更します。続いて、「+」ボタンをクリックして詳細な設定を開き、囲み文字に「(none)」を指定します。
次にMapperコンポーネントのフィールドにユーザーID、名前、メールアドレスを設定します。
Mapperコンポーネントをダブルクリックして開き、入力ストリーム側の「id」「Name」「Email」のそれぞれのフィールドを出力ストリームの「ユーザーID」「名前」「メールアドレス」に接続します。
最後にFileGetコンポーネントの「ファイルパス」プロパティに社員リストを書き込むファイルのパス(今回はOutput1.csv)を指定します。
フローを実行
フローを実行した後、FileGetコンポーネントをダブルクリックしてフローで作成したファイルを開くと、指定した内容で社員リストが出力されていることを確認できます。
PlatioUpdateUserコンポーネントの動作
PlatioUpdateUserコンポーネントの使用場面例としては、部署の移動に伴い、Platioユーザーに設定されているプロファイルと管理者権限の情報を更新することを想定して動作を確認します。
今回の処理としては、PlatioUpdateUserコンポーネントを使用して、user4の管理者権限とプロファイル(現状、管理者権限:有効、プロファイル:社員)を管理者権限を「無効」、プロファイルを「デフォルト」に更新します。
※PlatioUpdateUserコンポーネントの詳細は、こちらのコンポーネントマニュアルをご参照ください。
フローを作成する
下記の「コンポーネントを配置」の手順で各コンポーネントを配置し、フローを作成します。
※前提としてプロジェクト、Platioコネクションは作成済みです。
コンポーネントを配置
Startコンポーネントに続いて、FileGetコンポーネント、RecordFilterコンポーネント、Mapperコンポーネントを配置します。続いて、コネクションペインからPlatioコネクションをドラッグ&ドロップし、PlatioSearchUserコンポーネントを選択して配置します。最後にEndコンポーネントを配置します。
ストリームを定義
はじめにFileGetコンポーネントの「ファイルパス」プロパティにPlatioSearchUserコンポーネントの動作確認で出力した社員リストのファイルパスを指定します。次にストリームペインのストリーム型を「CSV」に変更し、「+」ボタンから詳細な設定を開き、囲み文字に「(none)」を指定します。
続いてフィールド名にユーザーID、名前、メールアドレスを設定します。
次にRecordFilterコンポーネントの「条件式」プロパティに以下の条件式を入力します。
$record.氏名="user4"
※条件式の記述方法の詳細につきましては、こちらのマニュアルをご参照ください。
今回の社員リストにはuser4以外のPlatioユーザーも登録されているため、この条件式を設定することにより、CSVファイルから読み込んだレコードの「氏名」フィールドが「user4」である場合に処理を実行します。
続いて、Mapperコンポーネントを開きます。入力ストリームにある「ユーザーID」フィールドを、出力ストリームにあるPlatioUpdateUserコンポーネントのプロパティの「ユーザーID」にマッピングします。今回はuser4の管理者権限を「無効」、プロファイルを「デフォルト」に更新するため、以下のキャプチャのようにConst関数を使用して、管理者には「false」、プロファイルには「デフォルト」の値を差し込みます。
フローを実行
フローを実行した後、Platio Studioの管理メニューの「ユーザー」からuser4の情報を確認すると、管理者権限が「無効」に、プロファイルが「デフォルト」に更新されたことを確認できます。
PlatioDeleteUserコンポーネントの動作
PlatioDeleteUserコンポーネントの使用場面例としては、退職等により特定のPlatioユーザーを削除することを想定して動作を確認します。
今回の処理としては、PlatioUpdateUserコンポーネントの動作確認で使用したフローを複製し、一部修正を行い、特定のユーザー(今回はuser4)をPlatioユーザーから削除します。
※PlatioDeleteUserコンポーネントの詳細は、こちらのコンポーネントマニュアルをご参照ください。
フローを作成する
下記の「コンポーネントを配置」の手順で各コンポーネントを配置し、フローを作成します。
※前提としてプロジェクト、Platioコネクションは作成済みです。
コンポーネントを配置
最初にツリーペイン上にあるPlatioUpdateUserコンポーネントの動作確認の際に作成したフローを右クリックしてメニューを開き、「複製」ボタンをクリックしてフローを複製します。
複製したフロー内のPlatioUpdateUserコンポーネントをクリックすると、コンポーネントの右上にメニューが表示されるので「ゴミ箱」ボタンから、PlatioUpdateUserコンポーネントを削除します。
続いて、コネクションペインからPlatioコネクションをドラッグ&ドロップし、PlatioDeleteUserコンポーネントを選択して配置して、Endコンポーネントへのリンク線を接続します。
ストリームを定義
Mapperコンポーネントをダブルクリックして開き、不要な項目(出力ストリームで赤く色がついている箇所に接続しているConst関数)を削除しておきましょう。
フローを実行
フローを実行した後、Platio Studioの管理メニューの「ユーザー」を確認すると、指定したuser4のPlatioユーザーのみが削除されていることを確認できます。