<ROOT>
 <APPS_INITIALIZE_DATA>
  <USER_NAME>ENGINATICS</USER_NAME>
  <RESPONSIBILITY_KEY>SYSTEM_ADMINISTRATOR</RESPONSIBILITY_KEY>
  <APPLICATION_SHORT_NAME>SYSADMIN</APPLICATION_SHORT_NAME>
 </APPS_INITIALIZE_DATA>
<LOVS>
<!-- loader xml for Enginatics Blitz Report lov: GL Ledger -->
 <LOVS_ROW>
  <GUID>8E2FF36EDEB879D2E0530100007F1FF2</GUID>
  <LOV_NAME>GL Ledger</LOV_NAME>
  <VALIDATE_FROM_LIST>Y</VALIDATE_FROM_LIST>
  <LOV_QUERY>select
gl.name value,
fifsv.id_flex_structure_name||&apos;: &apos;||decode(gl.ledger_category_code,&apos;NONE&apos;,xxen_util.meaning(gl.object_type_code,&apos;LEDGERS&apos;,101),xxen_util.meaning(gl.ledger_category_code,&apos;GL_ASF_LEDGER_CATEGORY&apos;,101))||&apos;: &apos;||gl.description description
from
gl_ledgers gl,
fnd_id_flex_structures_vl fifsv
where
(:$flex$.ledger_category is null or gl.ledger_category_code=xxen_util.lookup_code(:$flex$.ledger_category,&apos;GL_ASF_LEDGER_CATEGORY&apos;,101,&apos;Y&apos;)) and
(:$flex$.chart_of_accounts is null or xxen_util.contains(:$flex$.chart_of_accounts,fifsv.id_flex_structure_name)=&apos;Y&apos;) and
gl.ledger_id in (select nvl(glsnav.ledger_id,gasna.ledger_id) from gl_access_set_norm_assign gasna, gl_ledger_set_norm_assign_v glsnav where gasna.access_set_id=fnd_profile.value(&apos;GL_ACCESS_SET_ID&apos;) and gasna.ledger_id=glsnav.ledger_set_id(+)) and
gl.chart_of_accounts_id=fifsv.id_flex_num and
fifsv.id_flex_code=&apos;GL#&apos; and
fifsv.application_id=101
order by
fifsv.id_flex_structure_name,
decode(gl.ledger_category_code,&apos;PRIMARY&apos;,1,&apos;SECONDARY&apos;,2,&apos;ALC&apos;,3,&apos;NONE&apos;,4),
gl.name</LOV_QUERY>
  <LOV_TRANSLATIONS>
   <LOV_TRANSLATIONS_ROW>
    <LANGUAGE>AR</LANGUAGE>
    <DESCRIPTION>دفاتر الأستاذ المقيدة بمجموعة الوصول ، المحددة بواسطة قيمة الملف الشخصي &quot;مجموعة الوصول إلى بيانات GL&quot; لمسؤولية تسجيل الدخول الحالية</DESCRIPTION>
   </LOV_TRANSLATIONS_ROW>
   <LOV_TRANSLATIONS_ROW>
    <LANGUAGE>D</LANGUAGE>
    <DESCRIPTION>Ledger, die durch das Zugriffsset eingeschränkt sind, definiert durch den Profilwert &apos;GL Data Access Set&apos; der aktuellen Anmeldeverantwortung</DESCRIPTION>
   </LOV_TRANSLATIONS_ROW>
   <LOV_TRANSLATIONS_ROW>
    <LANGUAGE>E</LANGUAGE>
    <DESCRIPTION>Libros restringidos por el conjunto de acceso, definido por el valor del perfil &quot;Conjunto de acceso a datos GL&quot; de la responsabilidad de inicio de sesión actual</DESCRIPTION>
   </LOV_TRANSLATIONS_ROW>
   <LOV_TRANSLATIONS_ROW>
    <LANGUAGE>F</LANGUAGE>
    <DESCRIPTION>Grands livres limités par un ensemble d&apos;accès, défini par la valeur du profil &quot;GL Data Access Set&quot; de la responsabilité de connexion actuelle</DESCRIPTION>
   </LOV_TRANSLATIONS_ROW>
   <LOV_TRANSLATIONS_ROW>
    <LANGUAGE>I</LANGUAGE>
    <DESCRIPTION>Libri mastri limitati dal set di accesso, definito dal valore del profilo &apos;GL Data Access Set&apos; della responsabilità di login corrente</DESCRIPTION>
   </LOV_TRANSLATIONS_ROW>
   <LOV_TRANSLATIONS_ROW>
    <LANGUAGE>JA</LANGUAGE>
    <DESCRIPTION>現在のログイン責任者のプロファイル値&apos;GL Data Access Set&apos;によって定義されたアクセスセットによって制限された元帳</DESCRIPTION>
   </LOV_TRANSLATIONS_ROW>
   <LOV_TRANSLATIONS_ROW>
    <LANGUAGE>KO</LANGUAGE>
    <DESCRIPTION>현재 로그인 권한의 프로파일 값 &apos;GL 데이터 액세스 세트&apos;로 정의 된 액세스 세트로 제한되는 원장</DESCRIPTION>
   </LOV_TRANSLATIONS_ROW>
   <LOV_TRANSLATIONS_ROW>
    <LANGUAGE>PTB</LANGUAGE>
    <DESCRIPTION>Ledgers restritos pelo conjunto de acesso, definido pelo valor do perfil &apos;GL Data Access Set&apos; da atual responsabilidade de login</DESCRIPTION>
   </LOV_TRANSLATIONS_ROW>
   <LOV_TRANSLATIONS_ROW>
    <LANGUAGE>RU</LANGUAGE>
    <DESCRIPTION>Леджеры, ограниченные набором доступа, определяемые значением профиля &quot;GL Data Access Set&quot; текущей ответственности за вход в систему</DESCRIPTION>
   </LOV_TRANSLATIONS_ROW>
   <LOV_TRANSLATIONS_ROW>
    <LANGUAGE>S</LANGUAGE>
    <DESCRIPTION>Ledgers begränsade av åtkomstuppsättning, definierade av profilvärde &apos;GL Data Access Set&apos; för det aktuella inloggningsansvaret</DESCRIPTION>
   </LOV_TRANSLATIONS_ROW>
   <LOV_TRANSLATIONS_ROW>
    <LANGUAGE>TR</LANGUAGE>
    <DESCRIPTION>Mevcut oturum açma sorumluluğunun profil değeri &apos;GL Veri Erişim Kümesi&apos; ile tanımlanan erişim kümesiyle kısıtlanmış defterler</DESCRIPTION>
   </LOV_TRANSLATIONS_ROW>
   <LOV_TRANSLATIONS_ROW>
    <LANGUAGE>US</LANGUAGE>
    <DESCRIPTION>Ledgers restricted by access set, defined by profile value &apos;GL Data Access Set&apos; of the current login responsibility</DESCRIPTION>
   </LOV_TRANSLATIONS_ROW>
   <LOV_TRANSLATIONS_ROW>
    <LANGUAGE>ZHS</LANGUAGE>
    <DESCRIPTION>由访问集限制的分类账，由当前登录责任的配置文件值 &quot;GL数据访问集 &quot;定义。</DESCRIPTION>
   </LOV_TRANSLATIONS_ROW>
  </LOV_TRANSLATIONS>
 </LOVS_ROW>
</LOVS>
<REPORTS>
<!-- loader xml for Enginatics Blitz Report: GL Oracle FSG Converter -->
 <REPORTS_ROW>
  <GUID>1D3054367EA507B3E06362FB09059659</GUID>
  <SQL_TEXT>select x.* from (
with merged_data as (
select distinct
listagg(y.column_header,&apos;|&apos;)within group (order by y.sequence_) over (partition by 1) column_header,
listagg(y.sequence,&apos;|&apos;)within group (order by y.sequence_) over (partition by 1) sequence,
listagg(y.description,&apos;|&apos;)within group (order by y.sequence_) over (partition by 1) description,
replace(listagg(y.amount_type,&apos;|&apos;)within group (order by y.sequence_) over (partition by 1),&apos;~^&apos;) amount_type,
replace(listagg(y.period,&apos;|&apos;)within group (order by y.sequence_) over (partition by 1),&apos;~^&apos;) period,
replace(listagg(nvl(y.calculation,&apos;~^&apos;),&apos;|&apos;)within group (order by y.sequence_) over (partition by 1),&apos;~^&apos;) calculation,
y.report_title,
&amp;column_segments
y.segment_name override_segment_name,
replace(listagg(nvl(y.segment_override_value,&apos;~^&apos;),&apos;|&apos;)within group (order by y.sequence_) over (partition by 1),&apos;~^&apos;) override_segment_value,
replace(listagg(nvl(y.calculation_precedence_flag,&apos;~^&apos;),&apos;|&apos;)within group (order by y.sequence_) over (partition by 1),&apos;~^&apos;) calculation_precedence_flag,
replace(listagg(nvl(y.multiply,&apos;~^&apos;),&apos;|&apos;)within group (order by y.sequence_) over (partition by 1),&apos;~^&apos;) multiply,
replace(listagg(nvl(y.movement,&apos;~^&apos;),&apos;|&apos;)within group (order by y.sequence_) over (partition by 1),&apos;~^&apos;) movement
from
(
select distinct
&amp;column_segments_
x.report_title,
x.position,
x.segment_override,
x.column_header,
x.sequence,
x.sequence_,
x.description,
x.amount_type,
x.period,
x.calculation,
x.segment_name,
x.segment_override_value,
x.calculation_precedence_flag,
x.multiply,
x.movement,
x.cnt
from
(
select distinct
rrv.report_title,
rrav.position,
rrv.segment_override,
rrav.name column_header,
rrav.sequence,
rrav.sequence sequence_,
rrav.description,
nvl(rrav.amount_type,&apos;~^&apos;) amount_type,
case
when rrav.period_offset=0 then &apos;&apos;&apos;=enter_period_name&apos;
when nvl(rrav.period_offset,0)&lt;&gt;0 then &apos;&apos;&apos;=br_period_offset(enter_period_name,&quot;&apos;||rrav.period_offset||&apos;&quot;,,,)&apos;
when rrav.amount_type is not null then &apos;&apos;&apos;=enter_period_name&apos;
else &apos;~^&apos;
end period,
nvl(replace((select distinct
&apos;&apos;&apos;=&apos;||listagg(case when rrc.axis_seq_low=rrc.axis_seq_high then replace(rrc.operator||rrc.axis_seq_low,&apos;ENTER&apos;) when  rrc.axis_name_low=rrc.axis_name_high or (rrc.axis_name_low is not null and rrc.axis_name_high is null)  or (rrc.axis_name_low is null and rrc.axis_name_high is not null) then replace(rrc.operator||rrc.axis_name_low,&apos;ENTER&apos;)
else
case when rrc.operator=&apos;+&apos; then case when rrc.constant is null then  &apos;+sum(&apos;||nvl(to_char(rrc.axis_seq_low),rrc.axis_name_low)||&apos;:&apos;||nvl(to_char(rrc.axis_seq_high),rrc.axis_name_high)||&apos;)&apos; else &apos;+&apos;||rrc.constant end
when rrc.operator=&apos;-&apos; then case when rrc.constant is null then  &apos;-sum(&apos;||nvl(to_char(rrc.axis_seq_low),rrc.axis_name_low)||&apos;:&apos;||nvl(to_char(rrc.axis_seq_high),rrc.axis_name_high)||&apos;)&apos; else &apos;-&apos;||rrc.constant end
when rrc.operator=&apos;*&apos; then case when rrc.constant is null then  &apos;*sum(&apos;||nvl(to_char(rrc.axis_seq_low),rrc.axis_name_low)||&apos;:&apos;||nvl(to_char(rrc.axis_seq_high),rrc.axis_name_high)||&apos;)&apos; else &apos;*&apos;||rrc.constant end
when rrc.operator=&apos;/&apos; then case when rrc.constant is null then  &apos;/sum(&apos;||nvl(to_char(rrc.axis_seq_low),rrc.axis_name_low)||&apos;:&apos;||nvl(to_char(rrc.axis_seq_high),rrc.axis_name_high)||&apos;)&apos; else &apos;/&apos;||rrc.constant end
when rrc.operator=&apos;ENTER&apos; then  case
when nvl(to_char(rrc.axis_seq_low),rrc.axis_name_low) is not null and nvl(to_char(rrc.axis_seq_high),rrc.axis_name_high) is not null then &apos;sum(&apos;||nvl(to_char(rrc.axis_seq_low),rrc.axis_name_low)||&apos;:&apos;||nvl(to_char(rrc.axis_seq_high),rrc.axis_name_high)||&apos;)&apos;
when rrc.constant is null then &apos;+&apos;||nvl(nvl(to_char(rrc.axis_seq_high),rrc.axis_name_high),nvl(to_char(rrc.axis_seq_low),rrc.axis_name_low))
else &apos;+&apos;||rrc.constant
end
else nvl(to_char(rrc.axis_seq_high),rrc.axis_name_high)||&apos;%&apos;||nvl(to_char(rrc.axis_seq_low),rrc.axis_name_low) end
end,&apos;&apos;) within group (order by rrc.calculation_seq) over (partition by rrc.axis_seq)
from
rg_report_calculations rrc
where
rrav.axis_set_id=rrc.axis_set_id and
rrav.sequence=rrc.axis_seq ),&apos;=+&apos;,&apos;=&apos;),&apos;~^&apos;) calculation,
rrasv.segment_name,
rrav.segment_override_value,
rrav.calculation_precedence_flag,
&apos;1&apos; multiply,
case when rrac.dr_cr_net_code=&apos;N&apos; then &apos;Net&apos; when rrac.dr_cr_net_code=&apos;D&apos; then &apos;Dr&apos; when rrac.dr_cr_net_code=&apos;C&apos; then &apos;Cr&apos; end movement,
&amp;column_segments_base
count(*) over (partition by rrav.sequence) cnt
from
rg_reports_v rrv,
rg_report_axes_v rrav,
rg_report_axis_contents rrac,
rg_report_axis_sets_v rrasv
where
1=1 and
rrv.column_set_id=rrasv.axis_set_id(+) and
rrav.axis_set_id=rrv.column_set_id and
rrav.axis_set_id=rrac.axis_set_id(+) and
rrav.sequence=rrac.axis_seq(+)
order by
rrav.position
) x
) y
)
select null multiply, null movement, null segment_display, &amp;columnset_null_segments &apos;Ledger:&apos; description, null sequence, null calculation, null line_format, :ledger column_value from merged_data
union all
select null multiply, null movement, null segment_display, &amp;columnset_null_segments &apos;Report Title:&apos; description, null sequence, null calculation, null line_format, report_title column_value from merged_data
union all
select null multiply, null movement, null segment_display, &amp;columnset_null_segments &apos;Current Period:&apos; description, null sequence, null calculation, null line_format, xxen_util.latest_open_period(:ledger) column_value from merged_data
union all
select null multiply, null movement, null segment_display, &amp;columnset_null_segments &apos;Override Segment Name&apos; description, null sequence, null calculation, null line_format, override_segment_name column_value from merged_data
union all
select null multiply, null movement, null segment_display, &amp;columnset_null_segments &apos;Calculation Precedence&apos; description, null sequence, null calculation, null line_format, calculation_precedence_flag column_value from merged_data
union all
select null multiply, null movement, null segment_display, &amp;columnset_null_segments &apos;Sequence&apos; description, null sequence, null calculation, null line_format, sequence column_value from merged_data
union all
select null multiply, null movement, null segment_display, &amp;columnset_null_segments &apos;Column Calculations&apos; description, null sequence, null calculation, null line_format, calculation column_value from merged_data
union all
select null multiply, null movement, null segment_display, &amp;columnset_null_segments &apos;Column Header&apos; description, null sequence, null calculation, null line_format, column_header column_value from merged_data
union all
select null multiply, null movement, null segment_display, &amp;columnset_null_segments &apos;Amount Type&apos; description, null sequence, null calculation, null line_format, amount_type column_value from merged_data
union all
select null multiply, null movement, null segment_display, &amp;columnset_null_segments &apos;Periods&apos; description, null sequence, null calculation, null line_format, period column_value from merged_data
union all select null multiply, null movement, null segment_display, &amp;columnset_null_segments &apos;Multiply&apos; description, null sequence, null calculation, null line_format, multiply column_value from merged_data
union all select null multiply, null movement, null segment_display, &amp;columnset_null_segments &apos;Movement&apos; description, null sequence, null calculation, null line_format, movement column_value from merged_data
union all
select null multiply, null movement, null segment_display, &amp;columnset_null_segments &apos;Override Segment Value&apos; description, null sequence, null calculation, null line_format, override_segment_value column_value from merged_data
&amp;column_segments_union
) x
union all
select distinct y.* from (
select distinct
case when x.sign = &apos;+&apos; then 1 when x.sign = &apos;-&apos; then 1 end multiply,
case when x.dr_cr_net_code=&apos;N&apos; then &apos;Net&apos; when x.dr_cr_net_code=&apos;D&apos; then &apos;Dr&apos; when x.dr_cr_net_code=&apos;C&apos; then &apos;Cr&apos; end movement,
case when x.row_type=&apos;R&apos; then x.segment_display end segment_display,
&amp;rowset_segments_case
x.description,
x.sequence||&apos;:&apos;||x.axis_name sequence,
case when x.row_type=&apos;C&apos; then
replace((select distinct
&apos;&apos;&apos;=&apos;||listagg(case when rrc.axis_seq_low=rrc.axis_seq_high then replace(rrc.operator||rrc.axis_seq_low,&apos;ENTER&apos;) when rrc.axis_name_low=rrc.axis_name_high or (rrc.axis_name_low is not null and rrc.axis_name_high is null)  or (rrc.axis_name_low is null and rrc.axis_name_high is not null) then replace(rrc.operator||rrc.axis_name_low,&apos;ENTER&apos;)
else
case when rrc.operator=&apos;+&apos; then  case when rrc.constant is null then &apos;+sum(&apos;||nvl(to_char(rrc.axis_seq_low),rrc.axis_name_low)||&apos;:&apos;||nvl(to_char(rrc.axis_seq_high),rrc.axis_name_high)||&apos;)&apos; else &apos;+&apos;||rrc.constant end
when rrc.operator=&apos;-&apos; then case when rrc.constant is null then &apos;-sum(&apos;||nvl(to_char(rrc.axis_seq_low),rrc.axis_name_low)||&apos;:&apos;||nvl(to_char(rrc.axis_seq_high),rrc.axis_name_high)||&apos;)&apos; else &apos;-&apos;||rrc.constant end
when rrc.operator=&apos;*&apos; then case when rrc.constant is null then &apos;*sum(&apos;||nvl(to_char(rrc.axis_seq_low),rrc.axis_name_low)||&apos;:&apos;||nvl(to_char(rrc.axis_seq_high),rrc.axis_name_high)||&apos;)&apos; else &apos;*&apos;||rrc.constant end
when rrc.operator=&apos;/&apos; then case when rrc.constant is null then &apos;/sum(&apos;||nvl(to_char(rrc.axis_seq_low),rrc.axis_name_low)||&apos;:&apos;||nvl(to_char(rrc.axis_seq_high),rrc.axis_name_high)||&apos;)&apos; else &apos;/&apos;||rrc.constant end
when rrc.operator=&apos;ENTER&apos; then  case
when nvl(to_char(rrc.axis_seq_low),rrc.axis_name_low) is not null and nvl(to_char(rrc.axis_seq_high),rrc.axis_name_high) is not null then &apos;sum(&apos;||nvl(to_char(rrc.axis_seq_low),rrc.axis_name_low)||&apos;:&apos;||nvl(to_char(rrc.axis_seq_high),rrc.axis_name_high)||&apos;)&apos;
when rrc.constant is null then &apos;+&apos;||nvl(nvl(to_char(rrc.axis_seq_high),rrc.axis_name_high),nvl(to_char(rrc.axis_seq_low),rrc.axis_name_low))
else &apos;+&apos;||rrc.constant
end
else nvl(to_char(rrc.axis_seq_high),rrc.axis_name_high)||&apos;%&apos;||nvl(to_char(rrc.axis_seq_low),rrc.axis_name_low) end
end,&apos;&apos;) within group (order by rrc.calculation_seq) over (partition by rrc.axis_seq)
from
rg_report_calculations rrc
where
rrc.axis_set_id=x.axis_set_id and
rrc.axis_seq=x.sequence),&apos;=+&apos;,&apos;=&apos;) end calculation,
x.line_format,
null column_value
from
(
select
rrav.sequence,
count(*) over (partition by rrav.sequence) cnt,
rrac.range_mode,
rrac.sign,
rrac.dr_cr_net_code,
&amp;rowset_segment_display
&amp;rowset_segments
rrav.description,
case when rrc.calculation_seq is not null then &apos;C&apos; when rrac.axis_set_id is not null then &apos;R&apos; else &apos;T&apos; end row_type,
rrav.before_axis_string||&apos;:&apos;||rrav.after_axis_string||&apos;:&apos;||rrav.number_lines_skipped_before||&apos;:&apos;||rrav.number_lines_skipped_after line_format,
rrav.axis_set_id,
rrav.name axis_name
from
rg_reports_v rrv,
rg_report_axes_v rrav,
rg_report_axis_contents rrac,
rg_report_calculations rrc
where
1=1 and
rrav.axis_set_id=rrv.row_set_id and
rrav.display_flag=&apos;Y&apos; and
rrav.axis_set_id=rrac.axis_set_id(+) and
rrav.sequence=rrac.axis_seq(+) and
rrav.axis_set_id=rrc.axis_set_id(+) and
rrav.sequence=rrc.axis_seq(+)
) x
order by
to_number(substr(sequence,1,instr(sequence,&apos;:&apos;)-1))
) y
union all
select y.* from(
select
null mutliply,
null movement,
null segment_display, 
&amp;contentset_select_segments
&apos;Content Set&apos; description,
null sequence,
null calculation,
null line_format,
null column_value
from
(
select
&amp;contentset_case_segments
rrco.override_seq
from
rg_reports_v rrv,
rg_report_content_overrides rrco
where
1=1 and
rrv.content_set_id=rrco.content_set_id
) x
order by
x.override_seq
) y</SQL_TEXT>
  <ENABLED>Y</ENABLED>
  <REPORT_TRANSLATIONS>
   <REPORT_TRANSLATIONS_ROW>
    <LANGUAGE>US</LANGUAGE>
    <REPORT_NAME>GL Oracle FSG Converter</REPORT_NAME>
    <DESCRIPTION>** This report is used by the GL Financial Statement and Drilldown report, to migrate financial statement reports from Oracle FSG. **

The GL Oracle FSG Converter is used for migration of financial statement reports from Oracle Financial Statement Generator (FSG) into the GL Financial Statement and Drilldown (FSG) report. This converter simplifies the process of transferring the existing Oracle FSG reports, allowing users to leverage advanced reporting and drilldown capabilities with minimal setup.

This version supports DB versions above 12c. To apply the converter, the profile &apos;Blitz FSG Oracle to Blitz Report Converter&apos; must be updated with the relevant report name based on the db version.

For a quick demonstration of GL Financial Statement and Drilldown (FSG), refer to our YouTube video.
https://youtu.be/dsRWXT2bem8?si=bA8cAxuXjfrMI-SI</DESCRIPTION>
   </REPORT_TRANSLATIONS_ROW>
  </REPORT_TRANSLATIONS>
  <CATEGORY_ASSIGNMENTS>
   <CATEGORY_ASSIGNMENTS_ROW>
    <CATEGORY>Enginatics</CATEGORY>
   </CATEGORY_ASSIGNMENTS_ROW>
   <CATEGORY_ASSIGNMENTS_ROW>
    <CATEGORY>R12 only</CATEGORY>
   </CATEGORY_ASSIGNMENTS_ROW>
  </CATEGORY_ASSIGNMENTS>
  <ANCHORS>
   <ANCHORS_ROW>
    <ANCHOR>&amp;column_segments</ANCHOR>
   </ANCHORS_ROW>
   <ANCHORS_ROW>
    <ANCHOR>&amp;column_segments_</ANCHOR>
   </ANCHORS_ROW>
   <ANCHORS_ROW>
    <ANCHOR>&amp;column_segments_base</ANCHOR>
   </ANCHORS_ROW>
   <ANCHORS_ROW>
    <ANCHOR>&amp;column_segments_union</ANCHOR>
   </ANCHORS_ROW>
   <ANCHORS_ROW>
    <ANCHOR>&amp;columnset_null_segments</ANCHOR>
   </ANCHORS_ROW>
   <ANCHORS_ROW>
    <ANCHOR>&amp;contentset_case_segments</ANCHOR>
   </ANCHORS_ROW>
   <ANCHORS_ROW>
    <ANCHOR>&amp;contentset_select_segments</ANCHOR>
   </ANCHORS_ROW>
   <ANCHORS_ROW>
    <ANCHOR>&amp;rowset_segment_display</ANCHOR>
   </ANCHORS_ROW>
   <ANCHORS_ROW>
    <ANCHOR>&amp;rowset_segments</ANCHOR>
   </ANCHORS_ROW>
   <ANCHORS_ROW>
    <ANCHOR>&amp;rowset_segments_case</ANCHOR>
   </ANCHORS_ROW>
   <ANCHORS_ROW>
    <ANCHOR>1=1</ANCHOR>
   </ANCHORS_ROW>
   <ANCHORS_ROW>
    <ANCHOR>:ledger</ANCHOR>
   </ANCHORS_ROW>
  </ANCHORS>
  <PARAMETERS>
   <PARAMETERS_ROW>
    <SORT_ORDER>1</SORT_ORDER>
    <DISPLAY_SEQUENCE>10</DISPLAY_SEQUENCE>
    <ANCHOR>1=1</ANCHOR>
    <SQL_TEXT>rrv.name=:report_name</SQL_TEXT>
    <PARAMETER_TYPE_DSP>LOV custom</PARAMETER_TYPE_DSP>
    <VALIDATE_FROM_LIST_DSP>Y</VALIDATE_FROM_LIST_DSP>
    <LOV_QUERY_DSP>select
rrv.name value,
rrv.report_title description
from
rg_reports_v rrv
order by
value</LOV_QUERY_DSP>
    <REQUIRED>Y</REQUIRED>
    <PARAMETER_TRANSLATIONS>
     <PARAMETER_TRANSLATIONS_ROW>
      <LANGUAGE>US</LANGUAGE>
      <PARAMETER_NAME>Report Name</PARAMETER_NAME>
     </PARAMETER_TRANSLATIONS_ROW>
    </PARAMETER_TRANSLATIONS>
   </PARAMETERS_ROW>
   <PARAMETERS_ROW>
    <SORT_ORDER>2</SORT_ORDER>
    <DISPLAY_SEQUENCE>20</DISPLAY_SEQUENCE>
    <ANCHOR>:ledger</ANCHOR>
    <PARAMETER_TYPE_DSP>LOV</PARAMETER_TYPE_DSP>
    <LOV_NAME>GL Ledger</LOV_NAME>
    <LOV_GUID>8E2FF36EDEB879D2E0530100007F1FF2</LOV_GUID>
    <VALIDATE_FROM_LIST_DSP>Y</VALIDATE_FROM_LIST_DSP>
    <LOV_QUERY_DSP>select
gl.name value,
fifsv.id_flex_structure_name||&apos;: &apos;||decode(gl.ledger_category_code,&apos;NONE&apos;,xxen_util.meaning(gl.object_type_code,&apos;LEDGERS&apos;,101),xxen_util.meaning(gl.ledger_category_code,&apos;GL_ASF_LEDGER_CATEGORY&apos;,101))||&apos;: &apos;||gl.description description
from
gl_ledgers gl,
fnd_id_flex_structures_vl fifsv
where
(:$flex$.ledger_category is null or gl.ledger_category_code=xxen_util.lookup_code(:$flex$.ledger_category,&apos;GL_ASF_LEDGER_CATEGORY&apos;,101,&apos;Y&apos;)) and
(:$flex$.chart_of_accounts is null or xxen_util.contains(:$flex$.chart_of_accounts,fifsv.id_flex_structure_name)=&apos;Y&apos;) and
gl.ledger_id in (select nvl(glsnav.ledger_id,gasna.ledger_id) from gl_access_set_norm_assign gasna, gl_ledger_set_norm_assign_v glsnav where gasna.access_set_id=fnd_profile.value(&apos;GL_ACCESS_SET_ID&apos;) and gasna.ledger_id=glsnav.ledger_set_id(+)) and
gl.chart_of_accounts_id=fifsv.id_flex_num and
fifsv.id_flex_code=&apos;GL#&apos; and
fifsv.application_id=101
order by
fifsv.id_flex_structure_name,
decode(gl.ledger_category_code,&apos;PRIMARY&apos;,1,&apos;SECONDARY&apos;,2,&apos;ALC&apos;,3,&apos;NONE&apos;,4),
gl.name</LOV_QUERY_DSP>
    <DEFAULT_VALUE>select coalesce(xxen_util.previous_parameter_value(:parameter_id),xxen_util.default_ledger) from dual where :$flex$.ledger_category is null</DEFAULT_VALUE>
    <REQUIRED>Y</REQUIRED>
    <PARAMETER_TRANSLATIONS>
     <PARAMETER_TRANSLATIONS_ROW>
      <LANGUAGE>US</LANGUAGE>
      <PARAMETER_NAME>Ledger</PARAMETER_NAME>
     </PARAMETER_TRANSLATIONS_ROW>
    </PARAMETER_TRANSLATIONS>
   </PARAMETERS_ROW>
   <PARAMETERS_ROW>
    <SORT_ORDER>3</SORT_ORDER>
    <ANCHOR>&amp;column_segments</ANCHOR>
    <SQL_TEXT>select distinct
&apos;replace(listagg(nvl(y.&apos;||lower(fifsv.application_column_name)||&apos;_,&apos;&apos;~^&apos;&apos;),&apos;&apos;|&apos;&apos;)within group (order by y.sequence_) over (partition by 1),&apos;&apos;%&apos;&apos;) &apos;||lower(fifsv.application_column_name)||&apos;, &apos; text,
min(fifsv.id_flex_num) over (partition by fifsv.application_column_name, fifsv.form_left_prompt) min_id_flex_num,
min(fifsv.segment_num) over (partition by fifsv.application_column_name, fifsv.form_left_prompt) min_segment_num
from
(select xxen_util.init_cap(fifsv.form_left_prompt) form_left_prompt_, fifsv.* from fnd_id_flex_segments_vl fifsv) fifsv
where
fifsv.application_id=101 and
fifsv.id_flex_code=&apos;GL#&apos; and
fifsv.id_flex_num in (select gl.chart_of_accounts_id from gl_ledgers gl where xxen_util.contains(:ledger,gl.name)=&apos;Y&apos;)
order by
min_id_flex_num,
min_segment_num</SQL_TEXT>
    <PARAMETER_TRANSLATIONS>
     <PARAMETER_TRANSLATIONS_ROW>
      <LANGUAGE>US</LANGUAGE>
      <PARAMETER_NAME>Ledger</PARAMETER_NAME>
     </PARAMETER_TRANSLATIONS_ROW>
    </PARAMETER_TRANSLATIONS>
   </PARAMETERS_ROW>
   <PARAMETERS_ROW>
    <SORT_ORDER>4</SORT_ORDER>
    <ANCHOR>&amp;column_segments_</ANCHOR>
    <SQL_TEXT>select distinct
&apos;nvl(case when x.cnt&gt;1 then listagg(distinct(x.&apos;||lower(fifsv.application_column_name)||&apos;),&apos;&apos;;&apos;&apos;) within group (order by 1) over (partition by x.sequence) else x.&apos;||lower(fifsv.application_column_name)||&apos; end,&apos;&apos;%&apos;&apos;) &apos;||lower(fifsv.application_column_name)||&apos;_, &apos; text,
min(fifsv.id_flex_num) over (partition by fifsv.application_column_name, fifsv.form_left_prompt) min_id_flex_num,
min(fifsv.segment_num) over (partition by fifsv.application_column_name, fifsv.form_left_prompt) min_segment_num
from
(select xxen_util.init_cap(fifsv.form_left_prompt) form_left_prompt_, fifsv.* from fnd_id_flex_segments_vl fifsv) fifsv
where
fifsv.application_id=101 and
fifsv.id_flex_code=&apos;GL#&apos; and
fifsv.id_flex_num in (select gl.chart_of_accounts_id from gl_ledgers gl where xxen_util.contains(:ledger,gl.name)=&apos;Y&apos;)
order by
min_id_flex_num,
min_segment_num</SQL_TEXT>
    <PARAMETER_TRANSLATIONS>
     <PARAMETER_TRANSLATIONS_ROW>
      <LANGUAGE>US</LANGUAGE>
      <PARAMETER_NAME>Ledger</PARAMETER_NAME>
     </PARAMETER_TRANSLATIONS_ROW>
    </PARAMETER_TRANSLATIONS>
   </PARAMETERS_ROW>
   <PARAMETERS_ROW>
    <SORT_ORDER>5</SORT_ORDER>
    <ANCHOR>&amp;column_segments_base</ANCHOR>
    <SQL_TEXT>select distinct
&apos;case when rrac.&apos;||lower(fifsv.application_column_name)||&apos;_low is not null and rrac.sign = &apos;&apos;-&apos;&apos; then &apos;&apos;~&apos;&apos; end||&apos;||&apos;rrac.&apos;||lower(fifsv.application_column_name)||&apos;_low||case when rrac.&apos;||lower(fifsv.application_column_name)||&apos;_low is not null and rrac.&apos;||lower(fifsv.application_column_name)||&apos;_low&lt;&gt;rrac.&apos;||lower(fifsv.application_column_name)||&apos;_high then &apos;&apos;-&apos;&apos;||regexp_replace(rrac.&apos;||lower(fifsv.application_column_name)||&apos;_high,&apos;&apos;z&apos;&apos;,&apos;&apos;9&apos;&apos;,1,0,&apos;&apos;i&apos;&apos;) end &apos;||lower(fifsv.application_column_name)||&apos;, &apos; text,
min(fifsv.id_flex_num) over (partition by fifsv.application_column_name, fifsv.form_left_prompt) min_id_flex_num,
min(fifsv.segment_num) over (partition by fifsv.application_column_name, fifsv.form_left_prompt) min_segment_num
from
(select xxen_util.init_cap(fifsv.form_left_prompt) form_left_prompt_, fifsv.* from fnd_id_flex_segments_vl fifsv) fifsv
where
fifsv.application_id=101 and
fifsv.id_flex_code=&apos;GL#&apos; and
fifsv.id_flex_num in (select gl.chart_of_accounts_id from gl_ledgers gl where xxen_util.contains(:ledger,gl.name)=&apos;Y&apos;)
order by
min_id_flex_num,
min_segment_num</SQL_TEXT>
    <PARAMETER_TRANSLATIONS>
     <PARAMETER_TRANSLATIONS_ROW>
      <LANGUAGE>US</LANGUAGE>
      <PARAMETER_NAME>Ledger</PARAMETER_NAME>
     </PARAMETER_TRANSLATIONS_ROW>
    </PARAMETER_TRANSLATIONS>
   </PARAMETERS_ROW>
   <PARAMETERS_ROW>
    <SORT_ORDER>6</SORT_ORDER>
    <ANCHOR>&amp;column_segments_union</ANCHOR>
    <SQL_TEXT>select distinct
&apos;union all select null multiply, null movement, null segment_display, &amp;columnset_null_segments  &apos;&apos;&apos;||Initcap(fifsv.application_column_name)||&apos;&apos;&apos; description, null sequence, null calculation, null line_format, &apos;||lower(fifsv.application_column_name)||&apos; column_value from merged_data&apos; text,
min(fifsv.id_flex_num) over (partition by fifsv.application_column_name, fifsv.form_left_prompt) min_id_flex_num,
min(fifsv.segment_num) over (partition by fifsv.application_column_name, fifsv.form_left_prompt) min_segment_num
from
(select xxen_util.init_cap(fifsv.form_left_prompt) form_left_prompt_, fifsv.* from fnd_id_flex_segments_vl fifsv) fifsv
where
fifsv.application_id=101 and
fifsv.id_flex_code=&apos;GL#&apos; and
fifsv.id_flex_num in (select gl.chart_of_accounts_id from gl_ledgers gl where xxen_util.contains(:ledger,gl.name)=&apos;Y&apos;)
order by
min_id_flex_num,
min_segment_num</SQL_TEXT>
    <PARAMETER_TRANSLATIONS>
     <PARAMETER_TRANSLATIONS_ROW>
      <LANGUAGE>US</LANGUAGE>
      <PARAMETER_NAME>Ledger</PARAMETER_NAME>
     </PARAMETER_TRANSLATIONS_ROW>
    </PARAMETER_TRANSLATIONS>
   </PARAMETERS_ROW>
   <PARAMETERS_ROW>
    <SORT_ORDER>7</SORT_ORDER>
    <ANCHOR>&amp;columnset_null_segments</ANCHOR>
    <SQL_TEXT>select distinct
&apos; null &apos;||lower(fifsv.application_column_name)||&apos;, &apos; text,
min(fifsv.id_flex_num) over (partition by fifsv.application_column_name, fifsv.form_left_prompt) min_id_flex_num,
min(fifsv.segment_num) over (partition by fifsv.application_column_name, fifsv.form_left_prompt) min_segment_num
from
(select xxen_util.init_cap(fifsv.form_left_prompt) form_left_prompt_, fifsv.* from fnd_id_flex_segments_vl fifsv) fifsv
where
fifsv.application_id=101 and
fifsv.id_flex_code=&apos;GL#&apos; and
fifsv.id_flex_num in (select gl.chart_of_accounts_id from gl_ledgers gl where xxen_util.contains(:ledger,gl.name)=&apos;Y&apos;)
order by
min_id_flex_num,
min_segment_num</SQL_TEXT>
    <PARAMETER_TRANSLATIONS>
     <PARAMETER_TRANSLATIONS_ROW>
      <LANGUAGE>US</LANGUAGE>
      <PARAMETER_NAME>Ledger</PARAMETER_NAME>
     </PARAMETER_TRANSLATIONS_ROW>
    </PARAMETER_TRANSLATIONS>
   </PARAMETERS_ROW>
   <PARAMETERS_ROW>
    <SORT_ORDER>8</SORT_ORDER>
    <ANCHOR>&amp;contentset_case_segments</ANCHOR>
    <SQL_TEXT>select distinct
&apos;rrco.&apos;||lower(fifsv.application_column_name)||&apos;_type,
rrco.&apos;||lower(fifsv.application_column_name)||&apos;_low||case when rrco.&apos;||lower(fifsv.application_column_name)||&apos;_low is not null and rrco.&apos;||lower(fifsv.application_column_name)||&apos;_low&lt;&gt;rrco.&apos;||lower(fifsv.application_column_name)||&apos;_high then &apos;&apos;-&apos;&apos;||regexp_replace(rrco.&apos;||lower(fifsv.application_column_name)||&apos;_high,&apos;&apos;z&apos;&apos;,&apos;&apos;9&apos;&apos;,1,0,&apos;&apos;i&apos;&apos;) end &apos;||lower(fifsv.application_column_name)||&apos;, &apos; text,
min(fifsv.id_flex_num) over (partition by fifsv.application_column_name, fifsv.form_left_prompt) min_id_flex_num,
min(fifsv.segment_num) over (partition by fifsv.application_column_name, fifsv.form_left_prompt) min_segment_num
from
(select xxen_util.init_cap(fifsv.form_left_prompt) form_left_prompt_, fifsv.* from fnd_id_flex_segments_vl fifsv) fifsv
where
fifsv.application_id=101 and
fifsv.id_flex_code=&apos;GL#&apos; and
fifsv.id_flex_num in (select gl.chart_of_accounts_id from gl_ledgers gl where xxen_util.contains(:ledger,gl.name)=&apos;Y&apos;)
order by
min_id_flex_num,
min_segment_num</SQL_TEXT>
    <PARAMETER_TRANSLATIONS>
     <PARAMETER_TRANSLATIONS_ROW>
      <LANGUAGE>US</LANGUAGE>
      <PARAMETER_NAME>Ledger</PARAMETER_NAME>
     </PARAMETER_TRANSLATIONS_ROW>
    </PARAMETER_TRANSLATIONS>
   </PARAMETERS_ROW>
   <PARAMETERS_ROW>
    <SORT_ORDER>9</SORT_ORDER>
    <ANCHOR>&amp;contentset_select_segments</ANCHOR>
    <SQL_TEXT>select distinct
&apos;case when x.&apos;||lower(fifsv.application_column_name)||&apos; is not null then x.&apos;||lower(fifsv.application_column_name)||&apos;_type||&apos;&apos;:&apos;&apos;||x.&apos;||lower(fifsv.application_column_name)||&apos; end &apos;||lower(fifsv.application_column_name)||&apos;, &apos; text,
min(fifsv.id_flex_num) over (partition by fifsv.application_column_name, fifsv.form_left_prompt) min_id_flex_num,
min(fifsv.segment_num) over (partition by fifsv.application_column_name, fifsv.form_left_prompt) min_segment_num
from
(select xxen_util.init_cap(fifsv.form_left_prompt) form_left_prompt_, fifsv.* from fnd_id_flex_segments_vl fifsv) fifsv
where
fifsv.application_id=101 and
fifsv.id_flex_code=&apos;GL#&apos; and
fifsv.id_flex_num in (select gl.chart_of_accounts_id from gl_ledgers gl where xxen_util.contains(:ledger,gl.name)=&apos;Y&apos;)
order by
min_id_flex_num,
min_segment_num</SQL_TEXT>
    <PARAMETER_TRANSLATIONS>
     <PARAMETER_TRANSLATIONS_ROW>
      <LANGUAGE>US</LANGUAGE>
      <PARAMETER_NAME>Ledger</PARAMETER_NAME>
     </PARAMETER_TRANSLATIONS_ROW>
    </PARAMETER_TRANSLATIONS>
   </PARAMETERS_ROW>
   <PARAMETERS_ROW>
    <SORT_ORDER>10</SORT_ORDER>
    <ANCHOR>&amp;rowset_segment_display</ANCHOR>
    <SQL_TEXT>select distinct
listagg(x.text_,&apos;||&apos;&apos;-&apos;&apos;||&apos;) within group (order by x.min_segment_num) over (partition by 1)||&apos; segment_display,&apos; text
from
(
select distinct
&apos;rrac.&apos;||lower(fifsv.application_column_name)||&apos;_type&apos;  text_,
min(fifsv.id_flex_num) over (partition by fifsv.application_column_name, fifsv.form_left_prompt) min_id_flex_num,
min(fifsv.segment_num) over (partition by fifsv.application_column_name, fifsv.form_left_prompt) min_segment_num
from
(select xxen_util.init_cap(fifsv.form_left_prompt) form_left_prompt_, fifsv.* from fnd_id_flex_segments_vl fifsv) fifsv
where
fifsv.application_id=101 and
fifsv.id_flex_code=&apos;GL#&apos; and
fifsv.id_flex_num in (select gl.chart_of_accounts_id from gl_ledgers gl where xxen_util.contains(:ledger,gl.name)=&apos;Y&apos;)
order by
min_id_flex_num,
min_segment_num
) x</SQL_TEXT>
    <PARAMETER_TRANSLATIONS>
     <PARAMETER_TRANSLATIONS_ROW>
      <LANGUAGE>US</LANGUAGE>
      <PARAMETER_NAME>Ledger</PARAMETER_NAME>
     </PARAMETER_TRANSLATIONS_ROW>
    </PARAMETER_TRANSLATIONS>
   </PARAMETERS_ROW>
   <PARAMETERS_ROW>
    <SORT_ORDER>11</SORT_ORDER>
    <ANCHOR>&amp;rowset_segments</ANCHOR>
    <SQL_TEXT>select distinct
&apos;case when rrac.&apos;||lower(fifsv.application_column_name)||&apos;_low is not null and rrac.sign = &apos;&apos;-&apos;&apos; then &apos;&apos;~&apos;&apos; end||&apos;||&apos;rrac.&apos;||lower(fifsv.application_column_name)||&apos;_low||case when rrac.&apos;||lower(fifsv.application_column_name)||&apos;_low is not null and rrac.&apos;||lower(fifsv.application_column_name)||&apos;_low&lt;&gt;rrac.&apos;||lower(fifsv.application_column_name)||&apos;_high then &apos;&apos;-&apos;&apos;||regexp_replace(rrac.&apos;||lower(fifsv.application_column_name)||&apos;_high,&apos;&apos;z&apos;&apos;,&apos;&apos;9&apos;&apos;,1,0,&apos;&apos;i&apos;&apos;) end &apos;||lower(fifsv.application_column_name)||&apos;, &apos; text,
min(fifsv.id_flex_num) over (partition by fifsv.application_column_name, fifsv.form_left_prompt) min_id_flex_num,
min(fifsv.segment_num) over (partition by fifsv.application_column_name, fifsv.form_left_prompt) min_segment_num
from
(select xxen_util.init_cap(fifsv.form_left_prompt) form_left_prompt_, fifsv.* from fnd_id_flex_segments_vl fifsv) fifsv
where
fifsv.application_id=101 and
fifsv.id_flex_code=&apos;GL#&apos; and
fifsv.id_flex_num in (select gl.chart_of_accounts_id from gl_ledgers gl where xxen_util.contains(:ledger,gl.name)=&apos;Y&apos;)
order by
min_id_flex_num,
min_segment_num</SQL_TEXT>
    <PARAMETER_TRANSLATIONS>
     <PARAMETER_TRANSLATIONS_ROW>
      <LANGUAGE>US</LANGUAGE>
      <PARAMETER_NAME>Ledger</PARAMETER_NAME>
     </PARAMETER_TRANSLATIONS_ROW>
    </PARAMETER_TRANSLATIONS>
   </PARAMETERS_ROW>
   <PARAMETERS_ROW>
    <SORT_ORDER>12</SORT_ORDER>
    <ANCHOR>&amp;rowset_segments_case</ANCHOR>
    <SQL_TEXT>select distinct
&apos;case when x.row_type=&apos;&apos;R&apos;&apos; then nvl(case when x.cnt&gt;1 then listagg(distinct(x.&apos;||lower(fifsv.application_column_name)||&apos;),&apos;&apos;;&apos;&apos;) within group (order by 1) over (partition by x.sequence) else x.&apos;||lower(fifsv.application_column_name)||&apos; end,&apos;&apos;%&apos;&apos;) end &apos;||lower(fifsv.application_column_name)||&apos;, &apos; text,
min(fifsv.id_flex_num) over (partition by fifsv.application_column_name, fifsv.form_left_prompt) min_id_flex_num,
min(fifsv.segment_num) over (partition by fifsv.application_column_name, fifsv.form_left_prompt) min_segment_num
from
(select xxen_util.init_cap(fifsv.form_left_prompt) form_left_prompt_, fifsv.* from fnd_id_flex_segments_vl fifsv) fifsv
where
fifsv.application_id=101 and
fifsv.id_flex_code=&apos;GL#&apos; and
fifsv.id_flex_num in (select gl.chart_of_accounts_id from gl_ledgers gl where xxen_util.contains(:ledger,gl.name)=&apos;Y&apos;)
order by
min_id_flex_num,
min_segment_num</SQL_TEXT>
    <PARAMETER_TRANSLATIONS>
     <PARAMETER_TRANSLATIONS_ROW>
      <LANGUAGE>US</LANGUAGE>
      <PARAMETER_NAME>Ledger</PARAMETER_NAME>
     </PARAMETER_TRANSLATIONS_ROW>
    </PARAMETER_TRANSLATIONS>
   </PARAMETERS_ROW>
  </PARAMETERS>
  <PARAMETER_DEPENDENCIES>
  </PARAMETER_DEPENDENCIES>
  <TEMPLATES>
  </TEMPLATES>
  <DEFAULT_TEMPLATES>
  </DEFAULT_TEMPLATES>
  <UPLOAD_COLUMNS>
  </UPLOAD_COLUMNS>
  <UPLOAD_PARAMETERS>
  </UPLOAD_PARAMETERS>
  <UPLOAD_SQLS>
  </UPLOAD_SQLS>
  <UPLOAD_DEPENDENCIES>
  </UPLOAD_DEPENDENCIES>
 </REPORTS_ROW>
</REPORTS>
</ROOT>
