No automatic row fetching (DML)

All,
I want to generate a process which fetches my rows automatically.
I've done this before several times.
But now my new process is not fetching rows.
I don’t get an error message, the text fields are just empty.
During creating the new process I see an empty LOV
for field ‘Item Containing Primary Key Column Value’
in section ‘Source: Automatic Row Processing (DML)’
although there are about 7 items (text fields) at this page.
Any help appreciated,
lucio

Lucio:
I think you need to set the 'Source Type' attribute of the form fields to be 'Database Column' and in the 'Source value or Expression' field provide the database column to which the page item corresponds to.
varad

Similar Messages

  • Strange behaviour  Automatic Row Processing (DML) process

    Hi all,
    I'm executing a process with a fetch Automatic Row Processing (DML) over a synonym and it works perfectly but when i change the table owner it doesn't work anymore and give the error:
    ORA-06550: line 1, column 17: PL/SQL: ORA-00936: missing expression ORA-06550: line 1, column 9: PL/SQL: SQL Statement ignored
    Unable to fetch row.
    I thought it could be from the permissions of that owner over that synonym so i give it all grants, but still no luck.
    Does anyone knows if there are some limitations for the Automatic Row Processing (DML) process?

    Once again thanks for the reply Munky,
    The original table created on schema1 (ADMGIN) :
    SQL> desc MAN_ALT_TAB
    Name Null? Type
    ALT_ID NOT NULL NUMBER
    ALT_DES VARCHAR2(50)
    AAT_COD NOT NULL VARCHAR2(10)
    ALT_ID_REL NUMBER
    ALT_MUL_REG VARCHAR2(1)
    ALT_FOR_DES VARCHAR2(4000)
    The synonym created in schema2 (PORTAL) :
    CREATE OR REPLACE SYNONYM "PORTAL"."MAN_ALT_TAB" FOR "ADMGIN"."MAN_ALT_TAB";
    Grants on the schema1 (ADMGIN) owner:
    GRANT ALL ON MAN_ALT_TAB TO PORTAL;
    There isn't a new table in the schema2 only a synonym.
    The synonym isn't created in schema1 it was created in schema2.
    Regards Pedro.

  • Call a Automatic Row Fetch from a Dynamic Action

    Hi,
    can I execute the Automatic Row Fetch from a dynamic action?
    I only found this post (Dynamic Actions to call Automatic Row Processing (DML) but the link where the solution is does not work :(
    Thanks,
    Edited by: Elena.mtc on 09-nov-2012 5:46

    Elena.mtc wrote:
    I forgot to say, for several reasons, I don't want to submit the page. So that's where I find the complexity in calling the ARf.
    Thanks.You cannot fire the ARF because it is designed to run when the page is rendered and it cannot be called as a standalone
    Create a dynamic action as follows to fetch the form detials
    Action: Execute PL/SQL Code
    PL/SQL Code:
    begin
      select ename, job, mgr, hiredate, sal
        into :P4_ENAME, :P4_JOB, :P4_MGR, :P4_HIREDATE, :P4_SAL
        from emp
       where empno = :P4_EMPNO;
    exception
      when others then
        null;
    end;
    Page Items to Submit: P4_EMPNO
    Page Items to Return: P4_ENAME,P4_JOB,P4_MGR,P4_HIREDATE,P4_SAL
    See this working example: http://apex.oracle.com/pls/apex/f?p=32940:4
    Login as test/test
    If you want to make it more dynamic you can query the APEX metadata to find the form items on your current page
    select * from apex_application_page_db_items
    where page_id =:APP_PAGE_ID
    and application_id = :APP_ID;

  • How to use Automatic Row Fetch programmatically ?

    Hi
    I like to use Automatic Row Fetch (AFR) of APEX to populate data into a DML form page by clicking a button with a defined where_clause, and like to update the record accordingly as we did in Oracle forms execute_query procedure. I prefer Oracle provided facilities, don't want to do it manually. Any help ?....
    Hasan Al Mamun

    You will probably get a better answer if you ask this in the Apex - Oracle Application Express- forum.
    Sorry, I don't have an immediate answer for your question ;(

  • Automatic row fetch and items initialization

    Hi team,
    I was modifying a page and I came across the following situation:
    I had a form with MRU processing and automatic row fetch and I wanted to make SAVE and DELETE buttons conditional basing on a certain flag contained in the row being read.
    The flag is read into a hidden item having sequence number lower than any button, however I found out that the condition could not be reliably tested as the value in the session state was coming from a previous visit to the page. Some times the buttons were there, some not, at the beginning it was puzzling.
    So, I added a computation based on a SQL query where the hidden flag was computed before the header, basing on the primary key being passed from the calling page and the problem was gone, but for some reason I didn't feel satisfied, it was too cumbersome.
    I thought session state items would be assigned beforehand, but for some reason it looked like they were assigned at a later time, even if the automatic fetch process is supposed to run before the header.
    Then I noticed an "innocent" option in the fetch process definition saying "set memory cache on Fetch / set memory cache on Display".
    In my case was checked the former, but as soon as I checked the latter, I could remove the unnecessary SQL query computation.
    So, I started off posting a problem and ended up with the solution...
    Bye,
    Flavio

    Flavio,
    Thanks for the testimonial. That feature (new in 1.6) is for the very situation you described. When you create new row fetch processes they will have the "set memory cache on Fetch" option selected by default. For existing processes, the option must be manually changed.
    Scott

  • ORA-01403: no data found Problem when using AUTOMATIC ROW FETCH to populate

    ORA-01403: no data found Problem when using AUTOMATIC ROW FETCH to populate a form.
    1) Created a FORM on EMP using the wizards. This creates an AUTOMATIC ROW FETCH
    TABLE NAME - EMP
    Item Containing PRIMARY KEY - P2099_EMPNO
    Primary key column - EMPNO
    By default the automatic fetch has a ‘Process Error Message’ of ‘Unable to fetch row.’
    2) Created a HTML region. Within this region add
    text item P2099_FIND_EMPNO
    Button GET_EMP to submit
    Branch Modified the conditional branch created during button creation to set P2099_EMPNO with &P2099_FIND_EMPNO.
    If I then run the page, enter an existing employee number into P2099_EMPNO and press the GET_EMP button the form is populated correctly. But if I enter an employee that does not exist then I get the oracle error ORA-01403: no data found and no form displayed but a message at the top of the page ‘Action Processed’.I was expecting a blank form to be displayed with the message ‘Unable to fetch row.’
    I can work around this by making the automated fetch conditional so that it checks the row exists first. Modify the Fetch row from EMP automated fetch so that it is conditional
    EXIST (SQL query returns at least one row)
    select 'x'
    from EMP
    where EMPNO = :P2099_EMPNO
    But this means that when the employee exists I must be fetching from the DB twice, once for the condition and then again for the actual row fetch.
    Rather than the above work around is there something I can change so I don’t get the Oracle error? I’m now wondering if the automatic row fetch is only supposed to be used when linking a report to a form and that I should be writing the fetch process manually. The reason I haven’t at the moment is I’m trying to stick with the automatic wizard generation as much as I can.
    Any ideas?
    Thanks Pete

    Hi Mike,
    I've tried doing that but it doesn't seem to make any difference. If I turn debug on it shows below.
    0.05: Computation point: AFTER_HEADER
    0.05: Processing point: AFTER_HEADER
    0.05: ...Process "Fetch Row from EMP": DML_FETCH_ROW (AFTER_HEADER) F|#OWNER#:EMP:P2099_EMPNO:EMPNO
    0.05: Show ERROR page...
    0.05: Performing rollback...
    0.05: Processing point: AFTER_ERROR_HEADER
    I don't really wan't the error page, either nothing with the form not being populated or a message at the top of the page.
    Thanks Pete

  • Automatic Row Processing (DML) process is not updating the record

    Hi all,
    I have an application which was working fine last week and tested and backuped to new application. This Monday, one of the form in that application is not updating the data all of a sudden. I debug that by having page 0 variable and assign the value from the column variable to page 0 variable. Whatever value I changed to the column variable was getting updated to page 0 variable. But it is not updated in the database. So, I changed the success message of the "Automatic Row Processing (DML) process" and I can see the success message on the page, but the column value does not get updated. But when I go back and checked my backup application, that page is working fine. For now, I copy that from the backup application, but I would like to know why this is happening?
    Thanks
    SHY

    Hi Scott,
    Thank you very much for your response. Because of the database complexity, I can't create/import the application on the apex.oracle.com. I am just wondering why this is happening. One of my coworker said same thing happened to her in one of her project and it gets resolved once she restart the server. I am not able to restart the server to check and see if this resolved as the application is on the client server. Do we need to clean up any log file? Thanks.
    SHY

  • Automatic Row Processing (DML) - Return Key Into Item

    Hello,
    This question is on Apex 4.2:
    I'm Displaying the [UNIKEY] column value after the record is inserted into the table using :
    page process > process row table_name > Source: Automatic Row Processing (DML) > Return Key Into Item > "Item Name"
    This works fine while inserting records, my question is why this does not respond on update / delete ?
    ϯ LT

    LT
    Check your branches.
    What might be happening is that on insert and update an other branch is followed.
    Where the branch of the insert either isn't clearing the cache of the page or is setting the item with it's own value.
    The branch on the update on the other hand is clearing the cache of the page and not setting the item.
    With a delete there is a clear cache process generate by the wizard. Check if this process is only running on the delete and not on the update.
    From memory the process is called something with reset.
    If the above doesn't help try to replicate the problem on apex.oracle.com and give access with a guest developer account so we can have a look.
    Nicolette

  • Automatic Row Processing (DML)

    Hello,
    I have an Automatic Row Processing (DML) in a page, but I forgot to add a column in the table where I record the data. So I added the item that I forgot in the page but when I tried to insert the data on the table it shows me this error: ORA-06550: line 1, column 146: PL/SQL: ORA-00904: "PCD": invalid identifier ORA-06550: line 1, column 13: PL/SQL: SQL Statement ignored. I think this is because the column is missing in the "insert query", so I'm wondering how can I add that column in the query... in the automatic row processing it does not show me how can I add that... in the source type in the item that I want to add... I selected Database column.. so the problem is not from there... thanks in advance.
    Regards

    Hi,
    do you mean the "Oracle Employee ACE" icon next to my name? That's not something you can set on your own. Before I joined Oracle I was an Oracle ACE Director which was converted to an Oracle Employee ACE as soon as I started working for Oracle.
    Regards
    Patrick
    My Blog: http://www.inside-oracle-apex.com
    APEX Plug-Ins: http://apex.oracle.com/plugins
    Twitter: http://www.twitter.com/patrickwolf

  • Automatic Row Processing (DML) Update problem

    Hi All,
    I am using Oracle 10.2.0.3 on Windows Server 2003 with "Application Express 3.1.0.00.32".
    I have two schemas in the database, A and B
    B has all the tables which holds the production data
    A has all the synonymns for all of B's objects and plus insert, delete, update, execute rights on B's objects.
    I have a view MyView which basically reads from a table from B's schema
    and an APEX form based on this view... so far so good.
    Problem is when I generate a form using form wizard and try to update a record in the table in B's schema, I get the following error: I cannot use B as the OWNER in APEX, because for other reasons, I need to use A.
    Automatic Row Processing (DML)
    ORA-20505: Error in DML: p_rowid=CA-4837-AHU-002, p_alt_rowid=OBJ_CODE, p_rowid2=, p_alt_rowid2=. ORA-20503: Current version of data in database has changed since user initiated update process. current checksum = "97813992F558009979B5B86C925AD4AC" application checksum = "FA8AB5EC759780B0048E2C11584CD5E6"
    Does anybody know why I get this error message? Is it possible to update the table using the view? I know for sure that my browser is not caching the data and someone else is not editing the same record.
    Thanks in advance,
    Sinan

    Hi,
    Problem is when I generate a form using form wizard and try to update a record in the table in B's schema, I get the following error: *I cannot use B as the OWNER in APEX*, because for other reasons, I need to use A.As highlighted, you need to grant insert, delete, update, execute rights on B schema's objects to APEX schema. Also, you may need to use "Instead of" trigger for view.
    Regards,
    Mangal

  • Automatic Row Processing (DML) using synonym name instead of table

    I want my APEX form to select info using the table name but perform all the DML (add, change, delete) using the synonym name. I created the form using the wizard and went into the "Process Row of xxx" process that was created. I tried changing the table name to synonym name under the 'Source: Automatic Row Processing (DML)' section, but it still uses the table name. Is this possible or do I need to manually create processes using the synonym names

    Hi,
    when I change the Table Name property in the "Automatic Row Processing (DML)" process to a non existing table it raises an error when I run the page and try to save something. So it's actually using the value.
    Does the synonym point to the same table or a different table? What is the intention behind selecting from the table but updating through the synonym?
    Patrick
    My APEX Blog: http://www.inside-oracle-apex.com/
    The APEX Builder Plugin: http://builderplugin.oracleapex.info/
    The ApexLib Framework: http://apexlib.sourceforge.net/

  • Inserts using Automatic Row Processing (DML)  should not clear cache

    Hi,
    I am using APEX 4.0.1.00.03.
    I created a form on a table for inserts and updates.
    After I do an insert, the Automatic Row Processing (DML) clears cache for all items on the page.
    But the user wants to see the data he inserted without having to query. How can I achieve this?
    Thanks
    Chandra

    There isn't any "reset page" process on my page.
    --Chandra.                                                                                                                                                                                               

  • Automatic row fetch based on a select list

    db11gxe , apex 4.0 , firefox 24 ,
    hi all ,
    i want to do automatic row fetch when the value of a select list changes ?
    but first i should ofcourse create a tabular form to fetch the data into it , but what i want is ,if i fetch 2 rows then the report contains only two rows , if i fetch 3 , the report contains only 3
    , if i fetch nothing , the report has nothing ?
    thanks

    Assuming all your page items are on separate rows, under your Page Attributes Header and Footer section, add the below function under Header Text:
    <script>
    function f_toggleNM() {
       // if P2_ATTACHMENT_TYPE value is D, then show row holding P2_CUSTOM_NAME and P2_CUSTOM_MSG. Else hide them
       $f_Show_On_Value_Item_Row('P2_ATTACHMENT_TYPE', [ 'P2_CUSTOM_NAME', 'P2_CUSTOM_MSG' ], 'C');
       // if P2_ATTACHMENT_TYPE value is C, then show row holding P2_DEFAULT_NAME and P2_DEFAULT_MSG. Else hide them
       $f_Show_On_Value_Item_Row('P2_ATTACHMENT_TYPE', [ 'P2_DEFAULT_NAME', 'P2_DEFAULT_MSG' ], 'D');
    </script>Under Footer Text, add the below:
    <script>
    f_toggleNM();
    </script>And on the P2_ATTACHMENT_TYPE item, Element tab, HTML Form Element Attributes, add below:
    onchange="f_toggleNM();"Hope this helps. Thanks!
    JMcG

  • Creating an Automatic Row Fetch

    Hello,
    I'm trying to make an Automatic Row Fetch. The problem is that I have 3 values as a primary key in my table and I can fill in only two in the Row Fetch.
    Does anyone have a solution to this?
    Thanks in advance.

    Hi "user573175",
    I don't think APEX can do Automatic Row Fetch based on a pk of 3 values.
    I always try to limit my pk to 1 or 2 columns (as APEX has this limit).
    So my solution for you would be:
    - Use a PK of 1 or 2 columns and use Automatic Row Fetch
    - or Keep your 3 value PK and use a PLSQL function instead of the automatic row fetch
    Dimitri

  • Bug Report: Automatic Row Fetch/Automatic Row Processing and invalid column

    Hi,
    if an invalid column name is specified for a page item of type "Database Column", no error is reported by the Automatic Row Fetch/Automatic Row Processing process. It's just ignored and nothing is returned!!! That makes it kind of hard to identify such an error.
    The problem can happen for example when a column is renamed or if there is a typo in the column name during creation.
    The problem seems to be related to the following query which doesn't use an outer join.
    SELECT C.COLUMN_NAME, C.DATA_TYPE, I.NAME, I.FORMAT_MASK, I.DISPLAY_AS
    FROM
    SYS.ALL_TAB_COLUMNS C, WWV_FLOW_STEP_ITEMS I WHERE C.OWNER = :B4 AND
      C.TABLE_NAME = :B3 AND I.SOURCE = C.COLUMN_NAME AND I.SOURCE_TYPE =
      'DB_COLUMN' AND I.FLOW_ID = :B2 AND I.FLOW_STEP_ID = :B1 AND (C.DATA_TYPE
      IN ('DATE','NUMBER','CLOB','LONG','FLOAT') OR C.DATA_TYPE LIKE 'NUMBER%' OR
      C.DATA_TYPE = 'CHAR' OR C.DATA_TYPE LIKE '%VARCHAR%' OR C.DATA_TYPE LIKE
      'TIMESTAMP%') ORDER BY C.COLUMN_IDBTW, if an invalid table/view name is specified for a Automatic Row Fetch/Automatic Row Processing process, the error message during runtime isn't very speaking.
    ORA-06550: line 1, column 17: PL/SQL: ORA-00936: missing expression ORA-06550: line 1, column 9: PL/SQL: SQL Statement ignoredMaybe that could be changed too.
    Thanks
    Patrick
    My APEX Blog: http://www.inside-oracle-apex.com
    The APEX Builder Plugin: http://builderplugin.oracleapex.info/
    The ApexLib Framework: http://apexlib.sourceforge.net/

    It says filed (with an L) not fixed (with an X). That means they have noted down the bug, but it may or may not have been fixed yet.

Maybe you are looking for