APEX report with Break columns and BI Publisher
I am having an issue with APEX and using column breaks when printing to BI publisher.. It seems that when you write an APEX report that breaks on the 1st or 1st and 2nd columns, the grouping shows nicely in APEX, but when BI Publisher gets the XML data, and you do the same grouping using an RTF file, there is a group of rows with NO grouping info that occurs at the top of the report, then each group you expect has just ONE row..
(Just giving this a bump to see anyone has an idea here..)
Any suggestions?
Thank you,
Tony Miller
Message was edited by:
Tony Miller
WITH clause or Subquery Factoring allows the set of data to be reused multiple times within the SQL. Oracle will usually materialize the data into a temporary table (you will see it if you take an explain plan of the SQL).
I would be surprised if it was the actual WITH clause that was causing the performance issue, however you can test this by turning the WITH clause feature off. Go to the Physical model, right mouse click on your Database > Properties > Features Tab, scroll down to WITH_CLAUSE_SUPPORTED and switch it off.
I'd be interested to know if you do see actual improvement.
Good Luck.
Similar Messages
-
Report with multiplying columns and WITH clause
Hello
I saw sth strange in my report. I assume that it could happens very often.
I have report with few columns which two of them ar most complicated (many joins subqueries aggreagations on joined values etc.) These two columns (i.e C3,C4) should be multiplied (C3*C4).
When i do pure report without multiplying only columns C1,C2,C3,C4 everything is ok - duration about 15 sec. but... when I put next column on report which multiply these columns (in Answers C5=C3*C4)
I wait 3-4 minutes and my database hungs :(. After investigation I saw that in first case to databese goes pure "SELECT" statement it means:
"Select ... as C1, ... as C2, max(...) as C3, sum(xxx)... C4 from yyy,sss,ttt WHERE aaa"
but in second case BI uses WITH clause it means:
WITH SAWITH0 AS
( Select ... as C1, ... as C2, max(...) as C3, sum(xxx)... C4 from yyy,sss,ttt WHERE aaa )
SELECT SAWITH0.C1 as C1,
SAWITH0.C2 as C2,
SAWITH0.C3 as C3,
SAWITH0.C4 as C4,
SAWITH0.C3*SAWITH0.C4 as C5 FROM SSS
and this statement is long runninq query and kills my database :(.
I checked that SQL like this:
Select ... as C1, ... as C2, max(...) as C3, sum(xxx)... C4, max(...)*sum(xxx)... As C5 from yyy,sss,ttt WHERE aaa" -
runs few times faster than that above
I know that I can do this multiply in business model layer but sometimes users can multiply(or other operations) on columns in reports without my knowledge and it kills my db :(. Where is bug? Why SQLs with WITH clause takes so much db time?
Thank you for each kind of helpWITH clause or Subquery Factoring allows the set of data to be reused multiple times within the SQL. Oracle will usually materialize the data into a temporary table (you will see it if you take an explain plan of the SQL).
I would be surprised if it was the actual WITH clause that was causing the performance issue, however you can test this by turning the WITH clause feature off. Go to the Physical model, right mouse click on your Database > Properties > Features Tab, scroll down to WITH_CLAUSE_SUPPORTED and switch it off.
I'd be interested to know if you do see actual improvement.
Good Luck. -
ALV report with dynamic columns, and repeated structure rows
Hey Guys,
I've done some ALV programming, but most of the reports were straight forward. This one is a little interesting. So here go the questions...
Q1: Regarding Columns:
What is the best way to code a report with columns being dynamic. This is one of the parameters the user is going to enter in his input.
Q2: Regarding Rows:
I want to repeat a structure(say it contains f1, f2, f3) multiple time in rows. What is the best way to do it? The labels for these fields have to appear in the first column.
Below is the visual representation of the questions.
Jan 06 , Feb 06, Mar 06....(dynamic)
material 1
Current Stock
current required
$Value of stock
material 2
Current Stock
current required
$Value of stock
material 3
Current Stock
current required
$Value of stock
Thanks for your help.
Sumit.Hi Sumit,
Just check this sample from one of the SAP site
ABAP Code Sample for Dynamic Table for ALV with Cell Coloring
Applies To:
ABAP / ALV Grid
Article Summary
ABAP Code Sample that uses dynamic programming techniques to build a dynamic internal table for display in an ALV Grid with Cell Coloring.
Code Sample
REPORT zcdf_dynamic_table.
* Dynamic ALV Grid with Cell Coloring.
* Build a field catalog dynamically and provide the ability to color
* the cells.
* To test, copy this code to any program name and create screen 100
* as described in the comments. After the screen is displayed, hit
* enter to exit the screen.
* Tested in 4.6C and 6.20
* Charles Folwell - [email protected] - Feb 2, 2005
DATA:
r_dyn_table TYPE REF TO data,
r_wa_dyn_table TYPE REF TO data,
r_dock_ctnr TYPE REF TO cl_gui_docking_container,
r_alv_grid TYPE REF TO cl_gui_alv_grid,
t_fieldcat1 TYPE lvc_t_fcat, "with cell color
t_fieldcat2 TYPE lvc_t_fcat, "without cell color
wa_fieldcat LIKE LINE OF t_fieldcat1,
wa_cellcolors TYPE LINE OF lvc_t_scol,
wa_is_layout TYPE lvc_s_layo.
FIELD-SYMBOLS:
<t_dyn_table> TYPE STANDARD TABLE,
<wa_dyn_table> TYPE ANY,
<t_cellcolors> TYPE lvc_t_scol,
<w_field> TYPE ANY.
START-OF-SELECTION.
* Build field catalog based on your criteria.
wa_fieldcat-fieldname = 'FIELD1'.
wa_fieldcat-inttype = 'C'.
wa_fieldcat-outputlen = '10'.
wa_fieldcat-coltext = 'My Field 1'.
wa_fieldcat-seltext = wa_fieldcat-coltext.
APPEND wa_fieldcat TO t_fieldcat1.
wa_fieldcat-fieldname = 'FIELD2'.
wa_fieldcat-inttype = 'C'.
wa_fieldcat-outputlen = '10'.
wa_fieldcat-coltext = 'My Field 2'.
wa_fieldcat-seltext = wa_fieldcat-coltext.
APPEND wa_fieldcat TO t_fieldcat1.
* Before adding cell color table, save fieldcatalog to pass
* to ALV call. The ALV call needs a fieldcatalog without
* the internal table for cell coloring.
t_fieldcat2[] = t_fieldcat1[].
* Add cell color table.
* CALENDAR_TYPE is a structure in the dictionary with a
* field called COLTAB of type LVC_T_SCOL. You can use
* any structure and field that has the type LVC_T_SCOL.
wa_fieldcat-fieldname = 'T_CELLCOLORS'.
wa_fieldcat-ref_field = 'COLTAB'.
wa_fieldcat-ref_table = 'CALENDAR_TYPE'.
APPEND wa_fieldcat TO t_fieldcat1.
* Create dynamic table including the internal table
* for cell coloring.
CALL METHOD cl_alv_table_create=>create_dynamic_table
EXPORTING
it_fieldcatalog = t_fieldcat1
IMPORTING
ep_table = r_dyn_table
EXCEPTIONS
generate_subpool_dir_full = 1
OTHERS = 2.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
* Get access to new table using field symbol.
ASSIGN r_dyn_table->* TO <t_dyn_table>.
* Create work area for new table.
CREATE DATA r_wa_dyn_table LIKE LINE OF <t_dyn_table>.
* Get access to new work area using field symbol.
ASSIGN r_wa_dyn_table->* TO <wa_dyn_table>.
* Get data into table from somewhere. Field names are
* known at this point because field catalog is already
* built. Read field names from the field catalog or use
* COMPONENT <number> in a DO loop to access the fields. A
* simpler hard coded approach is used here.
ASSIGN COMPONENT 'FIELD1' OF STRUCTURE <wa_dyn_table> TO <w_field>.
<w_field> = 'ABC'.
ASSIGN COMPONENT 'FIELD2' OF STRUCTURE <wa_dyn_table> TO <w_field>.
<w_field> = 'XYZ'.
APPEND <wa_dyn_table> TO <t_dyn_table>.
ASSIGN COMPONENT 'FIELD1' OF STRUCTURE <wa_dyn_table> TO <w_field>.
<w_field> = 'TUV'.
ASSIGN COMPONENT 'FIELD2' OF STRUCTURE <wa_dyn_table> TO <w_field>.
<w_field> = 'DEF'.
APPEND <wa_dyn_table> TO <t_dyn_table>.
* Color cells based on your criteria. In this example, a test on
* FIELD2 is used to decide on color.
LOOP AT <t_dyn_table> INTO <wa_dyn_table>.
ASSIGN COMPONENT 'FIELD2' OF STRUCTURE <wa_dyn_table> TO <w_field>.
* Get access to internal table used to color cells.
ASSIGN COMPONENT 'T_CELLCOLORS'
OF STRUCTURE <wa_dyn_table> TO <t_cellcolors>.
CLEAR wa_cellcolors.
wa_cellcolors-fname = 'FIELD2'.
IF <w_field> = 'DEF'.
wa_cellcolors-color-col = '7'.
ELSE.
wa_cellcolors-color-col = '5'.
ENDIF.
APPEND wa_cellcolors TO <t_cellcolors>.
MODIFY <t_dyn_table> FROM <wa_dyn_table>.
ENDLOOP.
* Display screen. Define screen 100 as empty, with next screen
* set to 0 and flow logic of:
* PROCESS BEFORE OUTPUT.
* MODULE initialization.
* PROCESS AFTER INPUT.
CALL SCREEN 100.
* MODULE initialization OUTPUT
MODULE initialization OUTPUT.
* Set up for ALV display.
IF r_dock_ctnr IS INITIAL.
CREATE OBJECT r_dock_ctnr
EXPORTING
side = cl_gui_docking_container=>dock_at_left
ratio = '90'.
CREATE OBJECT r_alv_grid
EXPORTING i_parent = r_dock_ctnr.
* Set ALV controls for cell coloring table.
wa_is_layout-ctab_fname = 'T_CELLCOLORS'.
* Display.
CALL METHOD r_alv_grid->set_table_for_first_display
EXPORTING
is_layout = wa_is_layout
CHANGING
it_outtab = <t_dyn_table>
it_fieldcatalog = t_fieldcat2.
ELSE. "grid already prepared
* Refresh display.
CALL METHOD r_alv_grid->refresh_table_display
EXPORTING
i_soft_refresh = ' '
EXCEPTIONS
finished = 1
OTHERS = 2.
ENDIF.
ENDMODULE. " initialization OUTPUT
Regards
vijay -
Re: BUG? APEX 4.0: ORA-20503 error editing report with 400+ columns
Hello Everyone.
I've run into something quite strange and am hoping you can help me.
I am using Apex 4.0.1 and Oracle version 10.2.0.5. I've created a "classical" report in which the underlying SQL is a very simple:
select * from pvtabThe Oracle table pvtab consists of 419 columns, all of which are varchar2(88) and number type. That's it.
When I run the report, al of the columns show up as expected.
However, when I go into the "Report Attributes" tab and click on one of the fields (any of them, it doesn't matter which one), I immediately get the following error:
ORA-20503: Current version of data in database has changed since user initiated update process. current checksum = "598CAA7B68746A66F4B99E1512C36DED" application checksum = "0"If if replace the "*" with a few actual column names, then I am able to access any of these columns without problem.
If I put back the "*", I then encounter this error again.
I have never seen this error with other SQL SELECT statements in which I use the "*" qualifier to retrieve all columns from the table.
And so, I am wondering if the error is caused because of the large number of columns (419) in my table.
I've seen this same error mentioned in connection with forms but never with a report.
So, is there some limit to the number of columns one can have in a "classic" or interactive report?
Any idea why I would be getting this error?
Here is the DDL for my table pvtab:
CREATE TABLE "PVTAB"
( "MICRO" VARCHAR2(4),
"PRIM" VARCHAR2(4),
"UNIT" NUMBER,
"SEC_REF_1" NUMBER,
"SECN_1" VARCHAR2(88),
"SEC_REF_2" NUMBER,
"SECN_2" VARCHAR2(88),
"SEC_REF_3" NUMBER,
"SECN_3" VARCHAR2(88),
"SEC_REF_4" NUMBER,
"SECN_4" VARCHAR2(88),
"SEC_REF_5" NUMBER,
"SECN_5" VARCHAR2(88),
"SEC_REF_6" NUMBER,
"SECN_6" VARCHAR2(88),
"SEC_REF_7" NUMBER,
"SECN_7" VARCHAR2(88),
"SEC_REF_8" NUMBER,
"SECN_8" VARCHAR2(88),
"SEC_REF_9" NUMBER,
"SECN_9" VARCHAR2(88),
"SEC_REF_10" NUMBER,
"SECN_10" VARCHAR2(88),
"SEC_REF_11" NUMBER,
"SECN_11" VARCHAR2(88),
"SEC_REF_12" NUMBER,
"SECN_12" VARCHAR2(88),
"SEC_REF_13" NUMBER,
"SECN_13" VARCHAR2(88),
"SEC_REF_14" NUMBER,
"SECN_14" VARCHAR2(88),
"SEC_REF_15" NUMBER,
"SECN_15" VARCHAR2(88),
"SEC_REF_16" NUMBER,
"SECN_16" VARCHAR2(88),
"SEC_REF_17" NUMBER,
"SECN_17" VARCHAR2(88),
"SEC_REF_18" NUMBER,
"SECN_18" VARCHAR2(88),
"SEC_REF_19" NUMBER,
"SECN_19" VARCHAR2(88),
"SEC_REF_20" NUMBER,
"SECN_20" VARCHAR2(88),
"SEC_REF_21" NUMBER,
"SECN_21" VARCHAR2(88),
"SEC_REF_22" NUMBER,
"SECN_22" VARCHAR2(88),
"SEC_REF_23" NUMBER,
"SECN_23" VARCHAR2(88),
"SEC_REF_24" NUMBER,
"SECN_24" VARCHAR2(88),
"SEC_REF_25" NUMBER,
"SECN_25" VARCHAR2(88),
"SEC_REF_26" NUMBER,
"SECN_26" VARCHAR2(88),
"SEC_REF_27" NUMBER,
"SECN_27" VARCHAR2(88),
"SEC_REF_28" NUMBER,
"SECN_28" VARCHAR2(88),
"SEC_REF_29" NUMBER,
"SECN_29" VARCHAR2(88),
"SEC_REF_30" NUMBER,
"SECN_30" VARCHAR2(88),
"SEC_REF_31" NUMBER,
"SECN_31" VARCHAR2(88),
"SEC_REF_32" NUMBER,
"SECN_32" VARCHAR2(88),
"SEC_REF_33" NUMBER,
"SECN_33" VARCHAR2(88),
"SEC_REF_34" NUMBER,
"SECN_34" VARCHAR2(88),
"SEC_REF_35" NUMBER,
"SECN_35" VARCHAR2(88),
"SEC_REF_36" NUMBER,
"SECN_36" VARCHAR2(88),
"SEC_REF_37" NUMBER,
"SECN_37" VARCHAR2(88),
"SEC_REF_38" NUMBER,
"SECN_38" VARCHAR2(88),
"SEC_REF_39" NUMBER,
"SECN_39" VARCHAR2(88),
"SEC_REF_40" NUMBER,
"SECN_40" VARCHAR2(88),
"SEC_REF_41" NUMBER,
"SECN_41" VARCHAR2(88),
"SEC_REF_42" NUMBER,
"SECN_42" VARCHAR2(88),
"SEC_REF_43" NUMBER,
"SECN_43" VARCHAR2(88),
"SEC_REF_44" NUMBER,
"SECN_44" VARCHAR2(88),
"SEC_REF_45" NUMBER,
"SECN_45" VARCHAR2(88),
"SEC_REF_46" NUMBER,
"SECN_46" VARCHAR2(88),
"SEC_REF_47" NUMBER,
"SECN_47" VARCHAR2(88),
"SEC_REF_48" NUMBER,
"SECN_48" VARCHAR2(88),
"SEC_REF_49" NUMBER,
"SECN_49" VARCHAR2(88),
"SEC_REF_50" NUMBER,
"SECN_50" VARCHAR2(88),
"SEC_REF_51" NUMBER,
"SECN_51" VARCHAR2(88),
"SEC_REF_52" NUMBER,
"SECN_52" VARCHAR2(88),
"SEC_REF_53" NUMBER,
"SECN_53" VARCHAR2(88),
"SEC_REF_54" NUMBER,
"SECN_54" VARCHAR2(88),
"SEC_REF_55" NUMBER,
"SECN_55" VARCHAR2(88),
"SEC_REF_56" NUMBER,
"SECN_56" VARCHAR2(88),
"SEC_REF_57" NUMBER,
"SECN_57" VARCHAR2(88),
"SEC_REF_58" NUMBER,
"SECN_58" VARCHAR2(88),
"SEC_REF_59" NUMBER,
"SECN_59" VARCHAR2(88),
"SEC_REF_60" NUMBER,
"SECN_60" VARCHAR2(88),
"SEC_REF_61" NUMBER,
"SECN_61" VARCHAR2(88),
"SEC_REF_62" NUMBER,
"SECN_62" VARCHAR2(88),
"SEC_REF_63" NUMBER,
"SECN_63" VARCHAR2(88),
"SEC_REF_64" NUMBER,
"SECN_64" VARCHAR2(88),
"SEC_REF_65" NUMBER,
"SECN_65" VARCHAR2(88),
"SEC_REF_66" NUMBER,
"SECN_66" VARCHAR2(88),
"SEC_REF_67" NUMBER,
"SECN_67" VARCHAR2(88),
"SEC_REF_68" NUMBER,
"SECN_68" VARCHAR2(88),
"SEC_REF_69" NUMBER,
"SECN_69" VARCHAR2(88),
"SEC_REF_70" NUMBER,
"SECN_70" VARCHAR2(88),
"SEC_REF_71" NUMBER,
"SECN_71" VARCHAR2(88),
"SEC_REF_72" NUMBER,
"SECN_72" VARCHAR2(88),
"SEC_REF_73" NUMBER,
"SECN_73" VARCHAR2(88),
"SEC_REF_74" NUMBER,
"SECN_74" VARCHAR2(88),
"SEC_REF_75" NUMBER,
"SECN_75" VARCHAR2(88),
"SEC_REF_76" NUMBER,
"SECN_76" VARCHAR2(88),
"SEC_REF_77" NUMBER,
"SECN_77" VARCHAR2(88),
"SEC_REF_78" NUMBER,
"SECN_78" VARCHAR2(88),
"SEC_REF_79" NUMBER,
"SECN_79" VARCHAR2(88),
"SEC_REF_80" NUMBER,
"SECN_80" VARCHAR2(88),
"SEC_REF_81" NUMBER,
"SECN_81" VARCHAR2(88),
"SEC_REF_82" NUMBER,
"SECN_82" VARCHAR2(88),
"SEC_REF_83" NUMBER,
"SECN_83" VARCHAR2(88),
"SEC_REF_84" NUMBER,
"SECN_84" VARCHAR2(88),
"SEC_REF_85" NUMBER,
"SECN_85" VARCHAR2(88),
"SEC_REF_86" NUMBER,
"SECN_86" VARCHAR2(88),
"SEC_REF_87" NUMBER,
"SECN_87" VARCHAR2(88),
"SEC_REF_88" NUMBER,
"SECN_88" VARCHAR2(88),
"SEC_REF_89" NUMBER,
"SECN_89" VARCHAR2(88),
"SEC_REF_90" NUMBER,
"SECN_90" VARCHAR2(88),
"SEC_REF_91" NUMBER,
"SECN_91" VARCHAR2(88),
"SEC_REF_92" NUMBER,
"SECN_92" VARCHAR2(88),
"SEC_REF_93" NUMBER,
"SECN_93" VARCHAR2(88),
"SEC_REF_94" NUMBER,
"SECN_94" VARCHAR2(88),
"SEC_REF_95" NUMBER,
"SECN_95" VARCHAR2(88),
"SEC_REF_96" NUMBER,
"SECN_96" VARCHAR2(88),
"SEC_REF_97" NUMBER,
"SECN_97" VARCHAR2(88),
"SEC_REF_98" NUMBER,
"SECN_98" VARCHAR2(88),
"SEC_REF_99" NUMBER,
"SECN_99" VARCHAR2(88),
"SEC_REF_100" NUMBER,
"SECN_100" VARCHAR2(88),
"SEC_REF_101" NUMBER,
"SECN_101" VARCHAR2(88),
"SEC_REF_102" NUMBER,
"SECN_102" VARCHAR2(88),
"SEC_REF_103" NUMBER,
"SECN_103" VARCHAR2(88),
"SEC_REF_104" NUMBER,
"SECN_104" VARCHAR2(88),
"SEC_REF_105" NUMBER,
"SECN_105" VARCHAR2(88),
"SEC_REF_106" NUMBER,
"SECN_106" VARCHAR2(88),
"SEC_REF_107" NUMBER,
"SECN_107" VARCHAR2(88),
"SEC_REF_108" NUMBER,
"SECN_108" VARCHAR2(88),
"SEC_REF_109" NUMBER,
"SECN_109" VARCHAR2(88),
"SEC_REF_110" NUMBER,
"SECN_110" VARCHAR2(88),
"SEC_REF_111" NUMBER,
"SECN_111" VARCHAR2(88),
"SEC_REF_112" NUMBER,
"SECN_112" VARCHAR2(88),
"SEC_REF_113" NUMBER,
"SECN_113" VARCHAR2(88),
"SEC_REF_114" NUMBER,
"SECN_114" VARCHAR2(88),
"SEC_REF_115" NUMBER,
"SECN_115" VARCHAR2(88),
"SEC_REF_116" NUMBER,
"SECN_116" VARCHAR2(88),
"SEC_REF_117" NUMBER,
"SECN_117" VARCHAR2(88),
"SEC_REF_118" NUMBER,
"SECN_118" VARCHAR2(88),
"SEC_REF_119" NUMBER,
"SECN_119" VARCHAR2(88),
"SEC_REF_120" NUMBER,
"SECN_120" VARCHAR2(88),
"SEC_REF_121" NUMBER,
"SECN_121" VARCHAR2(88),
"SEC_REF_122" NUMBER,
"SECN_122" VARCHAR2(88),
"SEC_REF_123" NUMBER,
"SECN_123" VARCHAR2(88),
"SEC_REF_124" NUMBER,
"SECN_124" VARCHAR2(88),
"SEC_REF_125" NUMBER,
"SECN_125" VARCHAR2(88),
"SEC_REF_126" NUMBER,
"SECN_126" VARCHAR2(88),
"SEC_REF_127" NUMBER,
"SECN_127" VARCHAR2(88),
"SEC_REF_128" NUMBER,
"SECN_128" VARCHAR2(88),
"SEC_REF_129" NUMBER,
"SECN_129" VARCHAR2(88),
"SEC_REF_130" NUMBER,
"SECN_130" VARCHAR2(88),
"SEC_REF_131" NUMBER,
"SECN_131" VARCHAR2(88),
"SEC_REF_132" NUMBER,
"SECN_132" VARCHAR2(88),
"SEC_REF_133" NUMBER,
"SECN_133" VARCHAR2(88),
"SEC_REF_134" NUMBER,
"SECN_134" VARCHAR2(88),
"SEC_REF_135" NUMBER,
"SECN_135" VARCHAR2(88),
"SEC_REF_136" NUMBER,
"SECN_136" VARCHAR2(88),
"SEC_REF_137" NUMBER,
"SECN_137" VARCHAR2(88),
"SEC_REF_138" NUMBER,
"SECN_138" VARCHAR2(88),
"SEC_REF_139" NUMBER,
"SECN_139" VARCHAR2(88),
"SEC_REF_140" NUMBER,
"SECN_140" VARCHAR2(88),
"SEC_REF_141" NUMBER,
"SECN_141" VARCHAR2(88),
"SEC_REF_142" NUMBER,
"SECN_142" VARCHAR2(88),
"SEC_REF_143" NUMBER,
"SECN_143" VARCHAR2(88),
"SEC_REF_144" NUMBER,
"SECN_144" VARCHAR2(88),
"SEC_REF_145" NUMBER,
"SECN_145" VARCHAR2(88),
"SEC_REF_146" NUMBER,
"SECN_146" VARCHAR2(88),
"SEC_REF_147" NUMBER,
"SECN_147" VARCHAR2(88),
"SEC_REF_148" NUMBER,
"SECN_148" VARCHAR2(88),
"SEC_REF_149" NUMBER,
"SECN_149" VARCHAR2(88),
"SEC_REF_150" NUMBER,
"SECN_150" VARCHAR2(88),
"SEC_REF_151" NUMBER,
"SECN_151" VARCHAR2(88),
"SEC_REF_152" NUMBER,
"SECN_152" VARCHAR2(88),
"SEC_REF_153" NUMBER,
"SECN_153" VARCHAR2(88),
"SEC_REF_154" NUMBER,
"SECN_154" VARCHAR2(88),
"SEC_REF_155" NUMBER,
"SECN_155" VARCHAR2(88),
"SEC_REF_156" NUMBER,
"SECN_156" VARCHAR2(88),
"SEC_REF_157" NUMBER,
"SECN_157" VARCHAR2(88),
"SEC_REF_158" NUMBER,
"SECN_158" VARCHAR2(88),
"SEC_REF_159" NUMBER,
"SECN_159" VARCHAR2(88),
"SEC_REF_160" NUMBER,
"SECN_160" VARCHAR2(88),
"SEC_REF_161" NUMBER,
"SECN_161" VARCHAR2(88),
"SEC_REF_162" NUMBER,
"SECN_162" VARCHAR2(88),
"SEC_REF_163" NUMBER,
"SECN_163" VARCHAR2(88),
"SEC_REF_164" NUMBER,
"SECN_164" VARCHAR2(88),
"SEC_REF_165" NUMBER,
"SECN_165" VARCHAR2(88),
"SEC_REF_166" NUMBER,
"SECN_166" VARCHAR2(88),
"SEC_REF_167" NUMBER,
"SECN_167" VARCHAR2(88),
"SEC_REF_168" NUMBER,
"SECN_168" VARCHAR2(88),
"SEC_REF_169" NUMBER,
"SECN_169" VARCHAR2(88),
"SEC_REF_170" NUMBER,
"SECN_170" VARCHAR2(88),
"SEC_REF_171" NUMBER,
"SECN_171" VARCHAR2(88),
"SEC_REF_172" NUMBER,
"SECN_172" VARCHAR2(88),
"SEC_REF_173" NUMBER,
"SECN_173" VARCHAR2(88),
"SEC_REF_174" NUMBER,
"SECN_174" VARCHAR2(88),
"SEC_REF_175" NUMBER,
"SECN_175" VARCHAR2(88),
"SEC_REF_176" NUMBER,
"SECN_176" VARCHAR2(88),
"SEC_REF_177" NUMBER,
"SECN_177" VARCHAR2(88),
"SEC_REF_178" NUMBER,
"SECN_178" VARCHAR2(88),
"SEC_REF_179" NUMBER,
"SECN_179" VARCHAR2(88),
"SEC_REF_180" NUMBER,
"SECN_180" VARCHAR2(88),
"SEC_REF_181" NUMBER,
"SECN_181" VARCHAR2(88),
"SEC_REF_182" NUMBER,
"SECN_182" VARCHAR2(88),
"SEC_REF_183" NUMBER,
"SECN_183" VARCHAR2(88),
"SEC_REF_184" NUMBER,
"SECN_184" VARCHAR2(88),
"SEC_REF_185" NUMBER,
"SECN_185" VARCHAR2(88),
"SEC_REF_186" NUMBER,
"SECN_186" VARCHAR2(88),
"SEC_REF_187" NUMBER,
"SECN_187" VARCHAR2(88),
"SEC_REF_188" NUMBER,
"SECN_188" VARCHAR2(88),
"SEC_REF_189" NUMBER,
"SECN_189" VARCHAR2(88),
"SEC_REF_190" NUMBER,
"SECN_190" VARCHAR2(88),
"SEC_REF_191" NUMBER,
"SECN_191" VARCHAR2(88),
"SEC_REF_192" NUMBER,
"SECN_192" VARCHAR2(88),
"SEC_REF_193" NUMBER,
"SECN_193" VARCHAR2(88),
"SEC_REF_194" NUMBER,
"SECN_194" VARCHAR2(88),
"SEC_REF_195" NUMBER,
"SECN_195" VARCHAR2(88),
"SEC_REF_196" NUMBER,
"SECN_196" VARCHAR2(88),
"SEC_REF_197" NUMBER,
"SECN_197" VARCHAR2(88),
"SEC_REF_198" NUMBER,
"SECN_198" VARCHAR2(88),
"SEC_REF_199" NUMBER,
"SECN_199" VARCHAR2(88),
"SEC_REF_200" NUMBER,
"SECN_200" VARCHAR2(88),
"SEC_REF_201" NUMBER,
"SECN_201" VARCHAR2(88),
"SEC_REF_202" NUMBER,
"SECN_202" VARCHAR2(88),
"SEC_REF_203" NUMBER,
"SECN_203" VARCHAR2(88),
"SEC_REF_204" NUMBER,
"SECN_204" VARCHAR2(88),
"SEC_REF_205" NUMBER,
"SECN_205" VARCHAR2(88),
"SEC_REF_206" NUMBER,
"SECN_206" VARCHAR2(88),
"SEC_REF_207" NUMBER,
"SECN_207" VARCHAR2(88),
"SEC_REF_208" NUMBER,
"SECN_208" VARCHAR2(88)
);Thank you for any help/advice.
Elie
Edited by: EEG on Jun 12, 2011 2:09 PMSo, is there some limit to the number of columns one can have in a "classic" or interactive report?Yes. See Oracle® Application Express Application Builder User's Guide Release 4.0, Appendix B: Oracle Application Express Limits.
Any idea why I would be getting this error?No, but I've replicated it in APEX 4.0.2.00.07 on 11.2.0.1.0 EE using a table of 420 <tt>varchar2(88)</tt> columns:
>
ORA-20503: Current version of data in database has changed since user initiated update process. current checksum = "50C9BDC0AA1AEF0EB272E9158B2117B4" application checksum = "0"
>
Happens whether using <tt>select *</tt> or including all column names in the query. (I know you don't want to type all the column names, but I'd never use <tt>select *</tt> in a production application: always use a proper column list. You can get one without typing by drag-and-drop of a table in most IDEs, or a query from <tt>user_tab_columns</tt>.)
I hit the problem at 274 columns. Such an arbitrary number leads me to think that the problem is not one of the number of columns per se, but is due to some other limit (possibly a 32K VARCHAR2/RAW buffer somewhere).
Workaround:
Updates to the report column attributes are actually being saved, and you can navigate them using the Page Definition tree view as described in Appendix B.
Getting More Help:
This is probably a bug. If you have a support agreement with Oracle raise an SR with Oracle Support.
Also:
<li>Search the forum using the "ORA-20503" code and other possible terms to see if there's anything relevant. I had a quick look but the only thread in this context recommended an upgrade on an Oracle 9 DB version that's not compatible with APEX 4.0.
<li>To get the attention of the Oracle APEX team or anyone else who may know more about this problem than we do, edit your original post and change the Subject to be more specific about the actual nature of the problem: <em>BUG? APEX 4.0: ORA-20503 error editing report with 400+ columns</em>, and include your database version/edition and the definition of the <tt>PVTAB</tt> table.
Finally:
Somebody's bound to ask, so we might as well get started:
<li>Why so many columns?
<li>What requirement is this trying to fulfil? -
Report with non aggregated and aggregated columns from different facts.
Hi,
We have got requirement as follows,
1) We have two dimension tables, and two fact(Fact1 and Fact2) table in physical.
2) In BMM we have made hierarchies for both dimensions, and are joins both logical fact table.
3)In fact1, we are having three measures of which we have made two as aggregation sum, and one is non aggregated(It contains character).
4)Fact2 have two measures, both are aggregation as sum.
5)Now here the problem arises, we want to make a report with some columns from dim and non aggrgated column from fact1 and and aggregated column fact2
How to resolve the above issue.
Regards,
AnkitAs suggested you really want to move your none-aggregated fact attributes to a logical dimension (using the same physical table as the logical fact). Map this in the BMM layer as a snowflake, Place a hierarchy on this dimension with (at minimum) Total -> Detail levels, then on the other fact table you want to include in the report, set the content level on your other fact measures to the 'Total' level for your new logical Dim and it will allow them to be present in the same report.
-
Form report with both edit and column link
hi experts,
How can we create form report with both edit and column link. Ie, the form should have both the Edit link and column link. When we click on the edit link(in page1) it should go for the page2 and the page2 should display the corresponding row fields which should be editable. but when i click the column link it should bring me to the next page but the corresponding values of the column should not be editable.
Regars,
KKhi,
Here i have achieved this by making the column link and page navigation. -
Apex report with details below for one record
Hi,
I'm looking for an answer to my problem:
We have a report with many columns ~60.
And is not very user friendly because it is so wide table.
If it is possible to display some less important columns like additional information below report,
for single record in report. E.g. user selects radio button from first column and details are refreshed for that record.
(if it is possible to group details in tabs)
Thank you for your answers.Hi,
Here is one example
https://apex.oracle.com/pls/apex/apex/f?p=39006:41
Create hidden item that is not protected. In my case item name is P41_DEPTNO
First report query
select
APEX_ITEM.RADIOGROUP(1,DEPTNO,:P41_DEPTNO) AS rg,
EMPNO,
ENAME,
JOB,
MGR,
HIREDATE,
SAL,
COMM,
DEPTNO
FROM EMP
Second report query
select LOC,
DNAME,
DEPTNO
from DEPT
WHERE DEPTNO = :P41_DEPTNO
In second report region set Page Items to Submit your hidden item name.
Create dynamic action
- event: Change
- Selection Type: jQuery Selector
- jQuery selector: input[name=f01]
- Action: Set Value
- Set Type: JavaScript Expression
- JavaScript Expression: this.triggeringElement.value;
- Selection Type: Item(s)
- Item(s): <Your hidden item name>
Then add another true event to dynamic action
- Action: Refresh
- Selection Type: Region
- Region: <select second report region>
Regards,
Jari -
BO xi 3.1 u2013 schedule a template for multiple reports with different column
Hi,
I need to migrate the existing reports from SQL Server Reporting Services to BO, and the column order in the report is very important to the clients since clients have existing code to ingest these reports into their database. Now I want to schedule a single template with different parameters for all reports in BO, or create a single template with lot of parameters for all reports. My question is how I might use one template to create multiple reports with different column orders in the reports?
For example, client A has the following column order in their report: firstName, LastName, DateBirth, SSN. Client B has the following column order in their report: SSN, DateBirth, LastName, FirstName. Can I use one template to create these multiple reports?
Thanks!Hi,
The only approach I can think of is to create a template report which uses variables
For each column you would need to variable
v_columnAName and v_columnAValue
v_columnAName would have a if statement in it
=if([client]="clientA" or [client]="clientC";NameOf([firstName]);if([client]="clientB";NameOf([SSN]);NameOf([lastName]));
v_columnA would have a if statement in it
=if([client]="clientA" or [client]="clientC";[firstName];if([client]="clientB";[SSN],[lastName]));
This would only work when you had a small set of clients.
This might be more managable if it was done in the universe
Regards
Alan -
Design a single template for multiple reports with different column order
Hi,
I need to migrate the existing reports from SQL Server Reporting Services to Crystal Report 2008, and the column order in the report is very important to the clients since clients have existing code to ingest these reports into their database. Now I want to create a single template with lot of parameters for all reports. My question is how I might use one template to create multiple reports with different column orders in the reports?
For example, client A has the following column order in their report: firstName, LastName, DateBirth, SSN. Client B has the following column order in their report: SSN, DateBirth, LastName, FirstName. Can I use one template to create these multiple reports?
Thanks in advance.-As I mentioned you can find Template Field object in Insert menu of crystal report Designer 2008.
As soon as you select Template Field object you will be able to see a box beside ur mouse cursor. Drag and drop this box at required place. Now when you place this object in report you will get some thing like this "<TemplateField1>" listed under Formula Fields tree. Double click "<TemplateField1>" formula to add your conditions.
-I have not tested it for large amount of Customers. However as the number of customer increases the number of conditions will get increased.
For the customer that want the same ordering of columns you can put those customers under one condition.
for Example...
if(?Client in ['clientA','clientA']) then
<TableName>.<Field>......
-What do you mean be 40 columns? Do you mean 40 fields or you want to show 40 columns in report? Please elaborate.
Regards,
Amrita
Edited by: Amrita Singh on May 21, 2009 7:54 AM -
Display apex report with subqueries
How to display apex report with main query contains sub quires and sub query returns multiple values . Showing error sub query returns multiple rows.
There is really two ways you can go about this. What it sounds to me like your dealing with is a master detail arrangement. What you probably need is two dependent reports where you pass a selected value from one report to a page item then key off that value for the 2nd report's query.
Otherwise you could move the sub-query into the from portion of your master query and just pick the fields. This would then join the main query on the sub-query. At that point if you set your fields up correctly, you could use APEX grouping to group the results together and remove extra rows of data. -
Project mat. proc. report with monthly breakup and cumulative for year
Hi All,
can any body suggest a report for "Project material procurement report with monthly breakup and cumulative total for a financial year "
Thanks in Advance.
Regards,Hi Ahmed,
Thank you very much for the response.
I am seeking the std sreport which can give the details for the project material consumption report with monthly breakup with the cumulative month total to year.
ex. jan 10 units , june -10 units , nov 10 units, total (year) =30
regards, -
Please help to get onhand stock report with last purchase and billed date warehouse and item wise
please help to get onhand stock report with last purchase and billed date warehouse and item wise
Hi Rajeesh Ambadi...
Try This
SELECT distinct T0.ITEMCODE , t1.ItemName, T0.ONHAND as 'Total Qty',
T1.LASTPURDAT ,t1.LastPurPrc
FROM OITW T0 INNER JOIN OITM T1 ON T0.ITEMCODE = T1.ITEMCODE
INNER JOIN OITB T2 ON T1.ITMSGRPCOD=T2.ITMSGRPCOD left join ibt1 t3 on t3.itemcode = t0.itemcode and t3.whscode = t0.whscode
WHERE
T0.ONHAND>0
AND T0.WhsCode ='[%0]'
Hope Helpful
Regards
Kennedy -
Summary Report with 4 Dimensions and 5 Facts
Hello OBIEE Czars:
I have a problem.
I am trying to make a summary report with 4 Dimensions and 5 Facts.
Out of that only 2 Dimensions are Confirmed.
Now when I try to bring in all the facts, I get view display error.
I searched forum for similar issues.
So I have tried following so far.
1) Add other dimensions as source and set level to Total for those dims.
- After doing this, I dont get view display error, but I get blank rows for couple of facts.
2) I am already aggregating all the measures.
Please help me out.
This forum has been very helpful so far.
Thanks.
~VinayHi
This method seems fine until you run a request that includes a filter on an unconformed dimension.
The SQL itself should be quite straightforward (see below) but the BI Server instance does not seem to be joining this data correctly after posting the 2 separate queries to the database.
SELECT
x.dim1, x.dim2
x.fact1_agg_measure
y.fact2_agg_measure
FROM
SELECT
dim1, dim2
SUM(fact1.measure) fact1_agg_measure
FROM
dim1,
dim2, --UNCONFORMED+
fact1
WHERE
.... .... join fact1 to dimensions as normal
AND dim2 = 'BUSINESS_IDENTFIER'
GROUP BY
dim1, dim2
) x,
SELECT
dim1
SUM(fact2.measure) fact2_agg_measure
FROM
dim1,
fact2
WHERE
.... .... join fact2 to dimensions as normal
GROUP BY
dim1
) y
WHERE
x.dim1 = y.dim1
The result set returned in Answers is firstly a correctly aggregated record plus ALL rows from the second query above ??
Just wondering if anyone else has come across this issue?
cheers
Tony -
Run Report with Pass Number and Varchar Lexical Parameter values
Dear Sir/Madam
Due to an urgent change required to a report I would most appreciate it if you can please advise me if it is possible to get this report working by either passing in multiple lexical parameters or one signle lexical parameter when calling the SRW.RUN_REPORT command with the following methods:
Firstly: When calling report with a run_no and spr_cd passed in through one lexical:
cmd_line: REPORT=D:\DEV\REMITTANCE.rdf BACKGROUND=YES BATCH=NO DESFORMAT=PDF DESTYPE=FILE DESNAME=D:\DEV\REMITTANCE.pdf
CP_L_PARAM=RUN_NO=TO_NUMBER(28) AND SPR_CD=SUPP1
Both with a TO_NUMBER and without, whereby I attempt to do a SUBSTR within the query of the called report to derive the RUN_NO Oracle Reports fails to accept the SUBSTR.
Secondly: I am now trying to call the with passing two lexical parameters into the report as follows:
cmd_line: REPORT=D:\DEV\REMITTANCE.rdf BACKGROUND=YES BATCH=NO DESFORMAT=PDF DESTYPE=FILE DESNAME=D:\DEV\REMITTANCE.pdf
CP_L_RUN_NO=||TO_CHAR(lv_run_no)|| CP_L_SPR_CD=||lv_spr_cd;
NOTE: The above is an output of the actual command line and not what is passed into the command line, thus the quotes are missing. Please also note that the report is running fine with the only a hard coded RUN_NO value PASSED without the SPR_CD.
Unfortunately this is also causing issues as the RUN_NO is a number and as you know you can only pass in strings.
Your urgent help is required on this matter please as our client is expecting a solution this afternoon.
Hope to hear form you soon.
Kind regards
Andrew MasonDont Worry I've worked it out...
-
Report with material number and planned delivery time
Is there any standard report with material number and planned delivery time ?
Hi,
I do not know any standard report. Please try SE16 + MARC...
BR
Csaba
Maybe you are looking for
-
Not able to get the data on the page
hi, I tried brining the data on the JSP page. I am passing the parameters to a PL/SQL procedure. but I am not getting any data or error. can anyone helpme how to proceed further I am retreving the page parameters that are passed to the JSP page like
-
I was running Mountain Lion and absent-mindedly upgraded to Maverick. Now it would be nice to have a computer again... When clicking on an application in the dock, the icon will reluctantly jump once or twice, and then just calls it a day. Could some
-
Read only field in data manager
Hi, if we set a field permission as read only in console. in data manager this field will be read only. in import manager during process of import will this field be receiving value or it will be read only Sonali
-
AE cc quicktime error on Importing/Exporting/Rendering (osx)
I keep getting errors when importing Quicktime files (no matter what the codec is) and when exporting/rendering, (see attached screenshot for error on importing). Error during rendering (after 10-15 seconds) is: After Effects error: Rendering error w
-
? on upgrading to MacBook Pro from MacBook
I need more screen real estate and love the metal look of the MacBook Pro, any comments from anyone who has upgraded, good or bad. Specifically, have you had any connectivity issues on the MBP?