An HTML DB application over table with CDM RuleFrame

Hi guys,
I have an Oracle Forms application we built using the CDM RuleFrame framework available with Headstart (an offering from Oracle Consulting). This framework allows us to validate all our business rules in the database using PL/SQL packages and DB triggers at commit time. When at least 1 rule is invalid, a generic exception is raised and all messages are available thru a call to a procedure that returns a PL/SQL table of records.
Now, we need to build a Web interface to that application and I need to know if we can reuse the same messaging framework we already have if we use HTML DB.
I don't know if it is relevant or not but Headstart does come with a mechanism to display those errors with the now defunct WebDB.
What do you guys think?
Thanks
P.S. Be gentle please as I have no experience (yet) with HTML DB

In this small example, you create a process and button which fires the process. Also, create an item called ERR_TXT. Make the process source:
begin
:foo := 1/0;
exception when others then
:ERR_TXT := sqlerrm;
end;
When you run this page and click the button, you'll see that the item ERR_TXT contains the value:
ORA-01476: divisor is equal to zero
In your case, you'd be looking for a specific exception and you'd get the error messages out of the PL/SQL table rather than simply from SQLERRM.
Once you have the messages and assigned them to one or more HTML DB items you can print them out in separate region.
Sergio

Similar Messages

  • ADF BC with CDM Ruleframe informationals and warnings

    Best experts,
    I have an issue regarding using ADF BC in combination with CDM-RuleFrame.
    We are raising different kind of messsages (errors,warnings,informationals).
    JHeadstart delivers an AM that raises the errors but ignores the transactions with warnings and informationals.
    To display the informationals and warnings I want to follow this path:
    DB ==> Transaction (stores the messages on the AM) ==> CommitBean (Displays the messages in browser)
    I use the folowing transactionImpl:
    public class RuleFrameTransactionImpl extends DBTransactionImpl2{
      String mUndoId;
      private static Logger sLog = Logger.getLogger(RuleFrameTransactionImpl.class);
      private boolean hasErrors;
      public static String MESSAGE_SEPARATOR = "<br>";
      public static String QMS_UNHANDLED_EXCEPTION = "QMS-00100";
      public RuleFrameTransactionImpl()
        super();
       * Standard Ruleframe
      private void openRuleFrameTransaction()
        try
          CallableStatement cs = this.createCallableStatement("begin qms_transaction_mgt.open_transaction('JAVA'); end;",
                                                              1);
          try
            cs.execute();
          catch (java.sql.SQLException e)
            handleSQLError(e);
          finally
            try
              cs.close();
            catch (Exception ex)
              sLog.error("Error closing Callable Statement for CDM RuleFrame Open Transaction: " + ex);
      public void closeRuleFrameTransaction()
        // Close RuleFrame transaction
        CallableStatement cs = this.createCallableStatement("begin qms_transaction_mgt.close_transaction('JAVA'); end;",
                                                            1);
        try
          cs.execute();
          setDBFeedbackOnApplicationModule();
        catch (java.sql.SQLException e)
          handleSQLError(e);
        finally
          try
            cs.close();
          catch (Exception ex)
            sLog.error("Error closing Callable Statement for CDM RuleFrame Close Transaction: " + ex);
      @Override
      public void postChanges(TransactionEvent te)
        passivateStateForUndo();
        openRuleFrameTransaction();
        super.postChanges(te);
        setDBFeedbackOnApplicationModule();
        catch (DMLException e)
          // retrieve SQL error from details
          Object details[] = e.getDetails();
          if (details[0] instanceof SQLException)
            handleSQLError((SQLException)details[0]);
          // If reached this line, the detail is not a SQLException,
          // so throw it again
          throw e;
      public void handleSQLError(SQLException e)
        throws JboException
        if ((e.toString().indexOf("ORA-20998") > 0) ||
          // 20999 is raised when posting of changes fails
          // due to database constraint violation or built-in TAPI rule
          (e.toString().indexOf("ORA-20999") > 0))
          setDBFeedbackOnApplicationModule();
        else
          // Raise the SQL exception, it is not a RuleFrame error
          throw new JboException(e);
      @Override
      public void doCommit()
        closeRuleFrameTransaction();
        super.doCommit();
      public void passivateStateForUndo()
        sLog.debug("Executing passivateStateForUndo so we can roll back the Application Module when RuleFrame transaction fails");
        ApplicationModule am = getRootApplicationModule();
        String undoId = am.passivateStateForUndo("beforeRuleFramePost",
                                                 null,
                                                 0);
        mUndoId = undoId;
        hasErrors = false;
      public void activateStateForUndo()
        // If an undoId is stored on the request, we rollback the transaction
        // to the undoId savepoint. The undoId is stored prior to deleteing rows
        // from a table. By rolling back to the state prior to removing the
        // rows, we can re-display the failed-to-delete rows
        String undoId = mUndoId;
        if (undoId != null)
          sLog.debug("Executing activateStateForUndo, restoring state of before postChanges because RuleFrame transaction failed");
          ApplicationModule am = getRootApplicationModule();
          am.activateStateForUndo(undoId,
                                  0);
       * Aanpassingen vanwege QMS-messages (informationals + warnings)
      public void setDBFeedbackOnApplicationModule()
        RuleFrameApplicationModuleImpl am = (RuleFrameApplicationModuleImpl)getRootApplicationModule();
        sLog.debug("SetDBFeedback");
        CallableStatement st = null;
        try
          sLog.trace("create statement");
          // 1. Create a JDBC PreparedStatement for
          st = createCallableStatement("begin jhs_pck_errors.get_db_feedback(?,?,?);end;",
                                       0);
          sLog.trace("define parameters");
          // 2. Define out parameters
          st.registerOutParameter(1,
                                  Types.VARCHAR);
          st.registerOutParameter(2,
                                  Types.VARCHAR);
          st.registerOutParameter(3,
                                  Types.VARCHAR);
          sLog.trace("Execute statement");
          // 3. Execute the statement
          st.executeUpdate();
          sLog.trace("Build return objects");
          // 4. Build return objects
          ArrayList informationArray = new ArrayList();
          ArrayList warningArray = new ArrayList();
          ArrayList errorArray = new ArrayList();
          sLog.trace("merge into array");
          mergeStringIntoArray(informationArray,
                               st.getString(1));
          mergeStringIntoArray(warningArray,
                               st.getString(2));
          mergeStringIntoArray(errorArray,
                               st.getString(3));
          if (errorArray.size() > 0)
            //Error occured ==> rollback am.
            activateStateForUndo();
          am.addErrorArray(errorArray);
          am.addWarningArray(warningArray);
          am.addInformationArray(informationArray);
        catch (SQLException e)
          throw new JboException(e);
        finally
          if (st != null)
            try
              // 5. Close the statement
              st.close();
            catch (SQLException e)
      private void mergeStringIntoArray(ArrayList al, String string)
        sLog.debug(string);
        if (string != null)
          string = string.replaceAll("   ",
                                     "°");
          StringTokenizer st = new StringTokenizer(string,
                                                   "°");
          int tokenCount = st.countTokens();
          sLog.debug("Tokencount messages : " + tokenCount);
          for (int i = 0; i < tokenCount; i++)
            sLog.debug("Add " + i);
            al.add(st.nextToken());
    }This works when there are only informationals or warnings.
    When errors are raised I recieve the following stacktrace:
    <Warning> <oracle.adf.controller.faces.lifecycle.Utils> <BEA-000000> <ADF: Adding the following JSF error message: Internal error:Entity.afterCommit.status_modified
    oracle.jbo.JboException: Internal error:Entity.afterCommit.status_modified
    at oracle.jbo.server.EntityImpl.afterCommit(EntityImpl.java:7049)
    at oracle.jbo.server.DBTransactionImpl.doAfterCommit(DBTransactionImpl.java:2189)
    at oracle.jbo.server.DBTransactionImpl.commitInternal(DBTransactionImpl.java:2085)
    at oracle.jbo.server.DBTransactionImpl.commit(DBTransactionImpl.java:2273)
    at local.achmeavastgoed.model.adfbc.base.RuleFrameTransactionImpl.commit(RuleFrameTransactionImpl.java:188)
    Can you give me some advise?
    Regards,
    Romano

    Hi Romano,
    your application is not aware of the fact that there are errors because all exceptions are gracefully handled.
    Because of that the doCommit() in your code example will just commit the changes by calling super.doCommit() even after the activateStateForUndo() did a rollback.
    public void doCommit()
        closeRuleFrameTransaction();
        super.doCommit();
      }So you need to change two things:
    First rewrite the doCommit()
    public void doCommit()
        closeRuleFrameTransaction();
    try{
        super.doCommit();
          } catch (JboException e){
          //  do something here
    }And also throw a Jbo exception in the handleSQLError()
       public void handleSQLError(SQLException e) throws JboException
          if ((e.toString().indexOf("ORA-20998") > 0)
               // 20999 is raised when posting of changes fails
               // due to database constraint violation or built-in TAPI rule    
               || (e.toString().indexOf("ORA-20999") > 0)
             setDBFeedbackOnApplicationModule();
             throw new JboException(e);
          else
         ....................................Now it should work. Your application will gracefully handle the errors, and once that is done, you just throw an exception in order not to commit.
    Regards
    Luc Bors

  • HTML DB application using table in a different schema

    I need to create a new HTML DB application. The table is in a different schema than mine. The DBA granted me rights to see it and I can see it from iSQL. HTML DB does not give the alternative of selecting this table.

    This thread covers your issue.
    New to HTML DB, have questions about service admin and schemas
    Ask your DBA to add workspace to schema mapping.
    Sergio

  • Starting an j2se 1.3 application over https with JWS 1.2

    Hi,
    How can you start an application which needs j2se 1.3* over https?
    I know, distributing signed Software over https isn't very useful, but it's the only way we can distribute it.
    I assume that JWS validates codebase and j2se version by it self so I can't use many workarounds.
    My jnlp file:
    <jnlp spec="1.0" codebase="https://server.company.com/apps" href="launch.jnlp">
         <information>
         <resources os="Windows">
              <j2se version="1.3*"/>
    The Error:
    BadFieldException[ The Field  <jnlp> has an invalid Value: https
    For HTTPS-Support is Java 1.4+ needed]
         at com.sun.javaws.xml.XMLUtils.getAttributeURL(Unknown Source)
         at com.sun.javaws.xml.XMLUtils.getAttributeURL(Unknown Source)
         at com.sun.javaws.jnl.XMLFormat.parse(Unknown Source)
         at com.sun.javaws.jnl.LaunchDescFactory.buildDescriptor(Unknown Source)
         at com.sun.javaws.jnl.LaunchDescFactory.buildDescriptor(Unknown Source)
         at com.sun.javaws.jnl.LaunchDescFactory.buildDescriptor(Unknown Source)
         at com.sun.javaws.Main.main(Unknown Source)
    Are there any workarounds? Perhaps:
    -     installing the Java Secure Socket Extension (JSSE) to the JRE 1.3.1
    o     http://java.sun.com/products/jsse/index-103.html
    o     described at http://forum.java.sun.com/thread.jsp?thread=199562&forum=38&message=1138437
    -     using an extension in the jnlp which first downloads the application code with j2se 1.4.1. And afterwards starts the application with j2se 1.3.1.
    -     or something else?
    Thanks for any comment
    Andrea

    Unfortunately no.
    Java 1.3 dosn't contain jsse extension, so you cannot download your program (using 1.3) with javawebstart. Https suport in java web start requires at least java 1.4.0

  • Is it possible to transport table with over 1500 entries?

    How can I transport a table with over 1500 entries from QA to Prod? It is not a Z table. Anyone have steps do that, please?
    Thanks

    Prakash,
    The delivery class of table AUFM (A) indicates that it is an application table, not a customising table and as such should not be transported.
    This table contains many foreign key filelds within it. If you transported this table alone to your production system you would probably render the system unusable.
    This table should only be copied as part of a client copy, when other related tables would also be copied.
    You should ask the person requesting the transport why they want to copy this table alone to your production system.
    Gary

  • 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')

  • Creating a selectable HTML table with Sahrepoint list data dind

    Hi All,
    I m creating an app for sharepoint2013 , on my app I want to read data from SP list and display on something like HTML table/ grid view.
    What I have done is as follows.
    <table cellpadding="0" cellspacing="0" border="0" class="display" id="TermList">
                        <thead>
                            <tr>
                                        <th>Start Date</th>
                                <th>End Date</th>
                                <th>Term Type(s)</th>
                                <th>Specialty</th>
                                <th width="12%">Sub Specialty</th>
                            </tr>
                        </thead>
                                            <tbody>
                            </tbody>
    </table>
    var context = SP.ClientContext.get_current();
    var user = context.get_web().get_currentUser();
    var Termsitems, web, hostcontext, currentusertitle;
    var hosturl;
    (function () {
    $(document).ready(function () {
        gethostdata();
        getUserName();
        $('#TermList').dataTable(
                        "sScrollY": 200,
                            This will enable jQuery UI theme
                        "bJQueryUI": true,
                            will add the pagination links
                        "sPaginationType": "full_numbers"
        getTermdetails();
    function gethostdata() {
        hosturl = decodeURIComponent(getQueryStringParameter("SPHostUrl"));
        context = new SP.ClientContext.get_current();
        hostcontext = new SP.AppContextSite(context, hosturl);
        web = hostcontext.get_web();
        context.load(web, 'Title');
        context.executeQueryAsync(onSiteLoadSuccess, onQueryFailed);
    function onSiteLoadSuccess(sender, args) {
        //   alert("site title : " + web.get_title());
    function onQueryFailed(sender, args) {
        alert('request failed ' + args.get_message() + '\n' + args.get_stackTrace());
    function getQueryStringParameter(urlParameterKey) {
        var params = document.URL.split('?')[1].split('&');
        var strParams = '';
        for (var i = 0; i < params.length; i = i + 1) {
            var singleParam = params[i].split('=');
            if (singleParam[0] == urlParameterKey)
                return decodeURIComponent(singleParam[1]);
    // This function prepares, loads, and then executes a SharePoint query to get the current users information
    function getUserName() {
        context.load(user);
        context.executeQueryAsync(onGetUserNameSuccess, onGetUserNameFail);
    // This function is executed if the above call is successful
    // It replaces the contents of the 'message' element with the user name
    function onGetUserNameSuccess() {
    currentusertitle= user.get_title();
      $('#message').text('Hello ' + user.get_title());
    // This function is executed if the above call fails
    function onGetUserNameFail(sender, args) {
        alert('Failed to get user name. Error:' + args.get_message());
    function getTermdetails() {
        var Termlist = web.get_lists().getByTitle("TraineeTermsSPlist");
        context.load(Termlist)
        var camlQuery = new SP.CamlQuery();
        camlQuery.set_viewXml('<View><Query><Where><Eq><FieldRef Name="Title" />' +
                                 '<Value Type="Text"> + currentusertitle + </Value></Eq></Where></Query></View>');
        Termsitems = Termlist.getItems(camlQuery);
        context.load(Termsitems);
        context.executeQueryAsync(getTermdetailsQuerySuccsess, getTermdetailsQueryFails)
    function getTermdetailsQuerySuccsess(sender, args) {
        var listEnumerator = Termsitems.getEnumerator();
        var datatable = document.getElementById("TermList");
        while (listEnumerator.moveNext()) {
            var oListItem = listEnumerator.get_current();
            var startdate = listEnumerator.get_current().get_item('startdate');
            var enddate = listEnumerator.get_current().get_item('Enddate');
            var termtype = listEnumerator.get_current().get_item('TermType');       
            var Specialty = listEnumerator.get_current().get_item('Specialty');
            var Specialty = listEnumerator.get_current().get_item('Subspecialty');
            $("#TermList").append("<tr align='middle'  class='gradeA'>" +
                                      "<td align='left'>" + startdate +
    "</td>" +
                                      "<td align='left'>" + enddate + "</td>"
    +
                                      "<td align='left'>" + termtype + "</td>"
    +
                                      "<td align='left'>" + Specialty +
    "</td>" +
                                      "<td align='left'>" + Specialty +
    "</td>" + "</tr>");
    function getTermdetailsQueryFails(sender, args) {
        alert(' Error:' + args.get_message());
    Now what I want to do is allow user to select rows on the table. Once they select a row I want to get that selected row and search SP list based on the selected value.  Also I would like to make this table with search area to search records.
    Can someone please help me to do this, or are there any easy way to do this. Sample code or useful link much appreciate.
    Thank you very much.
    d.n weerasinghe

    Instead of writing in dive each and every time directly,
    just have a div in html, and inside the while loop
    write and store in the variable like
      output += "<li><a href='#' style='display:none'>" + usernames[i] + " </a> "
                         + "<table id='results' width='100%'>"
                         + "
    <tr style='border-bottom:1px silver solid;'>"
                         + "
    <td style='width:60px;height:70px;' >"
                         + "
    <img alt=\"profile pic\" src= '" + pictureuri[i] + "'  style='width:60px;height:60px;'/>"
                         + "
    </td>"
                         + "
    <td >"
                         + "
    <table style='height:100%'>"
                         + "
    <tr>"
                         + "
    <td style='padding-padding-vertical-align:top;height:10px' >"
                         + "
    <a href='" + personaluri[i] + "' classq='ms-bold ms-subtleLink' style='color: gray; font-size: 12px; font-weight: bold;'>" + tempnames[i] + "</a>"
                         + "
    </td>"
                         + "
    </tr>"
                         + "
    <tr>"
                         + "
    <td  style='padding-vertical-align:top;height:50px;color:#ADAEAD;font-size:14px;' >" + deptNames[i]
                         + "
    </td>"
                         + "
    </tr>"
                         + "
    </table>"
                         + "
    </td>"
                         + "
    </tr>"
                         + "</table>"
                         + "</li>"
    and finaly oyutside the loop 
    $(#div).html(output);

  • Text in internal table with HTML tags.

    Hi ,
    I have Text in internal table with HTML tags.
    The text has to be shown in output of smartform as formatted text.
    That is the smartform should READ the HTML TAGS , convert the text accordingly and show in the output as formatted text.
    I dont want to make a webform . This is for NORMAL SPOOL output and NOT for WEB OUTPUT.
    IN SHORT
    :- the text in the internal table is like this ( please ignore the dot in the HTML TAG )--
    <html><.U>this is heading</.U>Line with no break<.br>some content text</.br>
    </html>
    OUTPUT
    <U>this is heading</U>Line with no break<br>some content text</br>
    1)  Can I can get the output and store it as text in a string variable and show in the smartform  ?
    In this case I want to know how to convert  and store in a variable  in sap .
    OR
    2) Can the text element convert the text with HTML TAGS to html formatted output and show it ?
    Regards,
    Jagat

    Hi,
    Use the FM SCP_REPLACE_STRANGE_CHARS and check
    See the
    Converting html special characters to plain characters (e.g. u00FC to u00FC)

  • Html tables with javascript pop up windows

    I have two tables with different table-id in html, that are as follows -
    table-header - consists of dynamic week wise days + resources
    table-data in with same nnumbers of columns...
                          for Img - http://i.stack.imgur.com/Gwvoq.png
    The Assign Task is a Button in every cell of table-data , What I need is , whent I click any button, the Pop-up window ( Kendowindow which is I m using right now in Javascript preferably) should display respective Cell row's 1st cell i.e resource's name and Id and cell column's 1st cell i.e. Date string.
    Please suggest the solutions.... Help is kindly appreciated.
    P.S. -- Please don't suggest Kendo Grid or Scheduler, because I can't able produce this kind of format, If you can do pls share your code and procedure.

    This forum is about JavaScript in PDF files, not in HTML pages.

  • Will there performance improvement over separate tables vs single table with multiple partitions?

    Will there performance improvement over separate tables vs single table with multiple partitions? Is advisable to have separate tables than having a single big table with partitions? Can we expect same performance having single big table with partitions? What is the recommendation approach in HANA?

    Suren,
    first off a friendly reminder: SCN is a public forum and for you as an SAP employee there are multiple internal forums/communities/JAM groups available. You may want to consider this.
    Concerning your question:
    You didn't tell us what you want to do with your table or your set of tables.
    As tables are not only storage units but usually bear semantics - read: if data is stored in one table it means something else than the same data in a different table - partitioned tables cannot simply be substituted by multiple tables.
    Looked at it on a storage technology level, table partitions are practically the same as tables. Each partition has got its own delta store & can be loaded and displaced to/from memory independent from the others.
    Generally speaking there shouldn't be too many performance differences between a partitioned table and multiple tables.
    However, when dealing with partitioned tables, the additional step of determining the partition to work on is always required. If computing the result of the partitioning function takes a major share in your total runtime (which is unlikely) then partitioned tables could have a negative performance impact.
    Having said this: as with all performance related questions, to get a conclusive answer you need to measure the times required for both alternatives.
    - Lars

  • How to update application table with notification id

    What is the best method for updating an application table with the notification id of a notification just generated.
    We tried creating a suspended activity with a delay but it only works randomly. Sometimes the suspended update activity runs before the notification is generated and the update fails. Thanks, Tom

    Well, you could do a select in WF_NOTIFICATIONS and check if you application table is updated.
    select NOTIFICATION_ID from WF_NOTIFICATIONS where MESSAGE_TYPE like 'item type name'
    But as you noticied, notification id is not created immediately.
    Hope could help.
    Regards,
    Luiz

  • Cannot get an Apex HTML region with table with a background image to resize image to fit table

    I want to achieve this: Table whith background image but cannot get it to work in an Apex page with HTML region.
    Adding the following code to the html region:
    <table class="tableWithBackground" width="300px" height="200px" border="1">
        <tr>
            <td>
                <img class="tableBackground" src="#APP_IMAGES#Demo.jpg">
                Hello
            </td>
            <td>
                World
            </td>
        </tr>
        <tr>
            <td>How are<br><br><br><br><br>you?</td>
            <td>I am fine</td>
        </tr>
    </td>
    Results in a page with a table but without borders (at his stage I have not yet uploaded the Demo.jpg). After uploading the Demo.jpg results in a table with the entire image placed in het first cell. After placing the class code in the CSS inline property I expected to see the result as is shown in the Table whith background image  demo. For some reason this does not work (the image is no longer visible).
    Can anybody tell me how to achieve my goal?
    Thanks in advance!
    Geert

    Geert01 wrote:
    I want to achieve this: Table whith background image but cannot get it to work in an Apex page with HTML region.
    Adding the following code to the html region:
    <table class="tableWithBackground" width="300px" height="200px" border="1">
        <tr>
            <td>
                <img class="tableBackground" src="#APP_IMAGES#Demo.jpg">
                Hello
            </td>
            <td>
                World
            </td>
        </tr>
        <tr>
            <td>How are<br><br><br><br><br>you?</td>
            <td>I am fine</td>
        </tr>
    </td>
    Results in a page with a table but without borders (at his stage I have not yet uploaded the Demo.jpg). After uploading the Demo.jpg results in a table with the entire image placed in het first cell. After placing the class code in the CSS inline property I expected to see the result as is shown in the Table whith background image  demo. For some reason this does not work (the image is no longer visible).
    Can anybody tell me how to achieve my goal?
    This is a workaround. What's your real goal? Why do you want to do this?
    What browser(s)/version(s) are you using? All current browser versions have support for CSS3 background sizing which is the proper way to do this.

  • Recordset - updating 2 tables with 1 recordset using application object update record

    I have a recordset that uses a field from 2 different tables
    with a select statement where clause that joins a userid. I can
    display the field’s data just fine. Now I want to use the
    Application object “update record” so I can modify
    either of the fields. The problem is the Application object
    “update record” only allows you to update one table.
    How does Dreamweaver mx 2004 allow me to update 2 tables with one
    recordset and 1 submit button? Currently using php.
    Example of where:
    Where member.userid = member_detail.userid
    I tried creating the one form with the field from the first
    table and that works just fine. I added the other field from the
    other table into the form but ofcourse there isn’t any code
    that will update the second table so it won’t work.
    My application requires me to update alot of fields between 2
    tables at the same time.
    Does anyone know a way using Dreamweaver mx 2004 to do this?
    I don’t have much php experience.

    jon-rookie wrote:
    > DreamerJim,
    >
    > I am sorry but I don't think you are correct. I just
    can't believe that with
    > all the powers to be at Macromedia and now Adobe can't
    figure out how to update
    > two tables at once. There are millions of db's out there
    that require this. I
    > spent several hours today perusing lots of posts on the
    internet. It seems I
    > am not the only one out there that has asked this
    question. Unfortunately
    > there are no good answers yet to my surprise.
    >
    > I did find a Dreamweaver extension that does exactly
    what I myself and many
    > others want. The problem is it is no longer available
    unless you purchase a
    > bundle of software from Adobe.
    >
    > I have not looked into it in detail so I am not 100%
    sure that is accurate!
    >
    > Still, alot of php programmers do this all the time
    without much trouble. I
    > just want to know if Dreamweaver mx 2004 has the
    capability if a person knows
    > the right steps.
    >
    > Hopefully a Dreamweaver expert will post something to
    let us know for sure.
    > Until then I am stuck.
    >
    Not even CS3 has this built in, you will either have to code
    it yourself
    or buy the extension you have found. Dreamweaver gives you
    basic
    features to help you develop applications, but if you want to
    do
    anything really clever you have to do it yourself.
    One thing to consider is maybe creating an SQL view that is
    can be
    updated. I am pretty sure it exists, then you use the view
    instead of
    the table in the update behaviour. I have never done it
    myself, but I am
    sure it can be done.
    Steve

  • IPad stuck with the pop-up: "Application Over 20MB"

    My iPad is stuck.
    The pop-up window "Application Over 20MB" appears.
    Pressing the OK button does not help.
    iPad is unusable as the touch screen does not work because of the pop-up window.
    Cannot turn it off - because I need the touch screen for the red slider.
    Don't want to reset it.
    Any ideas???

    if you zoomed then you can try to unzoom
    http://modmyi.com/forums/redsn0w/687391-how-do-i-un-zoom-2.html

  • How to Use Mobile Service in HTML/JavaScript Application

    The Windows Azure Mobile Service is a back end tool for mobile applications. It supports various platforms, such as Windows Store, Windows Phone 8, iOS and Android. The Windows Azure
    Mobile service can also support HTML/JavaScript. This article helps you to get a basic idea of how to use the Windows Azure Mobile Service in HTML/JavaScript applications.
    Let us start with a Quick startup project provided by Microsoft. A Quick startup is a simple demo project that can help us to understand how to use the Windows Azure Mobile Service with HTML/JavaScript. So let's start from the Quick startup project.
    Login into in the Windows Azure portal and use the following procedure.
    This article assumes you already have a Windows Azure account and the mobile service is enabled in your account.
    1. Create a new Windows Azure Mobile Service
    Click on the +New button from the left corner and select Compute -> Mobile Service and then click on the "Create" button.
    The Windows Azure portal popup creates a mobile service wizard when you click the Create button. Windows Azure asks you to enter the mobile service name as shown in the following image:
    Select the database options and region for your mobile service and click on the "Next" button.
    Once your mobile service is successfully created, the portal will show all your mobile services as shown in the following images.
    Ok! We have created a new mobile service successfully. Let's move to our subsequent steps.
    1. Quick startup Project 
    As we all know, the Windows Azure Mobile Service can support many platforms such as Windows Store, Windows Phone 8, iOS, Android and HTML/JavaScript. This article only tells us about the new HTML/JavaScript platform that is recently added to the Windows Azure
    Mobile Service.
    In the image above, we are in the quick startup page where the Windows Azure Mobile Service allows the user to choose their platform. I have selected the HTML/JavaScript Platform.
    In the image above, we found 3 quick steps that can allow us to run <g class="gr_ gr_74 gr-alert gr_gramm Grammar" data-gr-id="74" id="74">a HTML/JavaScript</g> sample project. 
    1. Create Table: In this step the user needs to create a table that can used by the sample project, once you hit the create TodoItem Table button. The Portal will create a TodoItem table in your mobile service. You
    can check this table by clicking on the data tab(menu).
    2. Download and run your app: In this step the user needs to download the Quick startup project that is provided by the Windows Azure portal. Click on the "Download" button and download the project. You will
    see the following files in the quick startup project.
    The Server folder contains some files to setup this project locally. The user should run the file from the server folder corresponding to their OS. I am using Windows OS so I ran the <g class="gr_ gr_80 gr-alert gr_spell ContextualSpelling ins-del multiReplace"
    data-gr-id="80" id="80">lanch</g>-<g class="gr_ gr_79 gr-alert gr_spell ContextualSpelling ins-del multiReplace" data-gr-id="79" id="79">windwos</g> file to setup this project locally in
    IISExpress.
    Press r and enter the key, you will see IISExpress started. Do not close this Windows and open your browser and request the http://localhost:8000/ page.
    Enter the Item name and click on the add button. Your Item will be added to the TodoItem table.
    3. Configure your host name: This step is a very important step for any HTML/JavaScript application that uses the Windows Azure Mobile Service. In this <g class="gr_ gr_83 gr-alert gr_gramm Punctuation only-ins
    replaceWithoutSep" data-gr-id="83" id="83">step</g> the user must register their website name in the Cross-origin resource sharing (CORS). By default, "localhost" is added by the Windows Azure Mobile Service
    so your quick startup project can run without making any CORS setting changes. The user can add their website domain name by clicking on the configure tab (menu).
    The user can add as many website domain names as needed.

    are you asking a question or did you just post a tutorial here? you might want to post it as a blog post or wiki entry instead.

Maybe you are looking for

  • Error while opening BPE

    Hi, I installed Sun Identity Manager 7.1 version. Everything went well. After setting WSHOME and JAVA_HOME variables I tried to open BPE by typing lh config in %WSHOME%/bin directory. I am getting the following error: Files\Apache was unexpected at t

  • File to IDOC aggsales mapping doubt Urgnt

    Hello, Im working for a retail client and the requirement is the File to IDOC scenario where Im stuck up in the mapping. The inbound is a flat file of structure EDI_DC40 E1WPU01 E1WPU02 E1WPU03 E1WPU04 The target IDOC structure is as follows WPUUMS01

  • How do i disable the firefox software updater which pop out whenever i start firefox? I use Firefox 24 and already disabled it through "options"

    I already applied the "never Check for updates" option in Options>advanced. But it is always asking...

  • Skipping Pages in Reports

    I have a report which has a simple select statemet 'select * from emp' .. Grouped by dept... and i gave maximum records per page =1 When im printing the report im printing on both sides of the page(A4 size).... My problem is i want to print each dept

  • Import - Export feature

    Is there a way to import - export routes or locations from HERE from-to other devices? I have a lot of routes created with different softwares and would like to import them on my Nokia phone. Igor http://jenga.wordpress.com