shikumika’s diary

日々の事務作業で手間なことを簡単にできる仕組み(自動化、方法など)、困ったことの解決方法を調べた備忘録

【kintone】登録済みレコードの「作成者」を変更できないので代替案

kintoneに登録済みのレコードで、作成者を変更したい場面がありますが、作成者は変更できない仕様とのことです。できることは限られますが、変更をしたい目的やアプリの状況で、どのような代替案があるのかまとめてみました。

内容:

「作成者」を変更したい場面

そもそも作成者を変更したいケースとして、

  • 「作成者」の情報を用いたアクセス権を設定していたため、「作成者」を変更できるとアクセス権の設定を維持しやすい。
  • 退職等で削除した「作成者」の名前を非表示にしたい。

などがあります。

なお、「作成者」の情報を用いたアクセス権の設定事例は、【kintone】アクセス権の設定事例まとめに記載しています。

またkintoneでユーザーを削除したときは、ユーザーを削除したらデータも消えますか? | kintone ヘルプに記載されているとおり、ユーザー名のリンクが解除されます。)

「作成者」を変更できない仕様について

kintoneの仕様については、以下となっています。

登録済みレコードの作成者/作成日時/更新者/更新日時には、ファイルから任意の値を上書きできません。

  • レコードの作成者/作成日時は、登録されている値から更新されません。
  • レコードの更新者/更新日時は、ファイルを読み込んだユーザーと日時に更新されます。

出典: ファイルからレコードのデータをアプリに読み込む | kintone ヘルプ

なお、この仕様は”登録済みレコード”のことであり、”新規レコードであれば、ファイルから読み込み時に作成者や更新者を指定可能でした。

 

またAPIを通じても、作成者や更新者の「値の更新はできません。」となっていました。
参考: フィールド形式 - cybozu developer network

登録済みレコードの「作成者」を変更する代替案

1.アクセス権の設定を維持する目的の場合

(1)ファイルから読み込むで「新規レコード」として登録

「作成者」を変更したい目的からすると、この代替案が合致するケースは少ないが、規レコードであれば「作成者」や「更新者」を修正可能。

CSVで出力後、「作成者」を変更、ファイルから読み込むことで変更できる。

アプリのレコードを一括削除してインポートするか、次のようにアプリをコピーして新規作成する方法がある。

ただし、レコード番号が変更になったり、アプリのURLが変更になるなどの課題がある。

参考:レコード番号を1から振り直せますか? | kintone ヘルプ

(2)新たに「ユーザー選択」フィールドを追加し、「作成者」の情報を登録

kintoneで自動作成される「作成者」の情報は変更できないので、新たに「ユーザー選択」フィールドを追加する。初期値を「ログインユーザー」に指定しておくことで、kintoneで自動作成される「作成者」と同様な情報が登録される。

なお、過去のデータは、CSVで出力後、「作成者」フィールドの値を新規追加した「ユーザー選択」フィールドにインポートする。

アクセス権については、新規追加した「ユーザー選択」フィールドで再設定が必要であるが、レコード番号を維持したまま、管理上での「作成者」情報を変更することは可能。

2.「作成者」の名前を非表示にしたい場合

この場合は、ユーザーを削除する前に、当該ユーザーの名前を変更しておく方法がある。

community.cybozu.dev

名前の変更前にユーザーを削除している場合は、前述1のいずれかの方法などをとることになる。

なお、ユーザー削除の場面では、ユーザーアカウントを使用停止にするだけで、利用ユーザー数に空きを作ることができるようなので、削除前にアプリへの影響はよく考えておく。

ユーザーを削除したらデータも消えますか? | kintone ヘルプ

 

以上、kintoneで登録済みレコードの「作成者」を変更できないので代替案のまとめでした。