iReport 4.2を使用しており、次のことをしようとしています。
データベースから BOM のような形式 (またはツリー形式) でデータを取得し、レベルに従ってフィールドを正しくシフトする必要があります。私は階層ツリーをやっています
例えば
A.
A.a
A.b
B.
B.a
B.a.a
助言がありますか。私はいくつかの調査を行いましたが、何を探すべきかさえわかりません:)
iReport 4.2を使用しており、次のことをしようとしています。
データベースから BOM のような形式 (またはツリー形式) でデータを取得し、レベルに従ってフィールドを正しくシフトする必要があります。私は階層ツリーをやっています
例えば
A.
A.a
A.b
B.
B.a
B.a.a
助言がありますか。私はいくつかの調査を行いましたが、何を探すべきかさえわかりません:)
次の select を書き、ID を空白にレベルを乗じて変更しました。
ocs_season_questionnaire_id ,id, code, title, description, 0, '1' を ocs_season_report_unit から選択します。ここで、supervisor_id は null で、ocs_season_questionnaire_id = 5 です。
union all
select C.ocs_season_questionnaire_id, C.id, C.code, C.title, C.description, depth+1, xid||'.'||C.id
from sumthis P
inner join ocs_season_report_unit C on P.id = C.supervisor_id
)
select id, lpad('', depth*2)||title as title, description from sumthis where ocs_season_questionnaire_id = $P{qu_id}
最善の解決策ではないので、誰かがより良い解決策を知っている場合は、回答してください。ありがとうございました