From 48d2d9c47365213b4534f654480644bafe72e3e0 Mon Sep 17 00:00:00 2001 From: Moriyukina2 Date: Wed, 31 Jul 2024 11:17:04 +0900 Subject: [PATCH] =?UTF-8?q?BUg550=20=E5=86=8D=E3=83=86=E3=82=B9=E3=83=88?= =?UTF-8?q?=E5=BE=8C=E3=80=81=E6=96=87=E5=AD=97=E5=88=97=E3=83=95=E3=82=A3?= =?UTF-8?q?=E3=83=BC=E3=83=AB=E3=83=89=E4=BB=A5=E5=A4=96=E3=81=AB=E3=80=81?= =?UTF-8?q?=E5=A4=89=E6=95=B0null=E3=82=92=E6=8C=BF=E5=85=A5=E3=81=97?= =?UTF-8?q?=E3=82=88=E3=81=86=E3=81=A8=E3=81=97=E3=81=9F=E5=A0=B4=E5=90=88?= =?UTF-8?q?=E3=81=AE=E3=82=A8=E3=83=A9=E3=83=BC=E3=83=A1=E3=83=83=E3=82=BB?= =?UTF-8?q?=E3=83=BC=E3=82=B8=E4=BF=AE=E6=AD=A3=E3=80=80=E3=80=81Bug540=20?= =?UTF-8?q?=E5=86=8D=E3=83=86=E3=82=B9=E3=83=88=E5=BE=8C=E3=80=81=E4=BF=9D?= =?UTF-8?q?=E5=AD=98=E6=88=90=E5=8A=9F=E6=99=82=E3=81=AB=E5=A4=89=E6=95=B0?= =?UTF-8?q?=E3=81=AE=E5=80=A4=E3=81=8C=E6=8C=BF=E5=85=A5=E3=81=95=E3=82=8C?= =?UTF-8?q?=E3=81=AA=E3=81=84=E3=81=AE=E3=82=92=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/actions/insert-value.ts | 28 +++++++++++++------ 1 file changed, 20 insertions(+), 8 deletions(-) diff --git a/plugin/kintone-addins/src/actions/insert-value.ts b/plugin/kintone-addins/src/actions/insert-value.ts index 1fa0335..9670d84 100644 --- a/plugin/kintone-addins/src/actions/insert-value.ts +++ b/plugin/kintone-addins/src/actions/insert-value.ts @@ -75,9 +75,11 @@ export class InsertValueAction implements IAction{ checkVariableValueBlank(fieldType :string | undefined,inputValueArray :any,fieldCode :string,fieldRequired :boolean | undefined,event :any): boolean{ let blankCheck; - //正規表現チェック - for(let i =0;i { return path.split(".").reduce((o, k) => (o || {})[k], obj); }; - //オブジェクト変数で、値の指定がある場合は、変数名のみ取得 var variablesName = fieldValue.substr(0, fieldValue.indexOf('.')); if(variablesName){ @@ -486,6 +486,12 @@ export class InsertValueAction implements IAction{ objectValue = getContextVarByPath(context.variables,fieldValue) } + //文字列型のフィールド以外に、空白文字の変数の値を挿入する場合、エラーを出す + if(fieldType !== "SINGLE_LINE_TEXT" && fieldType !== "MULTI_LINE_TEXT" && fieldType !== "RICH_TEXT" && fieldType !== "LINK" + && objectValue === null){ + throw new Error("「"+fieldCode+"」"+"フィールドに挿入しようとした変数は、値がnullのため、処理を中断しました。"); + } + //オブジェクト変数の場合、プロパティを取得し、何のオブジェクト変数か判断する if(objectValue !== null && typeof objectValue === 'object'){ let objectProperties=[] @@ -510,8 +516,8 @@ export class InsertValueAction implements IAction{ fieldValueArray[0] = variableValue; } - //変数がfieldValueArrayに代入できなかった場合は、エラーを出す - if(objectValue === undefined && fieldValueArray === undefined){ + //変数がfieldValueArrayに代入できなかった場合、エラーを出す + if(fieldValueArray === undefined){ throw new Error("「"+fieldCode+"」"+"フィールドに入れようとした変数は、無効な入力形式です。"); } @@ -656,7 +662,13 @@ export class InsertValueAction implements IAction{ } //kintone async/await による非同期処理(レコード更新) - await updateRecord(fieldCode,event,correctFormattedValue); + if(correctFormattedValue){ + await updateRecord(fieldCode,event,correctFormattedValue); + //条件式の結果がtureかつ、値を正しい形式(配列)に変換できた場合、フィールドに値(配列)をセットする + }else if(correctValues.length > 0){ + await updateRecord(fieldCode,event,correctValues); + } + // await updateRecord(fieldCode,event,correctFormattedValue); }; result= {