CData Software Blog

クラウド連携のCData Software の技術ブログです。

Backlog のカスタム属性の更新をサポート:CData Backlog Driver

f:id:sugimomoto:20210608175800p:plain

こんにちは。CData Software Japan リードエンジニアの杉本です。

前回の記事でBacklog Driverのカスタム属性を表示する方法を紹介しました。

www.cdatablog.jp

そして記事の最後の部分でもお伝えしたように、このカスタム属性の更新機能が最新バージョンのドライバーでサポートされました!

というわけで今回はカスタム属性の更新機能の使い方を解説したいと思います。

f:id:sugimomoto:20210608175258p:plain

設定方法

まず設定方法ですが、これは最新バージョンのドライバーにアップデートしていれば、前回の記事と同様の手順で、以下の「Include Custom Fields」という接続プロパティをTrueに設定するだけです。

cdn.cdata.com

CData Excel Add-inなどの画面では以下のように設定します。

f:id:sugimomoto:20210607221941p:plain

今回はSQLベースでわかりやすいように、JDBC Driverから繋いでみました。ただ、Excel Add-inでも同じように機能が利用できます。

www.cdata.com

JDBC Driverから繋いでみて、カラム一覧を表示してみると、以下のようにカスタムフィールドがそれぞれ追加されていることが確認できます。

f:id:sugimomoto:20210608175307p:plain

使い方

表示されしてしまえば、後は単純にSQLのINSERT文やUPDATE文を使って登録・更新できます。

INSERT INTO Issues (ProjectId,Summary,PriorityId,IssueTypeId,CustomFiled_1_Text) VALUES(186826,'Summary',3,898261,'CustomField Text');
UPDATE Issues SET CustomFiled_1_Text = 'Update Text' WHERE Id = '15777729';

f:id:sugimomoto:20210608175315p:plain

Excelからも同じように行なえます。

https://cdatajbuilds.s3-ap-northeast-1.amazonaws.com/CDataBlog/customfieldupdate.gif

リストデータの更新

一点注意が必要なのは、リストデータの更新です。

f:id:sugimomoto:20210608175321p:plain

リストデータは複数選択ができることもあり、データを取得してみると、以下のように表示されます。

f:id:sugimomoto:20210608175327p:plain

このリストデータ、更新時に注意しなければいけないのは、この表示されている値ではなく、APIの仕様上、内部で持っているID・ItemIdを指定しなければいけない点です。

このItemIdは「ProjectCustomFieldItems」テーブルで確認できます。

f:id:sugimomoto:20210608175344p:plain

カスタムカラム名と結合して見たい場合は、以下のようなSQLで取得できます。

SELECT ProjectCustomFields.Id, ProjectCustomFields.Name,ProjectCustomFieldItems.ItemId,ProjectCustomFieldItems.Name 
FROM ProjectCustomFields 
INNER JOIN ProjectCustomFieldItems 
ON ProjectCustomFields.Id = ProjectCustomFieldItems.CustomFieldId;

f:id:sugimomoto:20210608175355p:plain

あとはこの値を使って、INSERT文やUPDATE文を実行するだけです。

UPDATE Issues SET CustomField_6_MultipleList = '2,3' WHERE Id = '15777729';

以下のようにデータの更新ができました。

f:id:sugimomoto:20210608175404p:plain

もちろん、Excelからも同様に実施できます。Excelだと更新後に値が差し替わるのでわかりやすいですね。

https://cdatajbuilds.s3-ap-northeast-1.amazonaws.com/CDataBlog/customfieldupdatelist.gif

ちなみにリストでは「その他の入力項目」というものも追加できます。

f:id:sugimomoto:20210608175410p:plain

この項目は「CUSTOM_FIELD_NAME + OtherValue」といった形式で追加カラムとして表示されます。このカラムに対してINSERTやUPDATEを行うことで値を書き込むことができます。

f:id:sugimomoto:20210608175417p:plain

おわりに

CData Driver は日々APIの様々な機能に追加対応を行っているので、「この機能無いの?」といったことがあれば、お気軽に問い合わせしてみてください。

https://www.cdata.com/jp/support/submit.aspx