TROCCO にて kintone からレコード番号を連携する際におけるデータ型の注意事項

## 概要

TROCCO にて kintone から`レコード番号`フィールドを連携する際におけるデータ型の注意事項を共有します。2024年7月16日時点での TROCCO での検証結果であるため、今後のリリースにより動作が異なる可能性があります。

`レコード番号`フィールドには基本的には数値の連番がはいるのですが、アプリコードを指定した場合には`test0716-1`のように文字を含む連番が付与されます。TROCCO のデフォルトの動作では、`レコード番号`フィールドが long 型として設定されるため、アプリコード機能を利用している場合には手動で string 型に変更する必要があります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/24031/5886a427-244f-4b80-b105-afd4444db8a2.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/24031/be0668b2-2083-67b7-c620-e901610beedf.png)

## `レコード番号`フィールドの仕様について

`レコード番号`フィールドの仕様を kintone のドキュメントを確認すると連番が設定される旨の記述があります。

> レコード番号フィールドは、レコードを追加するごとに、1から連番で自動的に番号が振られるフィールドです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/24031/bc3ccbfa-9c9a-12ee-f4fe-5a03a494f90e.png)

引用元：[レコード番号 | kintone ヘルプ (cybozu.help)](https://jp.cybozu.help/k/ja/user/app_settings/form/form_parts/record_number.html)

アプリコードを設定した際の仕様についても記述されており、アプリコードと連番の値となる旨が記述されています。

> アプリコード機能を利用すると、アプリを識別するためのコードと番号の組み合わせがレコード番号になります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/24031/e2993e8b-710d-9c6e-ef28-8a8c153988ad.png)

引用元：[レコード番号 | kintone ヘルプ (cybozu.help)](https://jp.cybozu.help/k/ja/user/app_settings/form/form_parts/record_number.html)

上記の仕様からデータ連携を行う際には、`レコード番号`フィールドを連携する場合には long 型ではなく、 string 型として連携することが望ましいです。`レコード番号`フィールドに名称が似ている`レコードID`フィールド（下記画像における`$id`フィールド）というものがあり、そちらについては数値が入るため long 型でよさそうです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/24031/5fe35393-8f2a-aef6-954c-6742f4a2ed04.png)


## 再現方法

### 1. kintone にてアプリを作成

#### 1-1. `レコード番号`と`文字列(1行)`をフォームに追加したアプリを作成

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/24031/0b7a9e73-a5c2-ac51-b867-fd3ad96eb08b.png)

#### 1-2. 新規レコードを追加し、`レコード番号`フィールドに数値が入力されていることを確認

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/24031/28e8025c-bbb6-9274-75cc-39713651d09f.png)

#### 1-3. アプリの設定にて`高度な設定`を選択

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/24031/ec1ee7b6-719b-190e-546f-c4b7f6bdb683.png)

#### 1-4. アプリコードに任意の値をセットし`保存`を選択後にアプリを公開

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/24031/a3767879-99b7-f36e-0169-d853415d25d1.png)

#### 1-5. `レコード番号`フィールドが数値（例：`1`）から文字（例：`test0716-1`）

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/24031/5886a427-244f-4b80-b105-afd4444db8a2.png)

### 2. TROCCO のデフォルトの動作を確認

#### 2-1. kintone を転送元とする転送設定作成の STEP 1 を実施

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/24031/20ee8112-27b7-1a2b-c1dd-83f1bb7d8b73.png)

#### 2-2. データプレビューにて`レコード番号`フィールドが long 型となっておりデータが表示されていないことを確認

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/24031/be0668b2-2083-67b7-c620-e901610beedf.png)

### 3. TROCCO にてデータ型を変更

#### 3-1. 転送設定のデータプレビューにて`転送元・転送先の設定へ戻る`を選択

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/24031/ea05b069-5844-0191-8660-261ec2a1eca7.png)

#### 3-2. `レコード番号`フィールドのデータ型を string 型に変更

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/24031/6168ee13-432b-acde-a3ce-7618cb1ae567.png)

#### 3-3. `自動データ設定の選択`ウィンドウにて`自動データ設定を実行`を選択

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/24031/5d2535da-296a-6572-6066-b600dc7cf630.png)

#### 3-4. データプレビューにて`レコード番号`フィールドが string 型となっておりデータが表示されていることを確認

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/24031/977c727e-5152-9f3e-2b82-44da479c5e1d.png)