HTML table containing SQL output in cells

Hello,
This might be a built-in function, but I haven't figured out how to do this: I want to display an HTML table (2x3 table) and in each cell, I want to display the output from different SQL statements. Some of the SQL statements return multiple rows, some just one. The cell data comes from unjoined tables, that is there is no join condition between each one of the cell SQL statements, it's a bit random.

After much head-banging, I have worked this out and it came down to just changing 2 style definitions in the page template. I'm not really a Web developer so that wasn't obvious to me (or easy, I've read quite a bit on Google about stylesheets while working this).
Basically I wanted to display a 3x3 "grid", similar to a table, but the data coming out from the 3x3 regions (all SQL query regions) returned different numbers of rows, which meant my page "rows" didn't align horizontally, they were just rendered wherever the last region stopped (vertically they were rendered properly because I put the regions in Colums 1, 2 and 3, standard page functionality).
Eventually I started looking at the HTML page source and noticed the regions were using style defintions coming from my theme (standard APEX theme #12). I made a copy of the page template this page was using, and modified the header block of the new page template to "rewrite" the driving styles
<title>#TITLE#</title>
<link rel="stylesheet" href="#IMAGE_PREFIX#themes/theme_12/theme_V3.css" type="text/css" />
<style type="text/css">
a.plain { font-family:arial; text-decoration:none}
td.t12Header {height=12px;font: italic small-caps 900 12px arial}
td.t12Body {background-image: url(#APP_IMAGES#lock.png);background-repeat: no-repeat;background-position: left top;vertical-align= middle;height= 250px}
</style>
...So I re-wrote the td (or table TD style) for t12Header and t12Body, by adding my own style definitions into the header after the call to the main css sheet. I also played around with putting a background image into each cell, I'll probably remove that but it was fun to explore.
This rendered my individual table cells (via td.t12Body) @ 250px (which as I've found out is otherwise not supported, there's no built-in TABLE spec for "height") -- exactly what I wanted, now all the regions render vertically and horizontally.
I did not test this with any browser other than IE7.
If you know an easier way to do this, please do post a follow-up.

Similar Messages

  • Am exporting html table containing images data into pdf and after exporting images are not displaying in pdf document.

    Hi all,
             I trying to export html table which contains images into pdf through java script but after downloading pdf file am unable to see images.Is this problem with plugins are any other.Can any one help me out from this.
    Thanx in advance.

    Another option will be
    window.print(); as pdf. 
    Please 'propose as answer' if it helped you, also 'vote helpful' if you like this reply.

  • Please help me capturing data from HTML table

    Hello Everyone,
    Our Storage subsystem generates a html table containing all LUN allocation for printing. I am saving this html file on disk to collect all table infomation and to put it into a database.
    I am having problems extracting table information from the html file. I tried using regular expressions but still not going anywhere. Below is a sample few lines from the html file.
    Please your help is appreciated solving this problem how to collect this information from a HTML file or if Java has any class for this type of purpose.
    Please advice
    arsi
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <!-- saved from url=(0068)https://10.210.44.14/cgi/rsConfigPrintDisplay?200702121685061633,FS,2 -->
    <HTML><HEAD><TITLE>Volume Assignments</TITLE>
    <META http-equiv=Content-Type content="text/html; charset=windows-1252">
    <META content="MSHTML 6.00.2900.3020" name=GENERATOR></HEAD>
    <BODY><FONT face="Times New Roman,Times" size=2>
    <TABLE cellSpacing=1 cellPadding=3 border=2>
    <CAPTION>
    <H2>Volume Assignments</H2></CAPTION>
    <TBODY>
    <TR vAlign=top>
    <TH><FONT face="Times New Roman,Times" size=2>Volume</FONT></TH>
    <TH><FONT face="Times New Roman,Times" size=2>Location</FONT></TH>
    <TH><FONT face="Times New Roman,Times" size=2>LSS</FONT></TH>
    <TH><FONT face="Times New Roman,Times" size=2>Volume Type</FONT></TH>
    <TH><FONT face="Times New Roman,Times" size=2>Size</FONT></TH>
    <TH><FONT face="Times New Roman,Times" size=2>Storage Type</FONT></TH>
    <TH><FONT face="Times New Roman,Times" size=2>Host Port</FONT></TH>
    <TH><FONT face="Times New Roman,Times" size=2>Host Nicknames</FONT></TH></TR>
    <TR vAlign=top>
    <TD><FONT face="Times New Roman,Times" size=2>02A-25015</FONT></TD>
    <TD><FONT face="Times New Roman,Times" size=2>Device Adapter Pair 1</FONT>
    <BR><FONT face="Times New Roman,Times" size=2>Cluster 1, Loop A</FONT>
    <BR><FONT face="Times New Roman,Times" size=2>Array 2, Vol 042</FONT></TD>
    <TD><FONT face="Times New Roman,Times" size=2>0x10</FONT></TD>
    <TD><FONT face="Times New Roman,Times" size=2>Open System</FONT></TD>
    <TD><FONT face="Times New Roman,Times" size=2>000.9 GB</FONT></TD>
    <TD><FONT face="Times New Roman,Times" size=2>RAID-5 Array</FONT></TD>
    <TD><FONT face="Times New Roman,Times" size=2>Fibre Channel</FONT>
    <BR><FONT face="Times New Roman,Times" size=2>ID 00, LUN 502A</FONT></TD>
    <TD><FONT face="Times New Roman,Times" size=2>R1L01_0,</FONT> <BR><FONT
    face="Times New Roman,Times" size=2>R1L01_1,</FONT> <BR><FONT
    face="Times New Roman,Times" size=2>R2L08_1,</FONT> <BR><FONT
    face="Times New Roman,Times" size=2>R2L08_0,</FONT> <BR><FONT
    face="Times New Roman,Times" size=2>S3L06_0, S3L06_</FONT> <BR><FONT
    face="Times New Roman,Times" size=2>1, S4L06_0,</FONT> <BR><FONT
    face="Times New Roman,Times" size=2>S4L06_1</FONT></TD></TR>
    <TR vAlign=top>

    i wrote the programme for 2 stepper motor as attachment file below. they are run. but when the "start" button is ON then the "emergency stop" is not effects.
    for "emergency stop" functions, i used 4 limit contactors. if one of them is "on" then the programme will be stop.
    but in fact, when the system is running, i can not stop if one of the limit contacor is on.
    cuold you please help me to do with this problem.
    thanks
    Attachments:
    EMERGENCY STOP.vi ‏435 KB
    toolpaths-ut.vi ‏64 KB
    parallel program motor 1,2.vi ‏96 KB

  • Read Only and HTML Table Cell Attributes

    Hi Guys,
    I believe i have come accross a bug - i'm been working on a form that can be filled out and printed - when going into print for sake of the output looking nice i set the form element to read-only.
    As soon as an element such as a drop down box, text feild, text area, etc which display as "[selected value]" in plain text in read only mode, are changed to the read only mode apex seem to ignore the html table cell attributes.
    For example i have a id number in the top left and then a version number in the top right. Both use a text feild; the top left uses 'width="100%"' for it's HTML Table Cell Attribute to push the right cell to the right. and the right cell has 'align="right"'. Now this works fine when read only is off... but as soon as read only is on, both the width and the alignment are totally ignored, and i can't find any sign of them in the code.
    Because this is for printing; using the "disable" on the form element instead of "read only" function, isn't appropriate as disabled will make the elements faded and hard to read when printed, and keeping the elements as is will allow the user to edit information on the print screen - which is not appropriate.
    Is this a bug? Will it be fixed soon? Is there any work around?
    Cheers,
    Alex

    Use the "Read Only Element Table Cell(s) Attributes" in the Read Only region of the Item edit form.
    Scott

  • Urgent! HTML table cell - Flash movie display browser dependent

    Hi all,
    I wonder if anyone has experienced the same problem i have
    (note, Windows XP, Dreamweaver 4).
    Consider the (rough) HTML code attached: A simple HTML table
    of one column and two rows is constructed to hold an image banner
    link and a Flash movie banner link in each cell consecutively.
    The Flash movie works normally when the HTML page is viewed
    in IE and Opera, until that is, it is placed inside a table cell.
    Inside the cell the flash movie seems to disappear, though i
    suspect it collapses to an image 1 pixel in height, as this can
    just about be seen using Opera.
    Is there something that I am missing? The code of course
    seems correct to me - perhaps there is a browser setting i am
    missing?
    Any help apprceiated - as i need to implement this code ..
    Daz

    Hi Alan,
    Dont think that was the problem (percentages used to scale to
    users browser?) ... though you did set me thinking!
    Was tired before, so only just remembered that when i was
    experimenting with setting the Table Properties the image was
    actually occasionally visible!!
    Short version: When formatting a cell containing a Flash
    animation dont leave the H field blank or use % (even though you're
    suppose to be able to!), use pixels instead - otherwise the Flash
    image collapses/disappears. Blank and % are fine everywhere else
    (I did type a long answer before, but it got eaten by the
    forum monster
    Someone/i will probably figure out
    why this is so or maybe i've just rediscovered the wheel
    here - but thats not really important now - because my Flash
    animation now renders similarly across IE, Opera and FireFox !!
    So thanks for your help!
    Daren

  • HTML Table with alternative row color, Using SQL XML

    Hi,
    I want to send out an email and the email body contains a table with data. I am using SQL to create the HTML table and to populate values inside the table. Below is the code I have so far
    DECLARE
    @HTML NVARCHAR(MAX)
    IF (SELECT
    COUNT(*)
    from Employee])
    != 0
    Begin
    SET
    @HTML =
    '<html><style>
          tr:nth-of-type(even) {
          background-color:#ccc;
    </style><body><h1 style="font-family:Tahoma; font-size:12px;">Hi,</h1>'
    +
    'Below is the report'+
    '<br></br>'+
    '<table border="1" width="100%" style="border:1px solid #77bfe4;font-family:Tahoma; font-weight:normal; font-size:12px;" cellpadding="4" cellspacing="0">'
    +
    '<tr bgcolor="yellow" style="font-family:Tahoma; font-weight:bold; font-size:12px;"><td colspan="2"><center>Report</center></td></tr>'+
    '<tr bgcolor="Blue" style="font-family:Tahoma; font-weight:bold; font-size:12px;"><td><center>Col1</center></td><td><center>col2</center></td></tr>'
    +
    CAST((
    Select
    td =
    col1, '',
    td
    = col2
    , '' from
    (Select ID as col1, Emp as Col2
    from
    Employee) E
    FOR XML
    PATH('tr'),
    TYPE
    AS NVARCHAR(MAX))
    + '</table><br>Thank you</br></body></html>'
    END
    select
    ISNULL(@HTML,'NoEmail')
    But I am having trouble generating alternative colors for each row (tr:nth-of-type(odd) is not working for me)
    Below is what the table should look like 
    Please help.
    Thank you for your help in advance. 

    Thank you for the response, I got the code to work.
    DECLARE @HTML NVARCHAR(MAX) ;
    IF (SELECT COUNT(*) from Employee]) != 0
    Begin
    SET @HTML = '<h1 style="font-family:Tahoma; font-size:12px;">Hi,</h1>' +
    'Below is the report'+
    '<br></br>'+
    '<table border="1" width="100%" style="border:1px solid #77bfe4;font-family:Tahoma; font-weight:normal; font-size:12px;" cellpadding="4" cellspacing="0">' +
    '<tr bgcolor="yellow" style="font-family:Tahoma; font-weight:bold; font-size:12px;"><td colspan="2"><center>Report</center></td></tr>'+
    '<tr bgcolor="Blue" style="font-family:Tahoma; font-weight:bold; font-size:12px;"><td><center>Col1</center></td><td><center>col2</center></td></tr>' +
    CAST(( SELECT CASE when (ROW_NUMBER() over (Order by Col1 DESC))%2 = 0 then '#E0E0E0' else 'white' END as "@bgcolor", '',
    td = col1, '',
    td = col2 , '' from
    (Select ID as col1, Emp as Col2
    from Employee) E
           FOR XML PATH('tr'), TYPE
    ) AS NVARCHAR(MAX)) + '</table><br>Thank you</br></body></html>'
    END
    select ISNULL(@HTML,'NoEmail')

  • No table line started. Output to cell not possible

    Hi Everybody:
    I have developed a smartform where in if i give single record as input, it comes fine, but if more than one record is given thru selection scr, the error comes  No table line started. Output to cell not possible when page break is issued.
    Pls help as to why is it coming,
    I also tried SF TRACE, but when i display the error, it says Cannot read from the database.
    Best Regards, Neetu

    To print the internal table's data in the smartform you should use the TABLE.
    LIke define a TABLE, inside the table define required table types.
    Put your data inside your main ... under the Table by using one of the line type.
    Regards,
    Naimesh Patel

  • How do you write an output in columns to an html table?

    Ive written two programs. My first program compares the difference of two text files and prints the differences in an output. My second program creates a simple Html table. I would like to write my output to this table. How would I go about doing this in java?
    Thanks in advance for your help.

    Thanks guys for the insight. Im very new to java so I'm a complete novice when it comes to writing code. What I came to realize was I needed to do was build a dynamic table. My issue was that I was building a static table and I couldint populate the table with my results. Below is an example of the code I wrote for my table. My apologies if didnt format my code correctly.
    import java.io.BufferedWriter;
    import java.io.File;
    import java.io.FileWriter;
    import java.io.IOException;
    import java.util.Set;
    public class HtmlDataTable {
      public void writehtmltable(Set<String> filenameSet){
      //creates table in the following path
      File htmltable = new File("C:/Output.html");
      try {
      BufferedWriter bw = new BufferedWriter(new FileWriter(htmltable));
      //write html data table
      bw.write(htmltop);
      for (String jarfilename:filenameSet){
      String line="<tr>  <td> </td>      <td> </td> </td>      <td>"+jarfilename + " </tr>";
      bw.write(line);
      bw.write(htmlbottom);
      //close the resource
      bw.close();
      } catch (IOException e) {
      e.printStackTrace();
    private static String htmltop = "<!DOCTYPE html>\n"+
                                      "<html>\n"+
                                         "<head>"+
                                         "<title>Jar Filename Existance Check</title>"+
                                         "<style>"+
                                         "table, th, td {"+
                                         "    border: 2px solid black;"+
                                         "}"+
                                         "</style>"+
                                         "</head>"+
                                         "<body>"+
                                         "<table>\n"+
                                         "   <tr>     <th colspan='100'>" +
                                         "<h3><br>Jarfilename Existance Check</h3>      </th>   </tr>" +
                                         "<th>POM File Data</th> <th>Lib Directory Files</th> <th>Missing Jarfiles</th>";
      private static String htmlbottom = "</table></body></html>";
    public static void main(String[] args) {
      new HtmlDataTable().writehtmltable(null);

  • Table containing Output Types used by POs

    Hi,
    Is there a table that contains the Output types used by POs?
    Thanks!
    Best Regards,
    Armie

    Dear Armie,
    Transaction SM30:
    Table/View           VN_T685B
    Application          EF
    Regards,
    ian, Wong Loke Foong

  • Problem While exporting HTML table to Excel(.CSV) in SharePoint 2010

    Hi ,
    I was exporting HTML table to .CSV file. 
    Problem is if any field contains '>' or '<' symbol then after exporting to .CSV, it was showing like '&gt' and '&lt' and the code is  as below.
    //Export HTML table to CSV 
    function toCSV() {
          var data = document.getElementById('reportstable');
          var csvData = [];
          var tmpArr = [];
          var tmpStr = '';
          for (var i = 0; i < data.rows[0].cells.length; i++) 
            tmpArr.push((data.rows[0].cells[i].innerText || data.rows[0].cells[i].textContent));
          csvData.push(tmpArr.join('\t'));
          for (var i = 1; i < data.rows.length; i++) 
            tmpArr = [];
            for (var j = 0; j < data.rows[0].cells.length; j++) 
            tmpArr.push(data.rows[i].cells[j].innerHTML);
            csvData.push(tmpArr.join('\t'));
          var output = csvData.join('\n');
          SaveContents(output);
    //For saving the file
    function SaveContents(element) {
            if (document.execCommand) {
                var oWin = window.open("about:blank","_blank");
                oWin.document.write(element);
                oWin.document.close();
                var success = oWin.document.execCommand('SaveAs', false, "FilteredReport.xls")
                oWin.close();
    Thanks in Advance

    Hi,
    According to your post, a problem occurred when you exported the HTML table to Excel(.CSV).
    The following code for your reference:
    function toCSV() {
    var data = document.getElementById('reportstable');
    var csvData = [];
    var tmpArr = [];
    var tmpStr = '';
    for (var i = 0; i < data.rows[0].cells.length; i++)
    tmpArr.push((data.rows[0].cells[i].innerText || data.rows[0].cells[i].textContent));
    csvData.push(tmpArr.join('\t'));
    for (var i = 1; i < data.rows.length; i++)
    tmpArr = [];
    for (var j = 0; j < data.rows[0].cells.length; j++)
    tmpArr.push(data.rows[i].cells[j].innerHTML);
    csvData.push(tmpArr.join('\t'));
    var output = csvData.join('\n');
    SaveContents(output.replace(/&lt;/g, '<').replace(/&gt;/g, '>'));
    Best Regards
    Dennis Guo
    TechNet Community Support

  • I want to create an HTML table of img maps dynamically from DB retrieves...

    Hi,
    How do I build dynamic HTML code in a function and then populate a HTML region to render it.. (did I say that right?)
    I want to create an HTML table of img maps dynamically from DB retrieves...
    Thank you, Bill

    Vikas and Andy,
    Using Andy's code I'll go further...
    I want to create a function that returns HTML code that has been built dynamically.
    create or replace function "GET_CH_TABLE"
    return VARCHAR2
    is
    HTML_STRING VARCHAR2(2000); -- Create a string variable
    BEGIN
    HTML_STRING:= '<table align="center">' ||chr(10)||
    ' <tr>' ||chr(10)||
    ' <td> TEST ' ||chr(10)||
    ' /td>' ||chr(10)||
    ' /tr>' ||chr(10)||
    ' tr>' ||chr(10)||
    ' td>' ||chr(10)||
    ' a href=https:// ............etc. etc.. building the <TABLE> and <TD> cells having whatever I want... example.. changing the name of an image dependant on something else..
    return HTML_STRING; -- output the string to the region
    --also tried htp.p(HTML_STRING);
    END;
    =====================================
    Building the dynamic HTML is not my problem. It is how to get it into a region and to be read as HTML from a function call...
    I'd like the source of the region to be the returned HTML from a function call to GET_CH_TABLE();
    but it gives error:
    ORA-06550: line 1, column 7: PLS-00221: 'GET_CH_TABLE' is not a procedure or is undefined
    ORA-06550: line 1, column 7: PL/SQL: Statement ignored
    Debug:
    1: begin
    2: GET_CH_TABLE();
    3: end;
    I

  • Do you need to generate HTML table rows from XML in InDesign?

    General issue: you export XML and you get a bunch of content for xml elements that were a table in inDesign. But they don't have any rows, just cell after cell. What will make rows in your output?
    Solution: XSLT; you need to use the @aid:tcols attribute of exported XML to determine the number of columns that your table should be. This is written in XSLT 1.1 so it shoud work with an export from InDesign. If you have problems with using it on export of XML, try using it on the XML afetr it has been exported, in Oxygen or other XSLT processor. Best to save acopy of your files before using the XSLT with them.  Copy all of the plain text and past into a new file, save with your own filename, ending with .xsl file extension. Then when exporting XML from InDesign CS3-5, browse to your new .xsl file and select it. PLEASE read about XSLT files at w3c.schools or other resource if you want to understand what is going on with this file.
    BTW <!-- indicates comments in code -->
    <?xml version="1.0" encoding="UTF-8"?>
    <!-- NO WARRANTY that this example code will work as written for your XML file in InDesign. You can add more templates to the output to map your heading styles to h1, h2, etc. -->
    <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.1"
        xmlns:aid="http://ns.adobe.com/AdobeInDesign/4.0/"
        xmlns:aid5="http://ns.adobe.com/AdobeInDesign/5.0/" exclude-result-prefixes="xsl aid aid5">
        <xsl:output method="html" indent="yes" encoding="UTF-8"
            doctype-public="http://www.w3.org/TR/xhtml/DTD/xhtml-transitional.dtd"/>
    <!-- parameter to use the name of element with attribute aid:theader as the th output -->
        <xsl:param name="tableElem">//*[local-name()][@aid:table='table']</xsl:param>
        <xsl:param name="colheadStyle">
            <xsl:value-of select="//*[local-name()][@aid:theader][1]"/>
            <!-- i.e. colHead-->
        </xsl:param>
    <!-- parameter to use the name of element with attribute aid:cell but not aid:theader as the td  output -->
    <!--i.e. tabletext or whatever the name of your Cell level  element is in InDesign -->
        <xsl:param name="cellStyle">
            <xsl:value-of select="//*[local-name()][@aid:table='cell' and not(@aid:theader)][1]"/>
        </xsl:param>
        <!-- handles a Story element marked up with HTML-type elements, but uses the <Table> element of IDD  -->
        <!-- if a true HTML table is in the content, it will be passed through -->
        <xsl:template match="Story"><!-- make a basic HTML file from a Story -->
            <html>
                <head>
                    <title>Sample Table</title>
                </head>
                <body>
                    <xsl:apply-templates><!-- will handle direct text of the  <Story>, and <Table> -->
                        <xsl:with-param name="colheadStyle" select="$colheadStyle"/>
                        <xsl:with-param name="cellStyle" select="$cellStyle"/>
                    </xsl:apply-templates>  
                </body>
            </html>
        </xsl:template>
       <!-- use the styles to find the elements of IDD <Table> element -->
        <xsl:template match="Table">
            <xsl:param name="colheadStyle">
                <xsl:value-of select="$colheadStyle"/>
            </xsl:param>
            <xsl:param name="cellStyle">
                <xsl:value-of select="$cellStyle"/>
            </xsl:param>
            <xsl:variable name="cellsPerRow">
                <xsl:value-of select="@aid:tcols"/>
            </xsl:variable>
            <table><!-- start the table -->
                <!-- xhtml requires lower-case name for table element-->
                <tr>
                    <xsl:apply-templates select="*[@aid:theader='']">
                        <xsl:with-param name="colheadStyle" select="$colheadStyle"/>
                        <xsl:with-param name="cellStyle" select="$cellStyle"/>
                    </xsl:apply-templates>
                </tr>
                <!--  and @aid:style=$cellStyle -->
                <xsl:for-each
                    select="*[@aid:table='cell'][not(@aid:theader='')][position() mod $cellsPerRow = 1]">
    <!-- some code adapted with  permission, from http://www.computorcompanion.com/LPMArticle.asp?ID=202
    Building HTML Tables with XSL by James Byrd; please include this acknowledgement in all files that use his code -->
    <!-- this is the tricky bit of the code that James Byrd set up
    p-class-tabletext-[position() mod $cellsPerRow = 1 continues looping until the position of the active element divided by $cellperRow (@aid:tcols value) tried with [@aid:style=$cellStyle] has a remainder of 1 -->
    <!--  .|following-sibling::p-class-tabletext-[position() &lt;  $cellsPerRow] applies first to the currently selects cell with "." then continues with the following-siblings whose position is less than  the value of cells per row (@aid:tcols value) -->
                    <tr>
                        <xsl:apply-templates
                            select=".|following-sibling::*[@aid:table='cell'][not(@aid:theader='')][position() &lt; $cellsPerRow]"
                        />
                    </tr>
                </xsl:for-each>
            </table>
        </xsl:template>
        <xsl:template match="*">
            <xsl:param name="colheadStyle">
                <xsl:value-of select="$colheadStyle"/>
            </xsl:param>
            <xsl:param name="cellStyle">
                <xsl:value-of select="$cellStyle"/>
            </xsl:param>
            <xsl:variable name="cellsPerRow">
                <xsl:value-of select="parent::Table/@aid:tcols"/>
            </xsl:variable>
            <xsl:choose>
                <!-- colHead aid:table="cell" aid:theader=""-->
                <xsl:when test="parent::Table and @aid:theader">
                    <th>
                        <xsl:apply-templates>
                            <xsl:with-param name="colheadStyle" select="$colheadStyle"/>
                            <xsl:with-param name="cellStyle" select="$cellStyle"/>
                        </xsl:apply-templates>
                    </th>
                    <xsl:if test="(position() = last()) and (position() &lt; $cellsPerRow)">
                        <xsl:call-template name="FillerCells">
                            <xsl:with-param name="cellCount" select="$cellsPerRow - position()"/>
                        </xsl:call-template>
                    </xsl:if>
                </xsl:when>
                <xsl:when test="parent::Table and @aid:table='cell' and not(@aid:theader)">
                    <td>
                        <xsl:apply-templates>
                            <xsl:with-param name="colheadStyle" select="$colheadStyle"/>
                            <xsl:with-param name="cellStyle" select="$cellStyle"/>
                        </xsl:apply-templates>
                    </td>
                    <xsl:if test="(position() = last()) and (position() &lt; $cellsPerRow)">
                        <xsl:call-template name="FillerCells">
                            <xsl:with-param name="cellCount" select="$cellsPerRow - position()"/>
                        </xsl:call-template>
                    </xsl:if>
                </xsl:when>
    <!-- for non-table elements this generic element handler will  pick up an aid:pstyle (if present) and create a class attribute from it. Works for any element that has the same name as HTML element such as <p> but it doesn't add wrapper elements like <ul> or <ol> for lists. -->
                <xsl:otherwise>
                    <xsl:element name="{name()}">
                        <xsl:if test="@aid:pstyle">
                            <xsl:attribute name="class">
                                <xsl:value-of select="@aid:ptyle"/>
                            </xsl:attribute>
                        </xsl:if>
                        <xsl:apply-templates>
                            <xsl:with-param name="colheadStyle" select="$colheadStyle"/>
                            <xsl:with-param name="cellStyle" select="$cellStyle"/>
                        </xsl:apply-templates>
                    </xsl:element>
                </xsl:otherwise>
            </xsl:choose>
        </xsl:template>
        <!-- take care of text that is a direct child of the <Story> by wrapping it in a <p> to make valid HTML -->
        <xsl:template match="text()">
            <xsl:variable name="myString">
                <xsl:value-of select="string-length(normalize-space(.))"/>
            </xsl:variable>
            <xsl:choose>
                <xsl:when test="parent::Story">
                    <xsl:if test="$myString > 0">
                        <xsl:element name="p">
                            <xsl:attribute name="class">text</xsl:attribute>
                            <xsl:value-of select="normalize-space(.)"/>
                        </xsl:element>
                    </xsl:if>
                </xsl:when>
                <xsl:otherwise>
                    <xsl:value-of select="normalize-space(.)"/>
                </xsl:otherwise>
            </xsl:choose>
        </xsl:template>
       <!-- make br element conform to good HTML markup -->
        <xsl:template match="br">
            <br />
        </xsl:template>
        <!-- this recursive template calls itself until its test condition is satified -->
        <!-- it outputs a cell whose only content is a non-breaking space -->
        <!-- do not use   in place of Unicode &#160; for the non-breaking space -->
        <!-- the value of $cellCount is set in the main XSL template -->
        <xsl:template name="FillerCells">
            <xsl:param name="cellCount"/>
            <td>&#160;</td>
            <xsl:if test="$cellCount > 1">
                <xsl:call-template name="FillerCells">
                    <xsl:with-param name="cellCount" select="$cellCount - 1"/>
                </xsl:call-template>
            </xsl:if>
        </xsl:template>
    </xsl:stylesheet>
    Message was edited by: HoneoyeFalls
    Sample XML file exported from IDD
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <Story><Table xmlns:aid="http://ns.adobe.com/AdobeInDesign/4.0/" xmlns:aid5="http://ns.adobe.com/AdobeInDesign/5.0/" aid:table="table" aid:trows="2" aid:tcols="2"><colHead aid:table="cell" aid:theader="" aid:crows="1" aid:ccols="1" aid:ccolwidth="44">1 colHead</colHead><colHead aid:table="cell" aid:theader="" aid:crows="1" aid:ccols="1" aid:ccolwidth="56">2 colHead</colHead><tabletext aid:table="cell" aid:crows="1" aid:ccols="1" aid:ccolwidth="44">1 tabletext</tabletext><tabletext aid:table="cell" aid:crows="1" aid:ccols="1" aid:ccolwidth="56">2 tabletext</tabletext><tabletext aid:table="cell" aid:crows="1" aid:ccols="1" aid:ccolwidth="44">row 2 1 tabletext</tabletext><tabletext aid:table="cell" aid:crows="1" aid:ccols="1" aid:ccolwidth="56">row 2 2 tabletext</tabletext></Table>
    <table><tr><th>normal HTML table heading</th></tr>
    <tr><td>normal HTML table<br/>cell text</td></tr></table></Story>

    You can use RECORD type declaration:
    SQL> declare
      2   type rec_type is record (
      3    ename emp.ename%type,
      4    sal emp.sal%type
      5   );
      6   type rc is ref cursor return rec_type;
      7   rc1 rc;
      8   rec1 rec_type;
      9  begin
    10   open rc1 for select ename, sal from emp;
    11   loop
    12    fetch rc1 into rec1;
    13    exit when rc1%notfound;
    14    dbms_output.put_line(rec1.ename || ' ' || rec1.sal);
    15   end loop;
    16   close rc1;
    17  end;
    18  /
    SMITH 800
    ALLEN 1600
    WARD 1250
    JONES 2975
    MARTIN 1250
    BLAKE 2850
    CLARK 2450
    SCOTT 3000
    KING 5000
    TURNER 1500
    ADAMS 1100
    JAMES 950
    FORD 3000
    MILLER 1300or use, for example, VIEW to declare rowtype:
    SQL> create view dummy_view as select ename, sal from emp;
    View created.
    SQL> declare
      2   type rc is ref cursor return dummy_view%rowtype;
      3   rc1 rc;
      4   rec1 dummy_view%rowtype;
      5  begin
      6   open rc1 for select ename, sal from emp;
      7   loop
      8    fetch rc1 into rec1;
      9    exit when rc1%notfound;
    10    dbms_output.put_line(rec1.ename || ' ' || rec1.sal);
    11   end loop;
    12   close rc1;
    13  end;
    14  /
    SMITH 800
    ALLEN 1600
    WARD 1250
    JONES 2975
    MARTIN 1250
    BLAKE 2850
    CLARK 2450
    SCOTT 3000
    KING 5000
    TURNER 1500
    ADAMS 1100
    JAMES 950
    FORD 3000
    MILLER 1300 Rgds.

  • How to Create a Temporary Table with SQL Server

    I know you can create a temporary table in SQL Server 2000, but not quite sure how to do it in CFMX 7, i.e., does the SQL go inside a <CFQUERY dbtype="query"> tag?
    I'm pulling the main set of records from an Oracle server (1st data source), but it does not contain employee names, only employee IDs.  Since I need to show the employee name along with the Emp ID, I'm then pulling a list of "current" employee names from a SQL Server (2nd data source), which is the main database on our CF server.
    I've got a QofQ that works fine, except it only matches EmpIDs that exist in both result sets.  Employees who are no longer employed, don't match, and don't display.  Since I can't do a LEFT OUTER JOIN with a QofQ, what I need to do is get the records from the Oracle server into the SQL Server.  Preferably in a temporary table.
    I was hoping if I could get those Oracle records written to a temp table on the main SQL Server, in same database as the Employee Name table, I could then write a normal <CFQUERY> that uses a LEFT OUTER JOIN.
    I think I could probably write a Stored Procedure that would execute the SQL to create the temporary table, but am trying to avoid having to write the SP, and do it the simplest way.
    This query will be a program that can be run hundreds of times per day, with a form that allows users to select date ranges, locations, and other options.  That starts the queries, which creates the report.  So I just need the temp table to exist only until all the SQL has run, and the <CFOUTPUT> has generated a report.
    If the premise is right, I just need some help with the syntax for creating a SQL Server temp table, when you want to write records to it from an external data source.  I'm trying the following, but getting an error:
    <CFQUERY name="ITE_Temp" datasource="SkynetSQL">
    CREATE TABLE #MyTemp
    (   INSERT INTO #MyTemp
    ITE2.TrueFile char (7) NOT NULL,
    ITE2.CountOfEmployee int NULL,
    ITE2.DTL_SUBTOT decimal NULL,
    ITE2.EMPTYPE char (3) NULL,
    ITE2.ARPT_CD char (3) NULL
    </CFQUERY>
    So I actually created a permanent table on the SQL Server, and wrote the below SQL, which does work, and does write the records to table.  I can then write another CFQUERY with a LEFT OUTER JOIN, and get all the records, including those that don't have matching employee name:
    <CFQUERY datasource="SkynetSQL">
    <CFLOOP index="i" from="1" to = "#ITE2.RecordCount#">
    INSERT INTO ITE_Temp
       (FullFile,
       EmployeeCount,
       DTL_Amount,
       EmployeeType,
       station)
    VALUES  ('#ITE2.TrueFile[i]#',
       #ITE2.CountOfEmployee[i]#,
       #ITE2.DTL_SUBTOT[i]#,
       '#ITE2.EMPTYPE[i]#',
       '#ITE2.ARPT_CD[i]#')
    </CFLOOP>
    </CFQUERY>
    But, I hate to have to create a table and physically write to it.  For one, it seems slower, and doing it in temp would be in memory, and probably much faster, correct?  Is there some way to code the above, so that it does something similar, but in a TEMPORARY TABLE?   If I can figure out how to do this, I can pull data from multiple data sources and servers, and using SQL Server temp tables, work with the data as if it was all on the same SQL Server, and do some cool reports.
    Everything I've done for the past few years, has all been from data from a single source, whether SQL Server, or another server.  Now I need to start writing reports where data can come from 3 or 4 different servers, and be able to do joins (inner and outer).  Thanks for any advice/help.  Much appreciated.
    Gary

    While waiting to hear back, I was able to write the query results from an outside Oracle server, to a table on the local SQL Server, and do the LEFT OUTER JOIN required for the final query and report to work.  That was with this syntax:
    <CFQUERY name="AddTableRecords" datasource="MyTable">
    TRUNCATE TABLE ITE_Temp
    <CFOUTPUT query="ITE2">
    INSERT INTO ITE_Temp
    (FullFile,EmployeeCount,DTL_Amount,EmployeeType,station)
    VALUES
    ('#TrueFile#', #CountOfEmployee#, #DTL_SUBTOT#, '#EMPTYPE#', '#ARPT_CD#')
    </CFOUTPUT>
    </CFQUERY>
    However, I was not able to write to a temporary table AND read the results. I got the syntax to run to write the above results to a temporary table.  But when I tried to read and output the results from the temp table, I got an error.  Also, it wouldn't take the single "#" (local) only the global "##" table var, using this syntax.  Note that if I didn't have the DROP TABLE in the beginning, the 2nd time you run this query, you get an error telling you the table already exists.
    <CFQUERY name="ITE_Temp2" datasource="MyTable">
    DROP TABLE ##MyTemp2
    CREATE TABLE ##MyTemp2
    FullFile char (7) NOT NULL,
    EmployeeCount int NULL,
    DTL_Amount decimal NULL,
    EmployeeType char (3) NULL,
    station char (3) NULL
    <CFOUTPUT query="ITE2">
    INSERT INTO ##MyTemp2 VALUES
    '#ITE2.TrueFile#',
    #ITE2.CountOfEmployee#,
    #ITE2.DTL_SUBTOT#,
    '#ITE2.EMPTYPE#',
    '#ITE2.ARPT_CD#'
    </CFOUTPUT>
    </CFQUERY>
    So even though the above works, I could use some help in reading/writing the output.  I've tried several things similar to below, but they don't work.  It't telling me ITE_Temp2 does not exist.  It's not easy to find good examples of creating temporary tables in SQL Server.
    <CFQUERY name="QueryTest2" datasource="SkynetSQL">
    SELECT *
    FROM ITE_Temp2
    </CFQUERY>
    <CFOUTPUT query="ITE_Temp2">
    Output from Temp Table<br>
    <p>FullFile: #FullFile#, EmployeeCount: #EmployeeCount#</p>
    </CFOUTPUT>
    Thanks for any help/advice.
    Gary.

  • Html document ... button in am html table

    Hi,
    I have been exploring the dd classes for some days now. I have a persistent problem which I can not find a way of resolving. I create an html table into which I want to put text and buttons. If for every column I only put in text, then the alignement is quite acceptable. That is the height of the cells are commensurate with the height of the text, or there does not appear to be any padding in the cells above or elow the texts.
    Now to add a button I first add a form area in the column which will contain the button. This works fine but then the height of the cell is no longer just the height of the button. I have tried the methods NO_LINEBREAK( start = 'X' ) and NO_LINEBREAK( end = 'X' ) at the begining and end of the column, that is before going to the next column.
    This has the effect of removing the first break only, so the top of the button is just below the cell top but the bottom of the button is one line break away from the bottom of the cell. So it would appear that a for area always ends with a line break.
    The only way I found to almost do this is to assign 'X' to the attribute line_with_layout. Which should not be done and adds a column to the table anyway.
    So how do I make a cell with the same height as the button taht is inside it.
    Many thanks,
    PD
    Surely there is some simple method.

    Hi,
    Let me send the code snippets. I have tried all that is available. Either there is something missing or I am doing this wrong :
    This first snippets works the best but adds two extra columns after each button. with lv_button = 2 this produces four columns even though I only created for 2.
    create the table
      CALL METHOD gobj_html_doc->add_table
        EXPORTING
          no_of_columns               = lv_columns
          width                       = '100%'
          cell_background_transparent = 'X'
          border                      = '0'
        IMPORTING
          table                       = lv_table_element
          tablearea                   = lv_table_area.
    add columns
      DO lv_columns TIMES.
        lv_width = lv_i MOD 2.
        IF lv_mod EQ 0.
          lv_str = '30%'.
        ELSE.
          lv_str = '70%'.
        ENDIF.
        ADD 1 TO lv_i.
        CALL METHOD lv_table_element->add_column
          EXPORTING
            width  = lv_width
          IMPORTING
            column = lv_column.
        APPEND lv_column TO lt_column.
      ENDDO.
    add buttons
      LOOP AT lt_column INTO lv_column.
        CALL METHOD lv_column->add_form
          IMPORTING
            formarea = lv_form_area.
        lv_form_area->is_line_with_layout = 'X'.
        CALL METHOD lv_form_area->add_button
          EXPORTING
            sap_icon = 'ICON_CHANGE'
          IMPORTING
            button   = lobj_button.
         CALL METHOD lv_table_element->new_row.
      ENDLOOP.
    the following does not work either but no extrra columns are added.
    add buttons
      LOOP AT lt_column INTO lv_column.
        CALL METHOD lv_column->add_form
          IMPORTING
            formarea = lv_form_area.
        lv_form_area->line_with_layout( start = 'X' ).
        CALL METHOD lv_form_area->add_button
          EXPORTING
            sap_icon = 'ICON_CHANGE'
          IMPORTING
            button   = lobj_button.
         CALL METHOD lv_table_element->new_row.
         lv_form_area->line_with_layout( end = 'X' ).
      ENDLOOP.
    and the folling does not help much either.
    add buttons
      LOOP AT lt_column INTO lv_column.
        CALL METHOD lv_column->add_form
          IMPORTING
            formarea = lv_form_area.
        lv_form_area->no_line_break( start = 'X' ).
        CALL METHOD lv_form_area->add_button
          EXPORTING
            sap_icon = 'ICON_CHANGE'
          IMPORTING
            button   = lobj_button.
         CALL METHOD lv_table_element->new_row.
         lv_form_area->no_line_with_layout( end = 'X' ).
      ENDLOOP.
    all I can tell is that there is always a <br> token at the end of the form area. Perhaps the answer is to redefine the method in a derived class?
    If you have more ideas I am certainly opened to them ...
    thanks,
    PD.

  • Save as HTML - tables?

    Hello,
    we are trying to save the FM document as HTML using the built in save as functionality. The tables are exported, but no ruling/borders and straddling information is reflected in the output HTML.
    Does anybody know if there is a way to make FM to export tables with formatting information or any tool that is able to do that?
    Thanks in advance.
    Best regards,
    Viktor

    FM10.
    I don't have FM10, and haven't tried HTML generation since FM6 or so, but anyone who can help needs to know the version.
    but no ruling/borders and straddling information is reflected in the output HTML.
    The FM10 on-line help says, in the Troubleshooting and tips on HTML conversion
    Make sure the table formats you use have regular ruling lines defined for at least one body row. Otherwise, the HTML tables will have no lines around table cells.
    I would expect straddles to be converted to spans, since HTML has attributes for that.
    can you suggest some 3rd party sw?
    I'm not sure that's necessary or desired. Earlier versions of Frame used WebWorks Publisher. HTML generation is now built in. I don't know if you can even get WWP for FM10, or if it would provide any features not standard in FM10.

Maybe you are looking for