入力 | フォーマット | Record,Text,JSON |
---|---|---|
接続数 | 1 | |
説明 |
Recordストリームを指定する場合は、入力ストリームのフィールド定義をPlatioビルダーで行います。 このフィールド定義は直前に連結したマッパーの出力ストリームのフィールド定義にコピーされ、そこに対して値のマッピングを行います。 マッピングする値の詳細については、下記トピック「Platioのフィールドへのマッピングについて」を参照してください。 Text,JSONストリームを指定する場合は、PlatioAPIの作成、更新用のJSON形式の文字列を渡します。 更新用のJSONには更新対象となるレコードのIDを含める必要があります。 例:レコードのID「rwq62qghjcveobpxgfcijp4b123」のレコードを更新するJSON { "id": "rwq62qghjcveobpxgfcijp4b123", "values": { "c4b3de11": { "type": "String", "value": "infoteria" } } }JSONの形式については、Platio API リファレンス等を参照してください。 |
|
出力 | フォーマット | Record |
説明 |
作成、更新したレコードを出力ストリームのフィールド定義に従ってレコード形式で出力します。 複数レコードあるRecordの入力ストリームで更新処理を行った場合、各Recordで対象となるPlatioのレコードが重なる場合があります。その場合同一のPlatioレコードが複数回出力されることになります。 例:$fromをフィールドに持つ2レコードの入力ストリームの場合
2レコード目の$from「2017-07-25」で、id「rwq62qghjcveobpxgfcijp4b123」、「abc74qgh45fd5bpxgfcijrqbhj8」の2レコードが更新されたとします。 この場合、出力ストリームは以下のように3レコードになります。
フィールド定義は指定したコレクション情報よりPlatioビルダーで作成します。 レコードのIDは_RecordIdという名前で出力します。 |
名前 | プロパティ型 | マッピング | 説明 | ||||||
---|---|---|---|---|---|---|---|---|---|
コネクションを使用 | boolean | - |
接続先に以下のコネクション名 を使用するかどうか選択します。
|
||||||
コネクション名 | connection | - | コネクションを使用 が「はい」の場合に、Platioアプリケーションへの接続用コネクションを指定します。 コネクションペインまたは管理コンソールにて作成した接続名を選択します。 |
||||||
コネクション情報 | group | - | コネクションを使用 プロパティが「いいえ」の場合に使用されるプロパティ群です。 | ||||||
アプリケーションベースURL | string | 入力&出力 |
PlatioのアプリケーションベースURLを指定します。 指定するURLは「 https://api.plat.io/v1/[アプリケーションのID] 」の形式で指定します。 コネクションを使用 が「いいえ」の場合にこの設定が参照されます。 |
||||||
トークンID | string | 入力&出力 |
Platioの開発者向け情報ページから取得したAPIトークンのトークンIDを指定します。 詳細については下記トピック「APIトークンの取得方法」を参照してください。 コネクションを使用 が「いいえ」の場合にこの設定が参照されます。 |
||||||
秘密トークン | password | 入力&出力 |
Platioの開発者向け情報ページから取得したAPIトークンの秘密トークンを指定します。 詳細については下記トピック「APIトークンの取得方法」を参照してください。 コネクションを使用 が「いいえ」の場合にこの設定が参照されます。 |
||||||
タイムアウト | int | 入力&出力 |
Platioアプリケーションへの接続時のタイムアウト値を指定します。 コネクションを使用 が「いいえ」の場合にこの設定が参照されます。 |
||||||
プロキシ設定を使用 | boolean | - |
管理コンソールで設定したプロキシ設定を使用するかどうかを指定します。 コネクションを使用 が「いいえ」の場合にこの設定が参照されます。
|
||||||
コレクション | string | 入力&出力 |
コレクションのIDかコレクションの名前を指定します。 Platioビルダーで選択することができます。 |
||||||
実行する処理 | choice | - | 実行する処理を選択します。
|
||||||
添付データ読込先 | string | 入力&出力 |
添付データを読み込むフォルダーを指定します。 相対パスの場合は、添付データ読込先パスの起点 の指定に基づいて解釈されます。 入力ストリームのフィールドで、Attachment型のフィールドへ「ファイル名」を指定すると、添付ファイルをレコードへ追加することができます。 例:以下の値を指定した場合 添付データ読込先:「c:/temp/img」 'Image'というAttachment型カラムへの値:「test.png」 Imageカラムへ「c:/temp/img/test.png」ファイルを添付します。 添付ファイルのContent-Typeは、指定しなければ自動で設定されます。 上記の場合「image/png」が設定されます。また、contentTypeへマッピングすることでContent-Typeを指定することもできます。 |
||||||
添付データ読込先パスの起点 | pathResolver | 入力&出力 | 添付データ読込先 が相対パス指定の場合に、ベースフォルダーを指定します。
|
||||||
区切り文字 | choice | 入力&出力 | Array型のカラムに指定する値で、区切り文字として使用している文字列を指定します。 | ||||||
作成者 | string | 入力&出力 |
レコードの作成者をユーザー名もしくはユーザーIDで指定します。 指定した作成者は、添付ファイルをレコードへ追加する場合の添付ファイルの作成者としても使用されます。 作成者を指定しない場合、または、存在しないユーザーを指定した場合は、作成者はAPIトークンを生成したユーザーになります。 作成者を指定する場合は、APIトークンを生成するユーザーが管理者権限を持っている必要があります。 「実行する処理」が「追加」、「更新/追加」で、各レコードごとに作成者を変更したい場合は、Platioビルダーのフィールド指定で「_Creator」フィールドを選択しレコードごとに作成者をマッピングします。 「実行する処理」が「更新/追加」の場合、更新時に作成者は使用されません。 作成者を指定する場合は、トークンIDを取得する時に使用するPlatioユーザーが管理者権限を持つユーザーである必要があります。また、存在しないユーザーを指定した場合は、トークンIDを取得する時に使用したPlatioユーザーとなります。 |
||||||
パラメーター | category | 入力&出力 |
Platioアプリケーションへの接続時などに使用されるパラメーターを指定します。本プロパティは将来の拡張用のために存在し、基本的に使用することはありません。 コネクションを使用 が「いいえ」の場合にこの設定が参照されます。 |
なし。
コミット | 何もしません。 |
---|---|
ロールバック | 何もしません。 |
タイプ | パラメーター | エラー処理フロー へのストリーム | エラー コード | 説明 |
---|---|---|---|---|
APIエラー | 「APIエラーのパラメーター
」
を参照してください。 | コンポーネントの入力ストリーム | 1 |
Platio APIがエラーを返した場合
|
接続エラー | なし | コンポーネントの入力ストリーム | 2 | Platioとの通信中にエラーが発生した場合 |
3 | Platioとの通信中、もしくは通信前処理でエラーが発生した場合 | |||
レコードが無い | なし | コンポーネントの入力ストリーム | 4 | 取得するレコードが無い場合 |
6 | 指定したレコードIDの値が空の場合 | |||
参照先レコードが無い | なし | コンポーネントの入力ストリーム | 7 | 参照先に指定したレコードが無い場合 |
汎用 | なし | コンポーネントの入力ストリーム | 5 | コネクション名 に指定したコネクションが見つからない場合 |
8 | ディレクトリの作成に失敗した場合 | |||
9 | Platioに関連するその他のエラーが発生した場合 |
No. | 名前 | 説明 |
---|---|---|
1 | ErrorCode | Platio APIのエラーコードが返されます。 |
2 | StatusCode | HTTPのステータスコードが返されます。 |
3 | ErrorResponse | エラーレスポンスのJSONが返されます。 |
エラー発生時に、コンポーネントがエラー処理フローへ渡すストリームは、基本的にコンポーネントの入力ストリームを使用します。ただし、レコードの作成・更新処理の途中でエラーが発生した場合で入力ストリームがRecordストリームの時は、入力ストリームの各レコードに次のような2つのフィールドを追加してエラー処理フローへ渡します。
フィールド名 | 説明 |
---|---|
_Status | レコードの処理状態が設定されます。
※各レコードの処理順は実行する処理で指定した処理により異なります。よって必ずしも失敗レコードの後続レコードが未処理となるわけではありません。 |
_ErrorMessage | レコードの処理でエラーが発生した場合に、エラーメッセージが設定されます。 |
エラー処理フローへ渡されるストリームの例:
<?xml version="1.0" encoding="utf-8"?> <RecordSet xmlns="http://www.infoteria.com/asteria/flowlibrary/record"> <Record> <Field name="名前" type="String">AAA</Field> <Field name="アプリ1 番号" type="Decimal">1</Field> <Field name="アプリ1 名前" type="String">AAA</Field> <Field name="_Status" type="String">success</Field> <Field name="_ErrorMessage" type="String"></Field> </Record> <Record> <Field name="名前" type="String">BBB</Field> <Field name="アプリ1 番号" type="Decimal">999</Field> <Field name="アプリ1 名前" type="String">BBB</Field> <Field name="_Status" type="String">failure</Field> <Field name="_ErrorMessage" type="String">指定した参照先 [999] が存在していません。</Field> </Record> <Record> <Field name="名前" type="String">CCC</Field> <Field name="アプリ1 番号" type="Decimal">3</Field> <Field name="アプリ1 名前" type="String">CCC</Field> <Field name="_Status" type="String">unprocessed</Field> <Field name="_ErrorMessage" type="String"></Field> </Record> </RecordSet>
Platioから取得した値、設定する値と、フィールド定義のデータ型の対応を以下に示します。
Platio型 | データ型 |
---|---|
String型 | String ※複数行テキストのカラムに設定する場合の改行コードはLFを指定してください。 |
Number型 | Decimal |
Boolean型 | Boolean |
DateTime型 | DateTime |
Date型 | String |
Time型 | String |
Location型 |
|
Attachment型 |
|
User型 |
|
Object型 | Object型に含まれるValueのタイプに合わせて設定されます。 |
Array型 | String 複数の値を区切り文字で繋げた値になります。 ※Array型のvalueがObject型のような複雑なカラムを作成・更新する場合は入力ストリームにText,JSONストリームのJSON文字列を使用する必要があります。 |
ReferenceString型 | String 参照先のレコードのカラムの値になります。 作成・更新する場合はカラム値を設定します。その値から検索して得られた1つ目のレコードのIDを参照先とします。
|
ReferenceNumber型 | Decimal 参照先のレコードのカラムの値になります。 作成・更新する場合はカラム値を設定します。その値から検索して得られた1つ目のレコードのIDを参照先とします。
|
ReferenceUser型 | String 参照先のレコードのカラムの値(名前、ID)になります。 作成・更新する場合は名前を設定します。その値から検索して得られた1つ目のレコードのIDを参照先とします。
|
Platio APIを使用するためにはAPIトークンを生成する必要があり、PlatioPutコンポーネントは生成したAPIトークンを指定する必要があります。
APIトークンには「トークンID」と「秘密トークン」がありPlatioの「開発者向け情報」ページで生成することができます。
「トークンID」はAPIトークンを生成後、Platioの「開発者向け情報」ページよりいつでも確認することができますが、「秘密トークン」はAPIトークン生成時のみ表示され、その後、値を確認することはできません。
「秘密トークン」はAPIトークン生成時に「クリップボードにコピー」アイコンをクリックしてコピーし保存してください。
PlatioPutコンポーネントのPlatio APIリスエスト回数は以下のようになります。
API | 説明 | |
---|---|---|
レコードリスト・レコード・ユーザーリスト・アプリケーション定義の取得 |
アプリケーション定義の取得を必ず1回実行します。
更新する場合は、処理するレコード数の回数リクエストします。更新するレコードを検索する必要がない場合(「実行する処理」で「更新」を指定し、キーとして_RecordIdを指定する/「実行する処理」で「更新/追加(ユニークキー指定)」を指定する)は、100レコード(*1)ごとにリクエスト回数が増加します。 レコード内にUser型カラムがある場合、ユーザー情報を取得するためにレコード数、User型カラム数に関係なく、ユーザー数に応じて1回以上増加します。 レコード内にReferenceString型、ReferenceNumber型、ReferenceUser型カラムがある場合、カラム数×レコード数の回数増加します。 ※ただし、User型、ReferenceString型、ReferenceNumber型、ReferenceUser型の値はコンポーネント内部で参照先の情報をキャッシュしていますので、同じレコードを参照している場合はリクエスト回数が上記回数より減少することがあります。 (*1)Platioアプリケーションのデフォルトの最大値です。 |
|
レコードの作成・更新・削除 |
100レコード(*1)ごとにリクエスト回数が増加します。
(*1)Platioアプリケーションのデフォルトの最大値です。 |
|
添付ファイルの作成 |
添付ファイル数の回数リクエストします。 ※複数のレコードへ同じ添付ファイルを指定する場合もレコード数の回数リクエストします。 |
Platioビルダーは、コネクション名 で接続できるPlatioアプリケーションからコレクション一覧を取得し、そのコレクションのカラムを入力ストリーム、出力ストリームのフィールドとして設定する専用ツールです。
以下のいずれかの操作でPlatioビルダーを起動します。
コネクションを使用 で「はい」を設定し、コネクション名 が設定されていない場合、Platioビルダー起動時にコネクションダイアログが表示されます。
新規にコネクションを作成する場合は「新規コネクション」を選択してください。
既存のコネクションを使用する場合は「名前」のプルダウンリストより使用するコネクション名を選択してください。選択したコネクションを使用してPlatioアプリケーションへ接続します。
「新規コネクション」を選択した場合「コネクションの作成」ダイアログが表示されますので、作成するコネクション名を入力し「OK」ボタンをクリックしてください。
コネクションのプロパティ入力するダイアログが表示されますので、コネクションの各プロパティを設定し「保存」ボタンをクリックしてください。
(1)の実行する処理プルダウンリストから実行する処理を選択します。
(2)のコレクション一覧からコレクションを選択すると(3)に選択したコレクションから取得したフィールド一覧が表示されます。
フィールド一覧で選択チェックボックスをオンにします。指定したカラムを取り消すには、チェックボックスをオフにします。
実行する処理が「更新」、「更新/追加」の場合で、選択しないフィールドのカラムの値は更新されません。カラムの値を削除したい場合は、nullをマッピングする必要があります。
実行する処理が「更新」、「更新/追加」の場合は(3)のフィールド一覧でキーにするフィールドのキーのチェックボックスをオンにします。キーの指定を取り消すには、キーのチェックボックスをオフにします。
キーに指定されたフィールドの値で検索されたレコードを更新します。検索されたレコードが複数レコードの場合、それらすべてのレコードを更新します。
キーに指定できるフィールドには、Platioの「検索可能」なカラム以外に「_RecordId」「$from」「$to」「$fromTimestamp」「$toTimestamp」「$timezone」があります。キーに「$from」「$to」「$fromTimestamp」「$toTimestamp」を指定した場合、直前のマッパーでは検索で使用する日時の文字列をマッピングします。日時の文字列にミリ秒を含めたい場合は、YYYY-MM-DD'T'HH:mm:ss.SSS'Z'形式の日時の文字列をマッピングします。この場合、タイムゾーンはUTCとなります。
例:「$from」の値に「2017-01-13」を設定した場合
検索条件「$from:2017-01-13」でレコードの更新時刻による検索を指定することになります。
「$timezone」は「$from」「$to」「$fromTimestamp」「$toTimestamp」を指定した場合にUTC以外のタイムゾーンを指定したい場合に使用します。
キーに「_RecordId」を指定した場合、対象のレコードが1つ特定されますので、他のキー指定は無視されます。
Array型のセパレーターをプルダウンリストから選択します。
他の文字列をセパレーターとして使用したい場合は、文字列を入力します。