![見出し画像](https://assets.st-note.com/production/uploads/images/109555001/rectangle_large_type_2_4d2fedb1687f3644faac587405d98b53.png?width=1200)
Photo by
miniminicar
kintoneRecクラス
概要
KintoneRecクラスは、kintoneアプリの1レコードを抽象化したクラスです。レコード情報(フィールド(KintoneFieldオブジェクト)と値(KintoneValueオブジェクト)のセット)とレコード番号方法を内包します。
KintoneAppクラスのgetメソッドでレコード取得した際の戻り値はKitnoenRecオブジェクトとなります。またレコードを追加および更新する際はKitnoenRecオブジェクトを引数に指定します。
コンストラクタ
class KintoneRec():
def __init__(self):
レコード番号を取得する
get_rec_id()メソッドでレコード番号を取得します。
from kintonelib.kintone_app import KintoneApp
from kintonelib.kintone_field import KintoneField
kntn = KintoneApp(5, "ghk4afkhot_api_token", "", "subdomain")
# フィールドオブジェクトを取得する
field_no:KintoneField = kntn.get_field_obj("会員番号")
field_name:KintoneField = kntn.get_field_obj("会員名")
# 全レコードを取得する
records = kntn.get_allrecords([field_no, field_name])
# 取得したレコード
for rec in records:
rec_id = rec.get_rec_id()
# レコード番号を表示
print(f"{rec_id}")
KintoneValue系オブジェクトを取得する
from kintonelib.kintone_app import KintoneApp
from kintonelib.kintone_field import KintoneField
kntn = KintoneApp(5, "ghk4afkhot_api_token", "", "subdomain")
# フィールドオブジェクトを取得する
field_no:KintoneField = kntn.get_field_obj("会員番号")
field_name:KintoneField = kntn.get_field_obj("会員名")
# 全レコードを取得する
records = kntn.get_allrecords([field_no, field_name])
# KintoneValueオブジェクトを取得する
field_no_obj = records[0].get(field_no)
取得されるオブジェクトは次のうちのどれかです。
KintoneValue, KintoneUserValue, KintoneFileValue, KintoneSelectValue, KintoneSubTableValue, KintoneMultipleValue
KintoneValue系のクラスについてはこちらを参照してください。
KintoneValue系オブジェクトを追加する
from kintonelib.kintone_app import KintoneApp
from kintonelib.kintone_rec import KintoneRec
from kintonelib.kintone_value import KintoneValue
from kintonelib.kintone_field import KintoneField
kntn = KintoneApp(5, "ghk4afkhot_api_token", "", "subdomain")
field_no:KintoneField = kntn.get_field_obj("会員番号")
rec_01 = KintoneRec()
rec_01.put(field_no, KintoneValue("123"))
put()メソッドでKinotoneRecオブジェクトに値を追加します。
指定したフィールドオブジェクトが既にある場合はエラーになります。フィールドオブジェクトが存在するかどうかを確認するにはis_exist_field()メソッドを使います。
from kintonelib.kintone_app import KintoneApp
from kintonelib.kintone_rec import KintoneRec
from kintonelib.kintone_value import KintoneValue
from kintonelib.kintone_field import KintoneField
kntn = KintoneApp(5, "ghk4afkhot_api_token", "", "subdomain")
field_no:KintoneField = kntn.get_field_obj("会員番号")
field_name:KintoneField = kntn.get_field_obj("会員名")
rec_01 = KintoneRec()
rec_01.put(field_no, KintoneValue("123"))
print(rec_01.is_exist_field(field_no))
# true
# フィールドオブジェクトが存在しないことを確認してから安全にput
if not rec_01.is_exist_field(field_name):
rec_01.put(field_name, KintoneValue("山田たかし"))
値を取り除く
kintoneRecオブジェクトから値を取り除くにはpop()メソッドを使用します。
from kintonelib.kintone_app import KintoneApp
from kintonelib.kintone_rec import KintoneRec
from kintonelib.kintone_value import KintoneValue
from kintonelib.kintone_field import KintoneField
kntn = KintoneApp(5, "ghk4afkhot_api_token", "", "subdomain")
field_no:KintoneField = kntn.get_field_obj("会員番号")
field_name:KintoneField = kntn.get_field_obj("会員名")
rec_01 = KintoneRec()
rec_01.put(field_no, KintoneValue("123"))
# すでにある値を削除してから再度セットする
rec_01.pop(field_no)
rec_01.put(field_no, KintoneValue("456"))
この記事が気に入ったらサポートをしてみませんか?