Retrieving tabular forms

Hi,
I want to display a tabular from for multiple records.I can display it using data block winzard and cursor fetch method.
But now I want to dislay different attributes in 1 tabular column.When I set the data block winzard,I assign 1 attribute
to 1 text_item.But I dont't know how to assign multiple table columns(attributes)into 1 tabular text_item.
Can anyone tell me how to do that??
Thanks.

Tyler,
I think you are right. I also share your opinion in the most of the details except those related to cancer and ugly :). But what I also know is that the most of my customer wouln't consider using apex if there would be no feature like tabular forms. At least the half of the projects I did so far were replacements of some internal applications running in access or even excel and without a possibility to emulate tabular updates apex simply wouldn't have a chance. ;) And if you take more than just a few days away from the forum and come back once the version 4 is there, you will probably notice that there is even more of that stuff arround:
- websheets
- updatable interactive reports
- enhanced support of tabular forms
I am convinced this is the right way to go - those popular feature needs to be enhanced. This way apex is going to gain even more popularity and eventually completelly replace Access.
Denes Kubicek
http://deneskubicek.blogspot.com/
http://www.opal-consulting.de/training
http://apex.oracle.com/pls/otn/f?p=31517:1
-------------------------------------------------------------------

Similar Messages

  • Future date not to be allowed in the tabular form

    Hi,
    I have a tabular form with 3 columns.. the first column name is DATE, the user is not allowed to enter a future date or a date greater than the sysdate, so as soon as the date value is entered I have to generate a javascript/dyanamic action that throws error... I don't want the alert message to pop up when the submit is pressed, when the user moves the cursor to the next column, error should be shown. Is this possible. I am using APEX 4.0

    Hello Suzi,
    I’m afraid I won’t be able to walk you through this issue as I need to leave the office, however I have some remarks for you.
    First, if you intend to practice JavaScript you should really find the time to learn and understand it. I can promise you it will worth your while, otherwise you’ll just waste a lot of time.
    Secondly, The values of the APEX items you are retrieving using JavaScript are strings. So, in your current code you are actually comparing two strings and not dates.
    Next. When you are validating your data using JavaScript you have to make sure that the user will take the necessary measurements to fix the problem. For example, you must place the cursor back in the offending field. Using the following:
      wwv_flow.f04[1].focus(); will set the cursor in the first cell of the ‘f04’ column. This code also suggest that wwv_flow.f04 is actually a JavaScript array that holds references (object pointers) to all the cells in the ‘f04’ column. You can go through them using a simple loop.
    You should also not use the onchange event in this case. Imagine that after your first error alert, and setting the cursor back to the offending field, the user just press tab to move to the next field. This time around, the onchange event will not be fired (as the value of the field has not changed) and you lost your validation effect. To force the JavaScript validation to fire every time you should use the onblur event.
    That’s all for now :)
    Regards,
    Arie.
    ♦ Please remember to mark appropriate posts as correct/helpful. For the long run, it will benefit us all.
    ♦ Author of Oracle Application Express 3.2 – The Essentials and More

  • Issue with APEX_ITEM.CHECKBOX in Manual Tabular Form report

    Hi,
    I have a simple manual tabular form report with query :
    SELECT
    APEX_ITEM.CHECKBOX(1,order_id) ,
    APEX_ITEM.TEXT(3,Ord_number) ,
    APEX_ITEM.TEXT(4,ord_flag)
    from
    tbl_order
    and a process to update the value of Ord_number & ord_flag columns for the selected (Checked) rows.
    FOR i in 1..apex_application.g_f01.count
    loop
    UPDATE
    tbl_order
    SET
    Ord_number = apex_application.g_f03(i),
    ord_flag = apex_application.g_f04(i)
    WHERE
    order_id = apex_application.g_f01(i);
    END LOOP;
    But the values getting updated wrongly , how can I ensure the exact values is retrieved in apex_application.g_f03(i) & apex_application.g_f04(i) ?
    Regards.
    Benz

    I think the row selector is there if you create an tabular form. However, you can create it yourself following this example:
    http://apex.oracle.com/pls/otn/f?p=31517:170
    Basically,
    apex_item.checkbox (30,
                               '#ROWNUM#',
                               'onclick="highlight_row(this,' || ROWNUM || ')"',
                               NULL,
                               'f30_' || LPAD (ROWNUM, 4, '0')
                              ) delete_checkboxDenes Kubicek
    http://deneskubicek.blogspot.com/
    http://www.opal-consulting.de/training
    http://apex.oracle.com/pls/otn/f?p=31517:1
    http://www.amazon.de/Oracle-APEX-XE-Praxis/dp/3826655494
    -------------------------------------------------------------------

  • Reg. DDL in Tabular form in Apex

    Hi,
    I have used a select list in Tabular form report. My select list is retrieving only 21 rows.
    But the performance is very slow. Please help me to increase the speed of processing.
    Thanks,
    Madhu

    Hello Madhu,
    Can you post the query of your select list - and of your tabular form (or report). Why do you assume the problem is in the select lst? What happens to the performance if you omit the select list?
    Regards,
    Roel
    http://roelhartman.blogspot.com/
    http://www.bloggingaboutoracle.org/
    http://www.logica.com/

  • How to use SQL function in Tabular Form

    Edited by: JuniorNewbi on 03-Nov-2009 08:15

    Hi
    I want to have a Tabular Form in which the Report Source sql statement is retrieved via an SQL function, so that the resulting report can show a variable number of columns and column names.
    The following great web site shows just the kind of thing i'm trying to do (Tabular Form Dynamic):
    http://htmldb.oracle.com/pls/otn/f?p=31517:195:518536699796436::NO:::
    However, as an Apex newbie, i don't know how to invoke the SQL function from within the page. The "Report Source" appears to only allow a static "select...." style of entry.
    I don't have access to the Denes Kubicek's workspace so don't know how he would have invoked his PL/SQL Function.
    Can anyone help?
    Thanks in advance!
    Edited by: JuniorNewbi on 03-Nov-2009 08:46

  • Dynamic Update Tabular form

    I have a tabular form on Table 1 (an empty table)
    I want to populate Table_1/tabular form with Table 2 values
    Table_1 & Table_2 are linked by pk/fk relationship (Main_Route)
    Basically, There will be a select list for Main_routes on the Table_1/tabular form. Once I hit the Apply changes button, I want it to get the values for street, ward, & section from Table_2.
    How do I achieve this? Is there some kind of trigger I can use, page process, or item-level sql?
    Table_1
    ID (number) (pk)
    Main_Route (varchar 2(30))
    Street (varchar 2(30))
    Ward (varchar 2(30))
    Section (varchar 2(30))
    Table_2
    Main_Route (varchar 2(30)) (pk)
    Street (varchar 2(30))
    Ward (varchar 2(30))
    Section (varchar 2(30))

    Hi,
    Go to SQL Workshop, SQL Commands and then run this:
    CREATE OR REPLACE TRIGGER  "TABLE1_BI"
    BEFORE
    INSERT OR UPDATE ON "TABLE1"
    FOR EACH ROW
    BEGIN
      DECLARE
        vSTREET VARCHAR2(30);
        vWARD VARCHAR2(30);
        vSECTION VARCHAR2(30);
      BEGIN
        IF :NEW.MAIN_ROUTE IS NOT NULL THEN
          SELECT STREET, WARD, SECTION
          INTO vSTREET, vWARD, vSECTION
          FROM TABLE2
          WHERE MAIN_ROUTE = :NEW.MAIN_ROUTE;
          :NEW.STREET := vSTREET;
          :NEW.WARD := vWARD;
          :NEW.SECTION := vSECTION;
        ELSE
          :NEW.STREET := NULL;
          :NEW.WARD := NULL;
          :NEW.SECTION := NULL;
        END IF;
      END;
    END;followed by:
    ALTER TRIGGER "TABLE1_BI" ENABLEThis should run on TABLE1 for any insert or update. As long as ROUTE_MAIN has a value, then the related information is retrieved from TABLE2 and used to update the record on TABLE1. If ROUTE_MAIN is empty, then the other fields are emptied as well.
    Andy

  • A sticky problem updating fields on a tabular form

    I have an application where I'm trying to match skillset supply to skillset demand. We have resources and we have work for resources to do. Resources possess a set of skills. Work requires a set of skills. Skillsets are described by three fields: Domain, Target, Skill. So, we are able to capture the supply of skills in a table:
    RSRC_ID (FK to Resource table)
    DOMAIN
    TARGET
    SKILL
    PROFICIENCY  (this is the skill level 1 to 5)The relationship of resources to skill supply is 1 to many. Conversely, work demands skills, and so we capture skill demand in a table:
    WORK_ID (FK to Work table)
    DOMAIN
    TARGET
    SKILLThe relationship of work to skill demand is 1 to many also.
    Users assign skills to resources using a master-detail form. It works fine
    Users assign skills needed to work also using a master-detail form, and it works fine as well
    A view then joins the skillset supply to skillset demand so that assignments can be made only where supply and demand match. This view is used in the LOV below.
    The problem I have is that I am using a mapping table to capture assignments of work to resources or resources to work. It is a many to many mapping of work and resources with matching skillsets, and it looks like this:
    RSRC_ID  
    WORK_ID
    DOMAIN   (
    TARGET   ( These are the skillsets where demand equals supply and are derived from the view and presented in the LOV )
    SKILL      (I've created master-detail forms for the two types of assignments. An LOV in the detail form will present qualified resources or eligible work and then return the appropriate RSRC_ID or WORK_ID, but I must also populate the other three fields (DOMAIN, TARGET and SKILL) before I can insert or update the record. Here's the LOV from the form where resources are assigned to work:
    SELECT sed.domain||'.'||
           sed.target||'.'||
           sed.skill||'/'||
           sed.skill_prof||'  '||
           r.first_name||' '||
           r.last_name "d",
           r.rsrc_id "r"
    FROM   ri_resource r, ri_skill_supply_eq_demand sed
    WHERE  r.rsrc_id = sed.rsrc_id
    AND    sed.work_id = :P18_WORK_ID
    order by 1It is not enough to just match the work to the resource, we must record for what skillset they are matched. I can't seem to see an easy way to populate the three other fields in the tabular form using data that I can retrieve with the LOV.
    I am using APEX 4.1. Any help is appreciated.

    Hi Dan,
    Please could you replicate your problem on apex.oracle.com and share some developer credentials with us? It will be easier to demonstrate how this would be achievable.
    For this specific problem, you will need to re-create all your relevant DB objects and populate them with some sample data.
    Kind Regards, Pete

  • Collapsed Tabular Form Heading when "No data found".

    The ' Collapsed Tabular Form Heading when "No data found" ' problem (speculated to be bug 9893564) is discussed here: {message:id=4419231}. Warning link is out of date. I'm still seeing it in APEX 4.2.
    I support Kelly's comments "looks like something is broken" and "Now this header (which is sized smaller before data is retrieved) comes between the search items and the help message and looks clumsy.".{message:id=9185914}.
    Any suggestion to get around it when no data is found?
    1) Is there a way to hide the header when there is no data? Or,
    2) Is there a way to adjust the width of the columns if the header must display? I'd like them to be about what they are when data is displayed. I know those lengths but not how to affect the header width for a tabular report with no data.
    Example:
    WS APEX_EXAMPLES_01
    demo
    demo
    Appl 78329 Tabular Form - page 1. (I forced query not to find any data for demo purposes.)
    Thanks,
    Howard

    Howard (... in Training) wrote:
    Paul --
    Great! So many new techniques here -- new to me. Generally, I much prefer positive logic as well. But this solution seems to have more pieces than the other.There is method in that.
    Firstly, with Aljaz's approach you can see a flicker as the tabular form is actually rendered and then hidden when the script in the footer is eventually run. This will be more apparent with a longer or more complicated page where it takes longer to reach the script and more content needs to be adjusted following removal of the form. Reversing the logic and hiding the form using CSS in the page header prevents this as the form elements are initially created as hidden nodes in the DOM before any of the page is rendered.
    More important is that this approach applies the principles of the separation of concerns and unobtrusive JavaScript. At some point when developing in APEX you're going to find yourself seriously losing your cool in a situation where you know the app is executing some JavaScript, but you can't find where that script is defined (maybe you've already been there). Look at the page 2 definition using the tree view: where's the JavaScript that is going to run? Now look at page 1: ah, there are a couple of dynamic actions...
    APEX now includes a lot of containers specifically for JavaScript: File URLs, Function and Global Variable Declaration and Execute when Page Loads in page templates and page headers, and declarative and custom Execute JS Code Dynamic Actions. These provide for good separation of concerns: we should use these locations for JS code, and avoid the exasperation of hunting through templates, page/region headers/footers, page 0 regions, pre-/post-element text or wherever to find the script we can see in the page source or JS debugger.
    Aljaz's solution also depends on detecting the presence of the No Data Found message with class <tt>nodatafound</tt>, and on modifying the Add Row button.
    What if someone changes the class of the No Data Found message in the report attributes? The Exists... condition on the dynamic action performs this check in a more direct way (although it's not ideal: DRY is violated by having both 2 copies and 2 executions of the report SQL; nor is it reusable on other form regions).
    Modifying the Add Row button JavaScript directly is intrusive. Like footers and templates, it's another non-obvious location for JS customisation. By using a dynamic action to bind another click handler to the button we're making the modification more obvious, and more importantly we don't have to modify what it's already doing&mdash;or in this instance, even care what that is (in other circumstances we might need to change the order or propagation of events, or suppress the original behaviour).
    As for reusability, my original solution didn't really consider this (as it wasn't mentioned in the OP). Since the subject has been raised, and in accordance with my comments above, I'd approach it in a different way.
    As discussed, I suggest not squirrelling JavaScript away in region templates. I'd create a reusable report template for tabular forms rather than a region one. A <tt>class</tt> defined on the report container there will provide a more direct selector for hide/show behaviour. I'd stick to initially hiding this report via CSS, and use dynamic actions defined on the global page to conditionally show it on page load and bind show behaviour to the Add Row button click. To make these DAs reusable I'd remove the Exists... condition from the first one and replace it with a JS condition that checks to see if the tabular form report contains any visible data rows (the class on the report template will help there as well). Binding the show behaviour to the Add Row button would use the <tt>onclick</tt> attribute as a selector (rather than an ID selector that requires an intrusive edit of the button) so that all Add Row buttons would be affected: <tt>$('button[onclick^="apex.widget.tabular.addRow"]')</tt>.
    And about the style code:
    #report_tabular-form,
    #report_tabular-form .report-standard {
    min-width: 90%;
    } That is an improvement. I had read about it but not considered it for this. I tried the technique used to adjust column width on other reports but when I use "div," it makes the data in that column display only. I really want to adjust the width of the individual column header. Is there a way to do that?I'm not really clear what you're asking here. (Use "div"? Where? How?)
    To control the width of individual report column headers, use the following CSS:
    th#COLUMN_ALIAS {
      width: 10em;
    }Where <tt>COLUMN_ALIAS</tt> is the alias of the column in the query: APEX uses this as the HTML <tt>id</tt> attribute for the column table header element. (Note that <tt>id</tt> attributes must be unique within a document, so it the same column appears in multiple reports/forms, ensure each column alias is unique.)

  • Keep coursor position row number 5 in tabular forms.

    Hi all,
    I am facing some problem , In tabular forms there are around 10 rows.
    I want to keep cursor position in number 5 position. Data moves up and down by pressing up and down key but always cursor remain in 5th position. I think u get my point.
    Thanks,
    Md.Muniruzzaman Khan
    Email : [email protected]

    Ok it may not exactly what you want but it's really close.
    put on your block a hey-up and key-down trigger with the following code
    declare
         counter NUMBER(10);
    begin
    if :system.cursor_record < 5 then
         go_record(5);
    else
         -- suppose you have 10 records displayed you can make it dynamic by retrieving the block's displayed record and round(num/2)
         -- instead of the fixed 5
         SCROLL_DOWN;
         counter := :system.cursor_record;
         go_record(counter+5);
    end if;
    end;
    hope you can do something with this

  • Question about Break Columns on Tabular Form

    is it possible to have the following result on apex Tabular Form while doing Break Columns ??
    To place one blank line between departments, enter the following command:
    BREAK ON DEPARTMENT_ID SKIP 1
    Now rerun the query:
    DEPARTMENT_ID LAST_NAME                     SALARY
               20 Hartstein                      13000
               80 Russell                        14000
                  Partners                       13500
               90 King                           24000
                  Kochhar                        17000
                  De Haan                        17000
    6 rows selected.The result achieved was not as expected, the sample is hosted on https://apex.oracle.com/pls/apex/f?p=10037 demo/1234 please help
    Region Source :
    select DEPTNO, EMPNO, ENAME, JOB,MGR, HIREDATE, SAL,COMM
    from "#OWNER#"."EMP"Report Attributes :
    Break Columns - First Column

    LTaura wrote:
    what does the built-in tabular form and break functionality do ?The built-in tabular form wizard generates the tabular form report and ApplyMRU and ApplyMRD processes to handle the submitted form.
    The report renders the retrieved data values as HTML form controls to enable them to be edited by the user. The <tt>DEPTNO</tt> in from the first row in your query is rendered thus:
    &lt;input type="text" name="f01" size="16" maxlength="2000" value="10" id="f01_0001" autocomplete="off"&gt;and that in the second row as:
    &lt;input type="text" name="f01" size="16" maxlength="2000" value="10" id="f01_0002" autocomplete="off"&gt;Since these are not exactly the same (different <tt>id</tt> attributes), the built-in break formatting sees them as different values, so no report break is applied.
    However, even if this was not the case and the break was applied to give only 3 text items for the 3 <tt>DEPTNO</tt> values, the ApplyMRU and ApplyMRD processes expect a <tt>DEPTNO</tt> value to be submitted for each row, and would fail for the subordinate <tt>EMP</tt> rows where it was missing.

  • Manual Tabular Form Formatting Questions

    Hello, this is my first time using a tabular form and am now trying to tackle creating a manual tabular form. So, now I have some questions on formatting.
    1. Is it proper on this forum to lump several similar questions together or should these be separate postings?
    2. I have a hidden column that I do not want to display on the screen at all. However, I need access to the column later when saving. I am currently using the htmldb_item.hidden function to retrieve the field. This works. However, the column still displays but the value does not display. I then tried to uncheck the show attribute for the column to unchecked. Unfortunately, if this is not selected, when using the htmldb_application.g_f01 function, I would receive an error as if the column did not exist. How do I make the column totally hidden so that it does not display at all?
    3. I have a number column where I want the column to display in dollars (i.e. $100, 000). I tried to set the number format on the column in the report attributes. However, no luck. To retrieve the column, I am using the function htmldb_item.text to retrieve the column. I am not sure if I should be able to format the column in the report attributes or if the htmldb_item.text function has a parameter that I could use for formatting. Suggestions?
    4. Similarily, I would like to right justify this column. How is this accomplished?
    Thanks

    Hi everyone,
    Is there any way to not to display the hidden columns in the manual tabular forms,when we create the manual tabular form using htmldb_item.hidden.
    But need to refer that column in the process.
    In the wizard generated tabular form if the column is of type HIDDEN we dont see that column on the report.
    How can i achieve the same in manual tabular forms..
    Thanks

  • Manual Tabular Form using checksum

    I have a manual tabular form which updates OK but when I add the htmldb_item.mds_checksum it does not always work. It does not pass the MD5 checksum test in the update process. Sometimes it works some times it does not. No one else is updating this data so it should pass the checksum error.
    I need a manual tabular form so I can to retrieve this same data in a collection if the page is submitted for a cascading dropdown in another region. That is correct?
    Of course, I could do the cascading dropdown another way instead of select list on submit. This is puzzling me.
    Here is the sql query:
    select htmldb_item.hidden(1,sub_id) sub_id,
    htmldb_item.display_and_save(2,column_id) column_id,
    htmldb_item.display_and_save(3,column_name) column_name,
    htmldb_item.display_and_save(4,primary_key) primary_key,
    htmldb_item.display_and_save(5,required) required,
    htmldb_item.select_list(6,isselected,'Yes;Y,No;N') isselected,
    htmldb_item.md5_checksum(isselected) cks
    from sub_columns
    where sub_id = :P26_SUB_ID
    order by 2
    Here is the update process:
    declare
    l_cks wwv_flow_global.vc_arr2;
    j pls_integer := 1;
    begin
    -- Get original MD5 checksum
    select wwv_flow_item.md5(isselected) cks
    BULK COLLECT INTO
    l_cks
    from sub_columns
    where sub_id = :P26_SUB_ID;
    for i in 1..l_cks.count
    loop
    if htmldb_application.g_fcs(i) != l_cks(i) then
    rollback;
    raise_application_error(-20001,
    'Current version of data in database has changed '||
    'since user initiated update process.');
    end if;
    end loop;
    -- update Subscription
    for i in 1..htmldb_application.g_f01.count
    loop
    update sub_columns
    set isselected = replace(htmldb_application.g_f06(i),'%'||'null%',NULL)
    where sub_id = :P26_SUB_ID and
    column_id = htmldb_application.g_f02(i);
    end loop;
    commit;
    end;
    Any help would be appreciated. I just don't see what I am doing wrong and I don't see any other way to do it.

    I had already read this paper before doing the tabular form manually. I tried to follow it as closely as I could. My tabular form is a little different since I have a where clause in my SQL and only updating one field. The other fields are display_and_save. And I was branching to a different page than the page containing the tabular form. I would think none of these differences should make it not work. I did change to branch to the same page. That made no difference.
    I did not need to do an insert so I skipped doing that step and then went to Adding Optimistic Locking. It is failuring in my update process with this code:
    -- Get original MD5 checksum
    select wwv_flow_item.md5(isselected) cks
    BULK COLLECT INTO
    l_cks
    from sub_columns
    where sub_id = :P26_SUB_ID;
    for i in 1..l_cks.count
    loop
    if htmldb_application.g_fcs(i) != l_cks(i) then
    rollback;
    raise_application_error(-20001,
    'Current version of data in database has changed '||
    'since user initiated update process.');
    end if;
    end loop;
    I get the Error process message and then the above -20001 error message when I click on the Submit button. Is there something wrong with my above code? I would assume I would need to add the where clause to the above select since I am only updating whose records.
    I had created a submit button with action submit page and redirect to URL. The process executes on the condition when the submit button is pressed.
    I need to get this working soon. I would assume other people have done a similar thing. I have tried many things. Another thing I notice is if I tell it to not display the first column, sub_id, and the last column, cks, (unselecting display in Report Attributes section) then the update does not work. I must be doing something wrong but I don't know what.
    I created the page with component, report, SQL Report, and region type SQL Query.

  • No Data returned for tabular form APEX 4

    Hi,
    I have a page that uses a tabular form, however it is not showing me any data. If I click the add row button and enter some details and press submit, the data is saved to the database but the page is refreshed and still shows me no data. I don't however get a No Data Found message.
    If I create a region on the same page based on a sql report, that returns the data I have added through the tabular form.
    Any ideas
    Cheers
    Paul

    My previous post appears to be incorrect as neither pages are now returning data!!!!
    So I started again and this is what I have done.
    1) Run the page and get no data. The SQL statement on the page is
    select
    "ID",
    "ID" ID_DISPLAY,
    "REFERRAL_ID",
    "REASON",
    "CREATED_BY",
    "CREATED_ON",
    "UPDATED_BY",
    "UPDATED_ON"
    from "#OWNER#"."REFERRAL_REASON"
    where referral_id = :P82_REFERRAL_ID
    2) Checked the wwv_flow_activity_log and can see that the number of rows returned is correct (12 in this case)
    3) Traced the page and looked at the trace file which has the following statement
    select NULL "CHECK$01",
    NULL "ID",
    NULL "ID_DISPLAY",
    to_number(123) "REFERRAL_ID",
    NULL "REASON",
    NULL "CREATED_BY",
    NULL "CREATED_ON",
    NULL "UPDATED_BY",
    NULL "UPDATED_ON",
    NULL "ROWID"
    from dual
    union all
    select "CHECK$01" "CHECK$01",
    "ID" "ID",
    "ID_DISPLAY" "ID_DISPLAY",
    "REFERRAL_ID" "REFERRAL_ID",
    "REASON" "REASON",
    "CREATED_BY" "CREATED_BY",
    "CREATED_ON" "CREATED_ON",
    "UPDATED_BY" "UPDATED_BY",
    "UPDATED_ON" "UPDATED_ON",
    "ROWID" "ROWID"
    from (select NULL "CHECK$01",
    "ID" "ID",
    "ID_DISPLAY" "ID_DISPLAY",
    "REFERRAL_ID" "REFERRAL_ID",
    "REASON" "REASON",
    "CREATED_BY" "CREATED_BY",
    "CREATED_ON" "CREATED_ON",
    "UPDATED_BY" "UPDATED_BY",
    "UPDATED_ON" "UPDATED_ON",
    "ROWID" "ROWID"
    from (select "ID",
    "ID" ID_DISPLAY,
    "REFERRAL_ID",
    "REASON",
    "CREATED_BY",
    "CREATED_ON",
    "UPDATED_BY",
    "UPDATED_ON"
    from "IMPULSE"."REFERRAL_REASON") apex$_rpt_src
    order by 1)
    call count cpu elapsed disk query current rows
    Parse 4 0.00 0.00 0 0 0 0
    Execute 4 0.00 0.00 0 0 0 0
    Fetch 16 0.00 0.00 0 24 0 12
    total 24 0.00 0.00 0 24 0 12
    4) Amended the page to remove the where clause
    5) Amended the page to removed the process that adds 5 empty rows
    6) Run the page and still get no rows
    7) Checked the wwv_flow_activity_log and can see that the number of rows returned is correct (12 in this case)
    8) Log out of application and log back in
    9) Run the page and get 500 rows
    10) Checked the wwv_flow_activity_log and can see that the number of rows returned is correct (500 in this case)
    11) Added the where clause back in to the SQL statement and rerun the page and get the correct numer of rows (12 in this case)
    12) Log out of application and log back in
    13) Run the page and get no rows!!!!!!!
    14) Checked the wwv_flow_activity_log and can see that the number of rows returned is correct (12 in this case)
    So I can only conclude that whilst the data is being retrieved from the database it is not being displayed on the screen. So what would be stopping the data from being displayed?
    Regards
    Paul

  • Multiple Users - Tabular Forms - Multi Row Update.....

    Greetings All,
    Any comments, assistance, links, or even answers on the following situation would be much appreciated....
    I have a Application Express 4.0 (Could upgrade to 4.1 if it would help this issue)
    I have a wizard generated tabular form on a table, the form will show up to 600 records (rows) on a page.
    Part 1:
    The situation:
    User 1: Opens the form and brings up latest data set.
    User 2: Opens the form and brings up the latest data set.
    User 1: Changes data for record 1
    User 1: Hits submit. The data is saved.
    User 2: Changes data for record 1
    User 2: Changes data for record 2
    User 2: Hits submit. The following error is produced:
    Error in mru internal routine: ORA-20001: Error in MRU: row= 1, ORA-20001: ORA-20001: Current version of data in database has changed since user initiated update process. current checksum = "3EE15D666E9DBDC59D34CE4CFB3950C0", item checksum = "922DA12AE1E3D8856695745C4D2830D2"., update "<Removed> Error Unable to process update.
    When this error occurs no updates get made to the table.
    I understand that row 1 can not be updated, however I would like row 2 (and all other rows where there is no conflict) to be updated. I would then like to be able to highlight in the form the rows that failed to update (And reload the data in them from the DB).
    Is this something I can achieve using my own MRU procedure, or in another way?
    Can anyone point me to a good example, tutorial or book showing how to do this.
    Thanks!

    Thanks for the comments guys.
    I have solved my issue in two different ways. Way one was not so clever, but worked, involving writing my own process for handling multi-row updates and would allow a user to fill in data for multiple rows (say 10) and have only the row with changed data rejected. V2 takes a very different approach, it uses Javascript, AJAX and the DOM model of the form to check when data is changed / updated by the user. Essentially, when a user enters an updateable form element, a AJAX request checks if the data has been changed. If it has, the value in the form is updated, and the color changed to blue to alert the user. When the user updates the data item, and AJAX request posts the new value to the database, where it is inserted. I had to build a bit of a framework to make this useable, and have to use dynamic sql in the database packages, but it work really well for what my users need! There are limitations (Currently it only supports date fields, text fields and drop down lists) but it works for me. It also involves traffic back and forth with the server each time a user moves the focus to a new form element, but it is a very light request and the work to do the select / updates in oracle is all based on a primary ke, so is ver quick.
    Solution 1: (Would need to be made much more elegant):
    1: Create a new text Item called P5_MESSAGE (To display error / success messages)
    2: Create a new process:
    DECLARE
    l_cks wwv_flow_global.vc_arr2;
    j pls_integer := 1;
    vUpdatedCount number := 0;
    vErrorCount number:=0;
    vMessage varchar2(4000):='';
    BEGIN
    select wwv_flow_item.md5(firstname,lastname,age) cks
    BULK COLLECT INTO
    l_cks
    from VA_TEST1 ;
    for i in 1..l_cks.count
    loop
    if htmldb_application.g_fcs(i) != l_cks(i) then
    -- Log error
    vErrorCount:=vErrorCount+1;
    vMessage:=vMessage||'Could not update row with ID:' || htmldb_application.g_f01(i) || '. This data has been updated by another user since you retrieved the data.<br>';
    else
    -- Do insert
    vUpdatedCount:=vUpdatedCount+1;
    update VA_TEST1
    set
    FIRSTNAME = replace(htmldb_application.g_f02(i),'%'||'null%',NULL)
    ,LASTNAME = replace(htmldb_application.g_f03(i),'%'||'null%',NULL)
    ,AGE = replace(htmldb_application.g_f04(i),'%'||'null%',NULL)
    where ID = htmldb_application.g_f01(i);
    end if;
    end loop;
    :P5_MESSAGE := vMessage;
    end;
    Note, this currently updates every row, even if the data is unchanged, this could be fixed by comparing the checksum of the data to be inserted with the checksum of the data in the table, if the same then no need to insert.
    Solution 2:
    Too complex to explain in detail here, if you need to implement this then let me know.

  • Modifying the search criteria for my tabular form...!!!!

    Hey guyz i m back again with a query related to my tabular form that i have developed through your help...
    I presented my application to the management 2day...eveything went fine but they want me to modify the search criteria according to thr needs.
    1. They want me to include a drop box which has all the fields dispalyed in the table like .. EMPNO,STC,NAME,NATIONALITY,POSITION,
    & beside this drop box they want me to include a empty field such that if select NATIONALITY from the drop down box and enter the concerned nationality in the search box and press Search button i should get all the emp with particular nationality
    FOR EX: In the drop down box i select NATIONALITY and in the search box i type GERMAN ,... now when i click i should be getting all germans available in the company
    2.We have got evaluations for all emp in percentages
    Now from the drop down i select POSITION in the box beside i enter( HP:80-90) then i should be able to retrieve all the EMP working with position HP and evaluations between 80%-90%
    FOR EX : DROP BOX: Position
    TEXT ITEM: HP:80-90
    Click Search I get all the EMP with evaluation between 80-90 and so on
    How should i modify this ......creating a separate search box for each column would have been easy but how should i implement this what the management wants from me..????

    hi
    try something like this.
    key-exequery trigger(item level).
    begin
    if
      :code.pno is not null OR
      :code.chasis is not null OR
      :code.certi is not null
    then  --> SEARCH IN  TABLE
      go_block ( 'block' );
      :system.message_level := '10';
      execute_query;
      :system.message_level := '0';
      if
           :block.id is null
      then
        go_block ( 'code' );
        message ( 'Nothing found with the given criterias.' );
        message ( ' ' );
      end if;
    /*if
         :code.code is not null OR
      :code.branch || :code.class || :code.year || :code.serial || :code.cno || :code.edno is not null OR
      :code.issue is not null OR
      :code.inscode is not null OR
      :code.ID is not null
    else  --> SEARCH IN block2 TABLES
      go_block ( 'block2' );
      :system.message_level := '10';
      execute_query;
      :system.message_level := '0';
      if
           :block2.IDis null
      then
        go_block ( 'code' );
        message ( 'Nothing found with the given criterias.' );
        message ( ' ' );
      end if;
    end if;
    end;
    when-new-form-instance trigger.
    begin
    for l_rec in ( select distinct year from ins1 where year is not null order by year desc ) loop
         add_list_element ( 'code.year', get_list_element_count ( 'code.year' ), l_rec.year, l_rec.year );
    end loop;
    exception when others then null;
    end;
    key-exit trigger.
    begin
    if
         get_item_property ( name_in ( 'system.cursor_item' ), item_canvas ) in ( 'Block_Name1', 'Block_Name2' )
    then
      go_block ( 'code' );
    else
         exit_form( no_validate );
    end if;
    end;
    when-button-pressed trigger.
    begin
    do_key ( 'EXECUTE_QUERY' );
    end;
    pre-query trigger.(block level).
    begin
    :ins1.serial := :code.code;  --> ?? still needed ?
    :ins1.branch := :code.branch;
    :ins1.class := :code.class;
    :ins1.year := :code.year;
    :ins1.serial := :code.serial;
    :ins1.cno := :code.cno;
    :ins1.edno := :code.edno;
    :ins1.inscode := :code.inscode;
    :ins1.producer := :code.producer;
    :ins1.broker := :code.broker;
    :ins1.beneficiary := :code.benecode;
    if
         :code.issue is not null AND :code.todate is null
    then
      set_block_property ( 'block', onetime_where, ' trunc ( issue ) >= trunc ( :code.issue )' );
    elsif
         :code.issue is null AND :code.todate is NOT null
    then
      set_block_property ( 'block', onetime_where, ' trunc ( issue ) <= trunc ( :code.todate )' );
    elsif
         :code.issue is NOT null AND :code.todate is NOT null
    then
      set_block_property ( 'block', onetime_where, ' ( trunc ( issue ) >= trunc ( :code.todate ) AND trunc ( issue ) <= trunc ( :code.todate ) )' );
    end if;
    end;
    key-next-item trigger(block level).
    begin
    if
         :block.ID is not null
    then
      :global.ref := :block.ID;
      exit_form ( no_validate );
    else
         go_block ( 'code' );
    end if;
    end;Sarah

Maybe you are looking for

  • Photoshop workflow

    i do simple daily tasks with adobe photoshop cs and i was hoping automator would make this easier. let's say i have a folder full of images. what i want automator to do for all of the images is... 1) open with photoshop 2) select-->all 3) edit-->stro

  • Is tabook.pdf a complete list of all laptops?

    Hello. I just bought ThinkPad T510 4314-4PG. I tried to find detailed information about my laptop in tabook.pdf file. But I can find 4314-PG in this document. There are number models of 4314-xxx but no 4314-PG. I believe tabook.pdf is a comprehensive

  • Fright outwords defference from Accounting doc to billing doc

    Hi Experts, I am getting this error Fright out words charges is showing different from the Accounting document this is happen for some billing invoices please solve this issue. In accounting document fright charges shown 50% only. With regards, Krish

  • Deselect auth. check for infocubes (Checks for infocubes) in RSSM

    Hi, An infocube I installed contains an authorisation relavant object (already exists) in BW3.5 system. By default the infocube is selected for auth. check in RSSM. After I transported the cube to target system I realised the auth check in RSSM has a

  • Oh, well thats great, my WiFi stopped working...

    Well, my internets been going in and out all night for some reason(i have broadband of course), and this morning i tryed to get on the internet, when its all clearly connected, and Safari will make up some dome excuse first like "Safari can't open th