Htmldb report column templates

Hello,
htmldb version: 2.1.0.00.05
I have read all of the threads regarding the requirement of being able to conditionally format a column's background color based on the value of the data.
I can successfully get my entire report to have a red background when I use column templete expression 1=1. However, when I try to use something like #STATUS#='Green', I get error messages after running that report saying something like Yellow = 'Green', Yellow must be declared. I even tried using a plsql block that returns TRUE. Still no luck.
My report region is generated based on a dynamic sql query. I tried embedding the appropriate html tags in this query, but it seems htmdb is ignoring this html ?
Any help on this is greatly appreciated.
Thanks,
Samir

See
http://htmldb.oracle.com/pls/otn/f?p=11933:7

Similar Messages

  • Report Template, Column Template, Column Template Condition

    I have a template, Standard Revenue from Standard, I have cloned for a Classic report.
    Application ###>Shared Componets>Templates>Edit Report Template
    Column Template 1 looks like:
    <td#ALIGNMENT# headers="#COLUMN_HEADER_NAME#" class="t1data_revenue">#COLUMN_VALUE#</td>
    I have set Column Template 1 Condition to:
    "Use based on PL/SQL expresiion"
    I have tried several expression in "Column Template 1 Expression" - last one is:
    case
    when #COLNUM# <= 2 then false
    when #COLUMN_VALUE# < 0 then true
    else false
    end case;
    I am trying to use the value in "Column Template 2" when to value of the #COLUMN_VALUE# < 0
    where "Column Template 2" is :
    <td#ALIGNMENT# headers="#COLUMN_HEADER_NAME#" class="t1data_revenue_negative">#COLUMN_VALUE#</td>
    I get the following error when I run the page:
    ORA-01403: no data found
    and
    ERR-1025 Error processing PLSQL expression. case when #COLNUM# <= 2 then false when #COLUMN_VALUE# < 0 then true else false end case;
    Any help will be appreciated.
    thank you,
    jwm

    Hi,
    That's actually easier. See: [http://apex.oracle.com/pls/otn/f?p=267:60]
    The SQL for both reports is:
    SELECT EMPNO, ENAME, NVL(SAL,0) SAL, NVL(COMM,0) COMM
    FROM EMP
    ORDER BY EMPNOThe SAL and COMM columns have been formatted using:
    999G999G999G999G990D00For the Row Template, the Row Template 1 setting contains an empty space (you have to have something in there otherwise Apex adds back in a default row containing five cells!). The condition for this is:
    TO_NUMBER('#COMM#','999G999G999G999G990D00') < 100The template will see the data as a string, so we use the same number format to convert that string back into a number and compare this to 100. If we didn't use formatting on the numbers and we are sure that every row contained a number (hence the use of NVL()), then you could use:
    #COMM# < 100Row Template 2 contains the format for the rows that need displaying:
    &lt;tr&gt;
    &lt;td class="t18Data"&gt;#1#&lt;/td&gt;
    &lt;td class="t18Data"&gt;#2#&lt;/td&gt;
    &lt;td class="t18Data" style="text-align:right"&gt;#3#&lt;/td&gt;
    &lt;td class="t18Data" style="text-align:right"&gt;#4#&lt;/td&gt;
    &lt;/tr&gt;and is unconditional.
    The only other settings on the Row Template are the Before Rows:
    &lt;table class="t18Standard" style="border-collapse:collapse; border:1px solid black;"&gt;
    &lt;tr&gt;
      &lt;th class="t18ReportHeader"&gt;Empno&lt;/th&gt;
      &lt;th class="t18ReportHeader"&gt;Ename&lt;/th&gt;
      &lt;th class="t18ReportHeader" style="text-align:right"&gt;Sal&lt;/th&gt;
      &lt;th class="t18ReportHeader" style="text-align:right"&gt;Comm&lt;/th&gt;
    &lt;/tr&gt;and After Rows:
    &lt;/table&gt;Of course, you will note that the record counters at the bottom still show the number of records in both reports - as the SQL still outputs the same data, this doesn't change.
    Andy

  • Row and Column Template in Hyperion Reporting

    Hi
    Whenver I am trying to save a column of a report as a template , it is giving an error :
    "The selected columns contain one or more of the items below that cannot be included in templates:
    Invalid Input "
    I am not sure what does this mean. Though I have already deselected the "Link to Source Object". Can anyone suggest ?

    it may also worth cross checking below form doc:
    a.If your row and column template contains formulas with external references (for
    example, to cells outside of the selected row and column template), you are prompted
    to modify those formulas before saving the row or column template.
    Note: You can save a row and column template that contains cell formulas, as these can
    be discarded. For more information, see step 9.c on page 115.
    b. If a secondary database connection was specified within the row and column template,
    a dialog box displays prompting you to continue saving the template. If you save the
    template, the secondary database connection you specified in the row and column
    template is discarded. The primary database connection is then used for the row and
    column template.
    c. If unsupported properties are found, an Information dialog box presents a list of
    properties to discard before saving the template. For example, if the row and column
    template contains a cell formula, you can choose to save the template without the
    formula or not save the template.

  • Hyperion Reports - Row and Column templates

    <p>Sorry if this may be a bit basic but we are new to Hyperionreports. Currently we are going through a redesign process and washoping to get some viewpoints on the benefits of using row andcolumn templates within reports. I am looking at this option butgetting frustrated by the limitations around formatting, etc</p><p> </p><p>Are there any views out there on the preferred options. We havea particular style in design we need to include which is becomingdifficult when we use row and column templates</p>

    it may also worth cross checking below form doc:
    a.If your row and column template contains formulas with external references (for
    example, to cells outside of the selected row and column template), you are prompted
    to modify those formulas before saving the row or column template.
    Note: You can save a row and column template that contains cell formulas, as these can
    be discarded. For more information, see step 9.c on page 115.
    b. If a secondary database connection was specified within the row and column template,
    a dialog box displays prompting you to continue saving the template. If you save the
    template, the secondary database connection you specified in the row and column
    template is discarded. The primary database connection is then used for the row and
    column template.
    c. If unsupported properties are found, an Information dialog box presents a list of
    properties to discard before saving the template. For example, if the row and column
    template contains a cell formula, you can choose to save the template without the
    formula or not save the template.

  • BUG: Dynamic report column headings not working with some templates

    Using Apex 2.0, we are trying to create a vertical report with dynamic labels like &P26_REF_RECEIVED_DATE_L. based on items populated by PL/SQL.
    This seems to work fine for some templates but not for others. With a horizontal report template we get output like:
    <th class="t4ReportHeader" id="REF_RECEIVED_DATE">Received</th>
    <td  headers="Received" class="t4data">29-MAR-2007</td>But with the vertical template we get:
    <th>&P26_REF_RECEIVED_DATE_L.</th><td>29-MAR-2007</td>Also, if we use "default: vertical report, look 1" we see "&P26_REF_RECEIVED_DATE_L." in the output, but with "default: vertical report, look 2" we see "Received".
    Message was edited by:
    Tony Andrews

    have you checked that your report template has a
    valid value for the "Column Heading Template"
    property?This template has nothing in the "Column Heading Template" because it is designed to show the data in this form:
    Heading1 - Value1
    Heading2 - Value2
    Heading3 - Value3
    Hence both the heading and the data appear in the "Column Template 1" property as follows:
    <tr><th class="t3header">#COLUMN_HEADER#</th><td class="t3data">#COLUMN_VALUE#</td></tr>
    Maybe it is an Apex limitation that the #COLUMN_HEADER# value can't be accessed from this subtemplate? Yet somehow it works with "default: vertical report, look 2" (which I realise isn't a template as such).

  • Report Row Template: Column condition

    In a classic report using a Generic Column template, one can use the Column Condition attribute to conditionally render the column.
    But when using a named column (row template), even though the Builder allows one to specify this condition, it doesn't appear to be used.
    So how would one implement conditional column display in these templates?
    Thanks

    Hi,
    That's actually easier. See: [http://apex.oracle.com/pls/otn/f?p=267:60]
    The SQL for both reports is:
    SELECT EMPNO, ENAME, NVL(SAL,0) SAL, NVL(COMM,0) COMM
    FROM EMP
    ORDER BY EMPNOThe SAL and COMM columns have been formatted using:
    999G999G999G999G990D00For the Row Template, the Row Template 1 setting contains an empty space (you have to have something in there otherwise Apex adds back in a default row containing five cells!). The condition for this is:
    TO_NUMBER('#COMM#','999G999G999G999G990D00') < 100The template will see the data as a string, so we use the same number format to convert that string back into a number and compare this to 100. If we didn't use formatting on the numbers and we are sure that every row contained a number (hence the use of NVL()), then you could use:
    #COMM# < 100Row Template 2 contains the format for the rows that need displaying:
    &lt;tr&gt;
    &lt;td class="t18Data"&gt;#1#&lt;/td&gt;
    &lt;td class="t18Data"&gt;#2#&lt;/td&gt;
    &lt;td class="t18Data" style="text-align:right"&gt;#3#&lt;/td&gt;
    &lt;td class="t18Data" style="text-align:right"&gt;#4#&lt;/td&gt;
    &lt;/tr&gt;and is unconditional.
    The only other settings on the Row Template are the Before Rows:
    &lt;table class="t18Standard" style="border-collapse:collapse; border:1px solid black;"&gt;
    &lt;tr&gt;
      &lt;th class="t18ReportHeader"&gt;Empno&lt;/th&gt;
      &lt;th class="t18ReportHeader"&gt;Ename&lt;/th&gt;
      &lt;th class="t18ReportHeader" style="text-align:right"&gt;Sal&lt;/th&gt;
      &lt;th class="t18ReportHeader" style="text-align:right"&gt;Comm&lt;/th&gt;
    &lt;/tr&gt;and After Rows:
    &lt;/table&gt;Of course, you will note that the record counters at the bottom still show the number of records in both reports - as the SQL still outputs the same data, this doesn't change.
    Andy

  • Interactive report column filters to display differently than column values

    Greetings...
    We use images a lot in our interactive reports to provide a visual representation to a status, or something locked for update, or what-have-you. By default, when a user clicks the column heading of a column which contains images, the drop-down list that shows up displays the actual images, which is nice for the user to identify exactly which thing they want to filter on. The problem is when the user selects on of the options in the filtering drop-down, the resulting condition that is displayed under the interactive report search bar is the HTML code of the image. I'd like something else to display there because showing the user the HTML code is atrocious.
    I didn't think what I want is possible, but then I came across the Page Locks page within ApEx (page 4000:291 in ApEx 4.0.1) which displays a list of all the pages of an application and whether they are locked or not. It also allows you to bulk lock or bulk unlock a bunch of pages. That page uses an interactive report with a column called "Status" which contains images that represent whether the page is locked or not. When you click the "Status" column heading to filter, instead of seeing the images of an open and closed lock, you see the words "Page Locked" and "Page Unlocked." And even better... when you select on of them, the condition that is displayed to the user is very user-friendly.
    Can someone tell me how this is done so I can replicate it in my own apps?
    Shane.

    Why not create the IR using the text you require e.g. 'Lock', 'Unlock' and then use JQuery to replace the text in the report with the image you want. All the filters should then show the plain text and the report will display the image. e.g.
    http://apex.oracle.com/pls/apex/f?p=46801:1
    Here's what I did:
    Firstly make sure the IR has a region template.
    Then create a Dynamic Action with the following attributes:
    1. Advanced
    2. Event: After Refresh
    3. Selection Type: Region
    4. Region: [select the IR Region]
    5. Action: Execute JS Code
    6. Fire on page load: [checked]
    7. Code:
    $('td [headers="TEST"]').each(function(index) {
      if ($(this).text() == 'Lock') {
        $(this).empty().html('<img src="/i/htmldb/icons/locked_small.gif" alt="Lock" />');
      else {
        $(this).empty().html('<img src="/i/htmldb/icons/unlocked_small.gif" alt="Unlock" />');
    });Where TEST is the column name.
    That's it, this may also be of interest:
    http://simonhunt.blogspot.com/2011/10/adjusting-interactive-report-column.html
    I hope it helps
    Shunt

  • Custom report row template

    Few questions when using a custom report row template. Followup to the discussion Report Row Template: Column condition
    1. The row template allows full control how the entire row is rendered. I can see this being used when the report query returns a single row and we need to format it in a very specific way. But when the query returns multiple rows, how is the specified Row Template used? i.e the first row is "consumed" and rendered as per the template. If the same process is repeated for subsequent rows, how can we control whether successive rows are rendered across the page (left to right) or down the page (top to bottom)?
    2. When a custom row template is used to render a tabular form, the hidden columns (marked Edit=Y, Show=N on Report Attributes) are present in the markup even when they are not specified in the row template! i.e. the MRU process works. Of course, this is a good thing but I was curious to know what exactly controls this, what part of the report template controls where the hidden form elements are placed?
    3. Any number/date formatting specified declaratively on the Column Attributes page appears to be taken into account when column values are substituted in the template using #COL# notation. But all the other Column Attributes are ignored (alignment, sum, show, link, etc). Is there a way to use the Link attribute to declaratively specify the link so the value of the column #COL# as seen by the report template includes the A tag?
    Thanks

    Comments? Thanks

  • Passing #COLUMN_VALUE# as parameter to pl/sql function in column template

    Hi all,
    I want to color negative amounts in red in sql report using column template.
    I created a pl/sql function"isNegativeNum" which returns 1 or -1.
    create or replace function isNegativeNum(p_column_value varchar2) return number
    as
    l_dummy number;
    begin
          l_dummy := to_number(p_column_value,'999G999G990D00PR');
          IF l_dummy < 0
             THEN
                RETURN 1;
          else
                return -1;
          END IF;
    exception
    when others then
       RETURN -1;
    end;Below is column template.
    Column Template 1
    <td class="t3dataalt" #ALIGNMENT#><p color=red>#COLUMN_VALUE#</p></td>Column Template 1 Condition
    isNegativeNum('#COLUMN_VALUE#') = -1The issue is #COLUMN_VALUE# value is not being passed to the function, Insert statement in function reveals p_column_value as a string "#COLUMN_VALUE#". When I try without quotes like isNegativeNum(#COLUMN_VALUE#) = -1, I get below error.
    ORA-06550: line 1, column 48: PLS-00103: Encountered the symbol "#" when expecting one of the following: ( ) - + case mod new not null others select table avg count current exists max min prior sql stddev sum variance execute multiset the both leading trailing forall merge year month DAY_ hour minute second timezone_hour timezone_minute timezone_region timezone_abbr time timestamp interval date
         Error      ERR-1025 Error processing PLSQL expression. isNegativeNum(#COLUMN_VALUE#) = 1
    Any help is appreciated.
    Kishore

    Hi Kishore,
    using #COLUMN_VALUE# would probably not make much sense, because normally a report has multiple columns and not just the numeric column which you want to verify if it's negative. But APEX will fire the template condition for each column, because the report template is a column cell template.
    What you can do to make it more generic is to use for example
    #CHECK_AMOUNT#
    in the template and provide a not displayed column in your SQL statement which contains your value which is named CHECK_AMOUNT. For example:
    SELECT NAME
         , BALANCE
         , BALANCE AS CHECK_AMOUNT
    FROM XXX;Because this CHECK_AMOUNT column would be a generic name, you can use this template in all your reports as long as you provide this column.
    Thope that helps
    Patrick

  • Report Row Template - header

    Hi
    I have made a custom "Report Row Template". I have write the "header" direct in the html code. Is that a problem if i want to translate the application? Is there a way how to use the headers from the apex?
    Best Regrads
    Jesper Vels

    Hello Jesper,
    OK, I can see now what you are trying to do. Unfortunately, the only similar example I'm familiar with - http://apex.oracle.com/pls/otn/f?p=11933:108 – Is also using hard coded text for the headings.
    I can show you how to get to these headings, and how to use them on your template, but I'm afraid this is not a generic solution, as I couldn't find an active substitution string for the column headers.
    As there isn't any variables to hold these column names, we need to define our own. You can do that using an application items or hidden page items. Let's say I defined three hidden items on my report page: P1_HD1, P1_HD2, P1_HD3. Each item will be defined with Source Type of SQL Query, and Source Use of "Only when …". The Source Value for the first item will be as follow:
    select  heading
    from  FLOWS_020200.APEX_APPLICATION_PAGE_RPT_COLS
    where  APPLICATION_ID=:APP_ID and
           PAGE_ID=:APP_PAGE_ID and
           DISPLAY_SEQUENCE = 1;The DISPLAY_SEQUENCE should change according to the sequence of the column.
    If you choose to use an application items, you'll need to use a before header computation on your report page, with the same query, to populate the application items.
    In order to use these items in the report template, we need to use the "&P1_HD1." notation. You can have something like this, for the first header in your report query:
    <tr><td>&P1_HD1.: </td><td>#1#</td>   . . .Hope this helps,
    Arie.

  • How to display data in interactive report column without colons (:)

    Dear Apex gurus,
    I'm a newbie and have just created an Apex application from a spreadsheet. I've created a named list of values and used it in a checkbox against a field in the default page 3 Create form.
    When I've selected multiple values in my check box in the form, the data in the interactive report appears as one line with colons separating the selected values like this: Dog:Cat:Bird
    What I would like is to have the data appear in the interactive report column as a multi-line list like this:
    Dog
    Cat
    Bird
    I can work around this by modifying the SQL code in the Region Source of the Region Definition of the report (Default Page 1 interactive report) to replace the colons with <br>
    SELECT replace("PETS_CHOSEN",':','<br>') "PETS_CHOSEN", FROM "MYAPP" Note: this doesn't format properly in the posting. I replace the colon with a html br
    This works, but seems to be a hack to me. I am guessing that I've missed a simple option setting somewhere, but I can't find it.
    The other problem with this solution is that when I export the report to Excel, what is exported is Dog<br>Cat<br>Bird, which is seems worse than colons.
    Thanks,
    - Morgan
    Edited by: mnrussel on 16-Feb-2009 04:13

    Hi Morgan,
    I think you have at least two choices:
    1 - Replace the colons with ', ' (comma and space) - sort of reasonable on screen and in an export
    2 - Create a second page that has the same report but uses the "export: csv" template. Create a manual link to this page to replace the standard Export link. When such report pages are requested, they download immediately instead of displaying. You can, therefore, use commas in this one and &lt;br&gt; tags in the on-screen report version
    Andy
    ps - To display tags in a post, use &amp;lt; for &lt; and &amp;gt; for &gt;

  • Interactive Report Column Formating '%' symbol

    Hi,
    I have an intercative report that shows a column displaying a number and and the sysmbol %. The source query is similar to:
    SELECT my_number||'%' as display_percentile
    FROM dual;
    Because of this the interactive report will only show this column as a string type and not number type, therefore my math filtering options are not available. Is there a way that I can display the column as a number type and still have it display as 50%
    I am using Application Express 4.1.0.00.32
    Thanks in advance.
    Edited by: 968358 on 05-Dec-2012 02:09
    Edited by: 968358 on 05-Dec-2012 02:10

    968358 wrote:
    Thank you fac586,
    Forgive me, I am a newbie at this and I am still at a loss. Where can I change the report column attributes to reflect css and alike. Do I need to do this on the report template or in the column attributes. When I have looked in the column attributes I cant see anywhere other than on the column link.Add a style sheet using the page HTML Header property attribute:
    <style>
    /* Replace COLUMN_ALIAS with the alias of the % column in your report */
    td[headers="COLUMN_ALIAS"]:after {
      content: "%";
    </style>

  • Can we change the background color of a Standard report "column"?

    4.2.1
    Theme 24 - Cloudy
    Hi There,
    I searched this forum and online but did not get a straight forward way to change the color of a standard classic Apex report column. I want the whole columns background color to be blue. I tried some of the suggestions for using span etc, but they did not work.
    Was wondering if anyone has a solution for this? would be very helpful!
    Thanks,
    Ryan

    Use a custom named column report template with <tt>&lt;colgroup&gt;/&lt;col&gt;</tt> and CSS as in these threads.
    Could also be done with JavaScript, but if the entire column is to be coloured (rather than individual cells based on some condition), the template approach will be simpler and have better performance

  • #COLNUM# #COLUMN_VALUE# in column Template Condition

    Hi,
    Is it a limitation to use #COLNUM# #COLUMN_VALUE# in column Template Condition?
    I specify a column template condition #COLNUM#=3 in the column template condition, but the error
    "ERR-1025 Error Processing PLSQL expression #COLNUM#=3" prompt.
    Is that a limitation?
    Thanks

    Hi,
    I can use column name in template column condition with no problem, but I want to apply the condition to few fixed columns(more than 10 columns),
    I know I can do something in the SQL query of the report, but it will be too tedious.
    If only the #COLNUM# etc is usable in template column condition, it will save a lot of job.
    Anyone know the reason #COLNUM# not usable in template column condition?
    Thanks

  • Html tags removed when #COLUMN_HEADER# is used in column template

    Hi all,
    I'm using APEX 4.0.2, theme 2 Builder Blue.
    I am trying to add html tags to dynamically generated column headings of a dynamic SQL Report.
    When using a standard report template, the headings contain the html tags. However when I want to use one of the vertical lay-outs all html tags are removed. After some research I found out that when the substitution string #COLUMN_HEADER# is used within the column headings part of the template, the html tags are being preserved. They are removed however when the #COLUMN_HEADER# substitution string is used in the column templates part of the template.
    This is easily testable by using for instance "return htf.bold ('COL01')" as dynamic column header.
    Is this a bug or am I overlooking something? Is there another solution maybe to preserve html tags in the column heading?
    Cheers, Erik

    webdynpro appears to use XHTML instead of HTML so the syntax is a bit more limitted and more picky.
    this link explains the difference between the two syntaxes:
    http://reference.sitepoint.com/html/html-xhtml-syntax
    you can test your tags in this validator tool
    http://validator.w3.org
    solved?  have a good week, and holidays.

Maybe you are looking for

  • Itunes doesn`t read half of my id3 tags

    Hi, I am stuck with a problem with itunes. In the music library, itunes only writes half of my tracks with the id3 tags. All of my songs are mp3s. Every single id3 tag of all my songs gets recognized in winamp, wmp, or in the windows file browser. Bu

  • Trying to understand an application.cfm attack

    I have a site that I've been running without issue, for years now - I sniff and block for cross site scripting, sql injection, executable file uploads, and employ honeypot fields on forms...  This past week I wanted to watch some slow page loads for

  • --eh-frame-hdr

    I'm trying to install Oracle 9ir2 on Red Hat 9. I keep getting to a point in the linking portion where I get this error: Error in invoking target install of makefile /opt/ora9/product/9.2/plsql/lib/ins_plsql.mk I tried changing: LD_SELF_CONTAINED="-z

  • Dispatcher process on ABAP +  JAVA system  does not start.

    Hi all, Dispatcher process on ABAP +  JAVA system  does not start. Can someone help me to solve this issue in a ABAP+JAVA stack system?   service p4 ================= ERROR ================= Core service p4 failed. J2EE Engine cannot be started. com.

  • Using afp problem

    Hi, I have a problem connecting to my volume from the server. This just happened today after upgrading from Panther to Tiger. I have a applescript with this lines. mount volume "afp://username:[email protected]/volume1" mount volume "afp://username:[