diff --git a/lib/kintone/query.rb b/lib/kintone/query.rb index e050a10..373fcd1 100644 --- a/lib/kintone/query.rb +++ b/lib/kintone/query.rb @@ -28,6 +28,10 @@ def login_user function_string('LOGINUSER()') end + def primary_organization + function_string('PRIMARY_ORGANIZATION()') + end + def now function_string('NOW()') end diff --git a/spec/kintone/query_spec.rb b/spec/kintone/query_spec.rb index 0bb4e6f..2d285bf 100644 --- a/spec/kintone/query_spec.rb +++ b/spec/kintone/query_spec.rb @@ -252,11 +252,30 @@ context 'in', 'with f' do where(:target, :result) do [ - [Kintone::Query.new { f(:dropdown).in(['"A"', '"B"']) }, 'dropdown in ("A", "B")'], - [Kintone::Query.new { f(:dropdown).in(%w(A B)) }, 'dropdown in ("A", "B")'], - [Kintone::Query.new { f(:dropdown).in([:A, :B]) }, 'dropdown in ("A", "B")'], - [Kintone::Query.new { f(:dropdown).in([100, 200]) }, 'dropdown in (100, 200)'], - [Kintone::Query.new { f('作成者').in([login_user]) }, '作成者 in (LOGINUSER())'] + [ + Kintone::Query.new { f(:dropdown).in(['"A"', '"B"']) }, + 'dropdown in ("A", "B")' + ], + [ + Kintone::Query.new { f(:dropdown).in(%w(A B)) }, + 'dropdown in ("A", "B")' + ], + [ + Kintone::Query.new { f(:dropdown).in([:A, :B]) }, + 'dropdown in ("A", "B")' + ], + [ + Kintone::Query.new { f(:dropdown).in([100, 200]) }, + 'dropdown in (100, 200)' + ], + [ + Kintone::Query.new { f('作成者').in([login_user]) }, + '作成者 in (LOGINUSER())' + ], + [ + Kintone::Query.new { field('組織').in([primary_organization]) }, + '組織 in (PRIMARY_ORGANIZATION())' + ] ] end @@ -287,6 +306,10 @@ [ Kintone::Query.new { field('作成者').not_in([login_user]) }, '作成者 not in (LOGINUSER())' + ], + [ + Kintone::Query.new { field('組織').not_in([primary_organization]) }, + '組織 not in (PRIMARY_ORGANIZATION())' ] ] end