このページでは、アクション実行時に、日時の時系列に矛盾が生じた場合にアクション実行を中断するサンプルスクリプトをご案内します。
アクションスクリプトの基本的な利用方法については、アクションスクリプト使い方ガイドをご確認ください。
目次
完成イメージ
例えば、項目「受付日」と項目「対応完了日」の時系列を比較し、矛盾が生じたときにアクション実行を中断する仕組みを作ることができます。
「受付日」>「対応完了日」(「受付日」が「対応完了日」より将来日時である)
- 「受付日」>「対応完了日」 → アクションを実行しない
- 「受付日」<=「対応完了日」 → アクションを実行する
利用API
このスクリプトではAPIの利用はありません。
注意事項
画面項目の追加
比較する日付項目がデータストアにない場合は、「受付日」と「対応完了日」の項目を新規で作成してください。項目の型は「日付型」もしくは「日付・時刻型」を選択します。
プレスクリプトの設定
このスクリプトは**プレスクリプト**として設定してください。「エラー時にアクションの実行をしない」チェックボックスを有効にすることで、スクリプトでエラーが発生した場合にアクションの実行を停止し、誤った操作を防ぐことが可能です。
サンプルスクリプト
以下は、日時の時系列に矛盾が生じるとき、アクションを実行させないようにするサンプルスクリプトです。
// const SS_FIELD_ACCEPT_TIME = "<項目ID>"; //受付日 const SS_FIELD_COMPLETE_TIME = "<項目ID>"; //対応完了日 /** * メイン処理 */ const main = async () => { let dateComplete; if (item.inputFields[SS_FIELD_COMPLETE_TIME] !== undefined) { dateComplete = new Date(item.inputFields[SS_FIELD_COMPLETE_TIME]); } else { dateComplete = new Date(item.fields[SS_FIELD_COMPLETE_TIME]); } let dateAccept; if (item.inputFields[SS_FIELD_ACCEPT_TIME] !== undefined) { dateAccept = new Date(item.inputFields[SS_FIELD_ACCEPT_TIME]); } else { dateAccept = new Date(item.fields[SS_FIELD_ACCEPT_TIME]); } if (dateComplete < dateAccept) { logger.error(`受付日は対応完了日より過去日付を登録してください。`); throw false; } else { logger.log("正常な日付が登録されました。"); } }; main();
何かお困りのことはございますか?まずはヘルプセンターを検索してみましょう!
その他ご不明な点があれば、サポートチームにお問い合わせください。
コメント
0件のコメント
サインインしてコメントを残してください。