sms
(sms)
1
GaroonカスタマイズTipsのワークフローにある、 【Garoon ワークフロー REST API を使って承認済みワークフローを kintone に登録しよう】こちらのサンプルコードを試してるのですが、希望納品日の日付を未入力で、kintoneよりデータを取得すると、「入力内容が正しくありません」と表示されてしまいます。未入力でもkintoneに登録できる手順をご教授願います。
* Garoon の申請データを kintone のレコード形式に整形する
*/
const formatKintoneRecord = function(workflow) {
const items = workflow.items;
const record = {
requestNumber: {value: workflow.number},
subject: {value: items.subject.value},
createdAt: {value: workflow.createdAt},
status: {value: workflow.status.name},
applicantCode: {value: workflow.applicant.code},
applicantName: {value: workflow.applicant.name},
totalPrice: {value: items.totalPrice.value},
dueDeliveryDate: {value: items.dueDeliveryDate.value},
goods: {value: []},
attachments: {value: []}
};
ko_ji
(ko_ji)
2
こんにちは。
お知らせの Tips の通りカスタマイズを設定してみると、
希望納品日が未入力の場合、フィールドコードが dueDeliveryDate の
日付フィールドに、“–” の値が設定されて POST 処理が実行されるみたいです。
日付フィールドは、“YYYY–MM-DD” 形式の値を設定する必要があるので、
データ形式が違うことでエラーが発生している状況ですね。
上記を回避するには、以下いずれかの対応が必要かと思います。
- 事前に dueDeliveryDate の値をチェックして、“–” の場合には、null を設定する
- ワークフローの申請フォーム側で、希望納品日の初期値に空欄以外を設定する
ko_ji
(ko_ji)
4
以下のように、record 変数の宣言前に条件式設定して、
適当な変数に値を代入してあげたらいいと思います。
const formatKintoneRecord = function(workflow) {
const items = workflow.items;
const hoge = items.dueDeliveryDate.value == "--" ? null: items.dueDeliveryDate.value;
const record = {
requestNumber: {value: workflow.number},
subject: {value: items.subject.value},
createdAt: {value: workflow.createdAt},
status: {value: workflow.status.name},
applicantCode: {value: workflow.applicant.code},
applicantName: {value: workflow.applicant.name},
totalPrice: {value: items.totalPrice.value},
dueDeliveryDate: {value: hoge},
goods: {value: []},
attachments: {value: []}
};
「いいね!」 1
sms
(sms)
5
ko_ji 様
動作確認したところ正常に動作しました。
ありがとうございます!
「いいね!」 1
system
(system)
クローズされました:
6
このトピックはベストアンサーに選ばれた返信から 3 日が経過したので自動的にクローズされました。新たに返信することはできません。