Application Express :: Unable To Delete Multi Row Update Process?
Dec 8, 2012
I have created a simple page with a tabular form built on a view. The view is on top of a collection that is created when the page is ran. I added a tabular form column validation. I then was going to add a pl/sql process to handle the updates into the db, but before I did that I wanted to delete the ApplyMRU that was created when I first created the tabular form because it does not make sense on my view. When I went to delete the MRU it gave me an error saying "Multi Row Update processes can't be deleted as long as there are validations defined for the tabular form".
I have searched for an answer on this, but so far I have not found much. I am hoping it is something simple that I am missing. I even tried deleting the MRU first and then add the validation, but then it gave me another error about "Tabular form validations require multi-row update processes" I know this was possible in 4.1, but now I am trying it on 4.2
I followed the directions to print a report using this documentation [URL]....where I setup a report query and a report layout and then add the url to a button that when clicked opens up the report in my chosen format. This all work very nicely. However, I need to update the table behind each record that gets printed and I cannot figure out how to couple the print request and an update process in APEX.
I created report with row selector, when I select one row I get tabular form regarding to the selected row from report. I can insert and update data from tabular form, but I have problem with deleting them. Error I get is
ORA-01403: no data found (Row 207589)
My tabular form is created by wizard and primary key is managed by database rowid, I use apex 4.1 an 10g database.
I am tasked to develop and application using Apex 4.2.2.00.11 and Oracle Database 10.2.0.4 on a Windows 2003 Server. This application needs to support different time zones. Briefly, a user in timezone A should be able to create a record with a date in timezone B and the users should be able to view the records in their timezones. What is the best method? Should I maintain a Timezone field for each user site or even per transaction, or is using "Automatic Time Zone" feature in Globalization section of Application Properties sufficient? I have developed Apex applications before, but they did not have to have different time zones, so I am not sure how I should build my database schema. Do you guys store everything as UTC and display values based on user's Timezone setting? I am aware of the Timestamp with Local Timezone data type.
I'm trying to connect a javascript UI control within my page to an APEX Application Process. The control calls the application process via AJAX and appends a variable number of GET / POST parameters to its URL.What is the best way to obtain these parameters from within the PLSQL procedure of the process? Or is there a better way to connect my javascript AJAX control to the Database behind my APEX app?
I'm trying to make changes to a PL/SQL procedure in an application process and no matter what I do in the PL/SQL text (even removing semi-colons and messing up syntax) no changes register when I call the procedure from a page process. I've also tried creating a new application process with a similar procedure of a different name, and no page processes will allow me to call the procedure, saying that it needs to be declared. APEX 4.1.1
I have a 'Select List' widget (P_FILTER) which I have set to return multiple values. In my report region, I have something like this
Select A from B where B.Col_1 IN upper(:P_FILTER)
When user selects only 1 value, the report is correct but if user selects more than 1 value (e.g. 2), the report does not return any rows. How do I get the report to recognize the multiple values returned by the LOV?
Application process (with htp.p in it) does not execute when onSubmit page process returns error (and shows it in notification bar).
How can I make process to execute? Or it is a bug? You can see example in test application Report 1Just press SUBMIT button and see difference near phrase "application process is here" at the top.
so on. id2 is a fk key in this table. for same id2 it may have more than one row. I have process and following is part of it but getting error that is PLS-00224: object 'P30_QUES' must be of type function or array to be used this way .
declare v_count number; v_code number;
begin
select count(*) into vv_count from table1; -- it may have 7 or 8 questions
FOR i IN 1 .. v_count LOOP
select code into v_code from table1 where code = :p30_ques(i);
if :p30_ques(i) is not null then INSERT INTO table2 (id1, id2, attr1, desc) values (null,fk_value, v_code,nvl(:p30_ques(i),null)); end if; commit; end loop; end;
I m trying to call a process on log out URLIn apex4.1 in authentication scheme we have logout url were we change the page were we need to redirect on logout click
But In apex4.2 under authentication scheme Post-Logout URL
I have given url here like this apex_authentication. logoutp_session _id=&SESSION. &p_app_id=&APP_ID.:117 on this page i have the two process but i m getting error System Unavailable.
i have a report with a parameter that i would like to print out from an On demand Process.When there is an Ajax Call Return. i want the report to show before printing.Here is an example of the code used
DECLARE l_customerid varchar2(200); BEGIN l_customerid:= wwv_flow.g_x01; select product_id
I used to have a button, that called an after submit page process and everything ran fine.The page had loads of buttons, so I got rid of the buttons and created a list instead.I have an entry in a list. Target Type: Page, Page 1, Request is set to RUN_PLAN.This calls a before header page process with a condition of Request = Exp1 and Exp1 is set to RUN_PLAN. When the user clicks the list item, the process is run. This works fine.I also have a report on this page.As the process runs, it is updating a table.The user needs to watch this process running (via the report), so they need to keep refreshing the page.The problem is, that when they refresh the page via the browser refresh button the process is called again. How can I stop the process from running, every time the user refreshes the page.
I have to create a tabular form, in which I have each row having an address information in it. I need to individually geocode each of these addresses and process it from the page (I have a web service to do the geocoding) .
How can I process each row of a tabular form individually from a page?
I have a page (16) and a tabular form when the user select the check box I update the zero page item
$x('P0_REPORT_REFNO').value=l_value;
this works fine till this point now i have a button will calls page 8 and pass the parameter to page 8 P0_REPORT_REFNO is displaying the selected value but passing null to page 8.I am running the application on apex.oracle.com
I am trying to find the unix process for one of my application in the database but I am unable to view the same. To simulate, I did the following.
1. My database runs on different server. 2. I invoked "sqlplus" from another unix box to login to the database. 3. I found that the process id (ps -ef |grep sqlplus). 4. When I execute the below mentioned query it does not display the process id that I am looking for. But the osuser, username, program and machine details are correct. How can I know the process details from the database?
SELECT SYS.GV_$SESSION.OSUSER, SYS.GV_$SESSION.USERNAME, SYS.GV_$PROCESS.SPID, SYS.GV_$SESSION.MACHINE, SYS.GV_$SESSION.PROGRAM, SYS.GV_$PROCESS.PROGRAM ,SYS.GV_$SESSION.SQL_ID FROM SYS.GV_$PROCESS, SYS.GV_$SESSION WHERE SYS.GV_$PROCESS.ADDR=SYS.GV_$SESSION.PADDR and SYS.GV_$SESSION.USERNAME='TEST' and SYS.GV_$SESSION.MACHINE like '%hostname%'
My collection is not working as expected, what could be the issue here. This is what i did,
1. I created a collection in a process to fire on page load
if apex_collection.collection_exists(p_collection_name=>'MMMM') then apex_collection.delete_collection(p_collection_name=>'MMMM'); end if; APEX_COLLECTION.CREATE_OR_TRUNCATE_COLLECTION(p_collection_name => 'MMMM');
2. On my page i have a text field P1_text1 when i enter value into text field like ="sample data" i want this data loaded into my collection, so i created a button and added a process(on submit - before computations...) so it should insert into the collection when i click the button but no data is loaded, process:
if it is possible to include 'data' files as part of the Application Export process. Up till now I've only been able to include supporting object files which will recreate a table structure but not the data records - I've been creating the latter outside of APEX.
I have a wizard created tabular form, adding a row is easy using addRow() function, is there a way that I can delete the row from it? Let's say I have added a row and not submitted the form, but now I want to delete just that row from the form, how can I do that?
I have a Page containing 3 reports and I was wondering if it is possible to re-execute only one of the these reports using a button or preferably a Select List which allows me to choose which of the 3 reports I wish to 'refresh/re-execute'. I may be totally wrong here but I assumed that choosing the option to submit a Page will cause all regions to refresh i.e. re-execute the SQL queries they are 'based on'.
I am not familiar with form with report in APEX. I have a lot of forms with reports that was created before, but they have only create buttons. Now I need to add edit and delete buttons. I wish I do not have to recreate forms with reports. But when I tried to add delete function by comparing a form with delete button created by APEX, but it does not work. the delete button does not react at all.
setting is as follows:
button style: template based button button template: Button button type: normal action: redirect to URL execute validation: NO URL target: javascript:apex.confirm(htmldb_delete_message,'DELETE'); database action: SQL delete action condition type: value of item / column in expression1 is not null expression1: P2172_ALIAS_ID
I also enable the delete in the process of :"Process Row of SOR_ALIAS"
If I set action of delete button as submit page, I can delete the row, but no standard popup warning,
We have several prod instances and many applications on each of these... and interactive reports saved by many users.Each prod application have its own ID, distinct from the dev application ID.
Until today I used the apex_application_install inside the first wokspace only, and it works fine, but I need to update applications on every instances. It seems the only way to keep a saved report during an update is to use the same application Id (use the app n°200 to overwrite the n°200).So it means the only available method is : release the dev app on the dev workspace ; export 50 apps from it and import those 50 times, maybe more in the future.
My configuration :Oracle Standard or XEApex 4.1.1OHS
I have encountered a series issue with importing applications into apex 4.2 with apex listener 2.0. Actually I have two stacks one is Apex 4.2 on Oracle 11g XE with apex listener 2.0 running in Stand alone mode and the other one is apex 4.2 on Oracle 11g standard edition with apex listener running on glassfish server. In both, I tried to import an application either from an earlier version (4.1) or an application exported from the same version and same workspace.
In apex 4.2 on Oracle 11g standard edition running on listener 2.0 with GF, even though I select the file to be uploaded again and again, after clicking next, it keeps on saying the error "File must be selected to uploaded".
In the other stack with Oracle XE, it throws an error page from apex listener "500 - Internal Server Error".
Not sure that its an issue with APEX 4.2? if so it would be a great disappointment. Is there any specific configuration needed to be done on apex 4.2 or apex listener?
I understand everything -- <gripe> need better Automated Row Fetch (ARF) documentation </gripe>, but I now have CREATE, QUERY, and DELETE working and I can choose to clear the form (or NOT). And I don't claim this is the best or simplest or most-efficient or most straight-forward approach. It's one virtue is that it does seem to work.
I need to be careful state that this involves both Automated Row Processing (ARP) -- which enables INSERT, UPDATE and DELETE. And Automated Row Fetch (ARF) -- which enables SELECT. ARF is found under Page Rendering and ARP is found under page processing. As we have seen, the two are -- or can be -- interdependent. For example, I believe the error I talk about next is caused by ARF trying to fetch the record just deleted by ARP.
Starting from the situation of
1) having the values retained on the screen when CREATE is clicked and the record is added and 2) getting a database error after a DELETE of a row, A solution is the "reset" processes. Under Page Rendering add a "reset page" process to: "Clear Cache for all Items on Pages (PageID,PageID,PageID)" and indicate the page with the database operations and under Conditions: When Button Pressed: choose CANCEL, CREATE, DELETE, QUERY or SAVE. I made two of these - one for CREATE and one for DELETE. To cover both buttons, you need two processes as you can only indicate one button per process.
Now the form (screen) is cleared after the CREATE (by process 1). And since it's also cleared after the DELETE (by process 2), there is no Database error on DELETE.
(The source of that error was ARF trying to retrieve the deleted record because the PK field had the "just deleted" key value. This nulls it and I have ARF set not to attempt a fetch when the key field is null.
So, how about that? Burleson has an example here which adds more detail than I recall seeing before.URL>....
I think the DML Fetch Mode settings he shows are new to the ARP screen in 4.2. I don't see them in 4.1.