kintoneへのExcel読み込み時に、複数項目の組み合わせで重複登録を防止する方法について相談です。
実現したいこと
契約書管理サービスから、2か月以内に自動更新拒絶期限日を迎える契約書一覧をExcelで出力し、kintoneへ定期的に読み込みます。
kintoneでは、「自動更新」「契約終了」「新規契約」などのステータスを管理します。
次の2項目がともに一致する場合、重複レコードとして登録を防止したいです。
・契約書URL
・更新拒絶期限日
補足
・同じ契約書は毎年更新確認を行う
・契約書URLは、一度登録すると自動更新後も変わらない
・更新拒絶期限日は契約更新に伴い変更される
・Excelファイルは毎月出力する(契約書管理サービスの出力設定が2か月以内のため、必ず重複が発生する)
・対象の契約書は、重複を含まず月20件ほど
試したこと
「URL+更新拒絶期限日」の文字列を作成し、重複禁止にする
→ 計算式で作成したフィールドには、重複禁止を設定できませんでした。
TIS「レコード重複チェックプラグイン」を利用する
→ Excelファイルからの一括読み込み時にはチェックできませんでした。
相談したいこと
以下のいずれかを実現できる方法はありますでしょうか。
・読み込み時に、重複するレコードを登録しない
・読み込み後に、重複レコードを自動検出して削除する(もしくは削除対象を一覧画面で表示する)
できるだけJavaScriptおよび有料プラグインを使わない方法でご教示いただけると助かります。
よろしくお願いいたします。
ミュートしたユーザーの投稿です。
投稿を表示契約書管理サービス側でフィルタリングするのはいかがでしょうか。
具体的には、定期更新時(適時でもよいと思いますが、)に
💡①その時点でのkintoneのステータス状況をファイル書き出し
💡②①を契約書管理サービスに取り込み、
③重複登録とならない(=本来更新すべき)レコードだけ出力(ココがフィルタリングポイント)
④以後既存の手順でkintone更新…
というものです。
ステータスを契約書管理サービス⇔kintone間で共有し、フィルタリングポイントをズラすことで、既存の仕組み内でもギリ実現可能では?と思った次第です。
ジャストアイデアなので、捨て置いて結構です。
ミュートしたユーザーの投稿です。
投稿を表示こんにちは!
「Excel側で結合キーを作成して読み込む方法」でどうでしょうか?
kintoneの「自動計算(計算式)」では重複禁止を設定できませんが、通常の「文字列(1行)」フィールドであれば重複禁止を設定できます。
kintone側の設定
・フィールドタイプ:「文字列(1行)」を配置(※計算フィールドにはしない)
・フィールド名:「重複防止キー」など
・フィールド設定:「値の重複を禁止する」にチェック
Excel側の準備
・読み込むExcelに1列「重複キー」列を追加する
・数式でURLと日付を結合する
3.データ読み込み時
・Excelの「重複キー」列を、kintoneの「重複防止キー」にマッピングして読み込みます。
・レコードの更新を行う場合は「重複防止キー」をキーにして上書き設定をし、新規登録のみにする場合は重複エラーとしてスキップさせます。
毎月読み込むExcel側に1列数式を入れる運用で問題なければ、上記方法は可能かなと思いました。