ORA-20001 in APEX_ITEM.SELECT_LIST_FROM_LOV
Hi everyone,
I'm getting a ORA-20001 error from within HTMLDB_ITEM when trying to invoke APEX_ITEM.SELECT_LIST_FROM_LOV. I'm running XE and ApEx 3.2.1.00.12. After getting the error in a report query I was doing, I figured I'd try to narrow the issue down. If I either do this:
SELECT apex_item.select_list_from_lov(1, '1', 'FUNDLOV') FROM DUAL;or this:
BEGIN
DBMS_OUTPUT.put_line(apex_item.select_list_from_lov(1, '1', 'FUNDLOV'));
END;I get the following error message:
ORA-20001: Query must begin with SELECT or WITH
ORA-06512: at "APEX_030200.WWV_FLOW_ASSERT", line 283
ORA-06512: at "APEX_030200.WWV_FLOW_UTILITIES", line 6368
ORA-06512: at "APEX_030200.WWV_FLOW_ITEM", line 853
ORA-06512: at "APEX_030200.HTMLDB_ITEM", line 421
ORA-06512: at line 2
I get the same message whether I'm in ApEx's SQL Commands window or running it in Toad. I can invoke other APEX_ITEM functions like checkbox, text, etc. no problem.
My FUNDLOV query looks like this:
select DESCRIPTION display_value, RECORD_ID return_value
from CSBG_FUNDING_LEVEL
order by 1and it runs without any problem in ApEx or Toad so I don't believe the LOV query is the problem.
Any idea what the problem may be? Thanks!
John
Unless I'm doing something wrong, the ORA-20001 issue appears to be affecting APEX_ITEM.SELECT_LIST_FROM_LOV_XL as well - and I'm also seeing strange behavior in APEX_ITEM.SELECT_LIST_FROM_QUERY.
Running this query:
SELECT description, record_id FROM csbg_funding_level;Returns:
DESCRIPTION.....RECORD_ID
Operated without CSBG.....1
1% - 24%.....2
25% - 49%.....3
50% - 74%.....4
75% - 100%.....5
Yet running this:
SELECT apex_item.select_list_from_query(1, 1, 'SELECT description, record_id FROM csbg_funding_level', NULL, 'NO')
FROM DUAL;Returns:
<select name="f01" ><option value="1" selected="selected">1</option></select>Where are all of the option tags that ought to be getting rendered for the rows in the query results?
I could be wrong, but there appears to be some bugs in SELECT_LIST_FROM_LOV, SELECT_LIST_FROM_LOV_XL and SELECT_LIST_FROM_QUERY.
Any thoughts? Thanks,
John
Similar Messages
-
ORA-20001: Fehler in MRU
Hallo,
do anybody know how to handle this error message:
Error in mru internal routine: ORA-20001: Fehler in MRU: row= 1, ORA-20001: ORA-20001: Die aktuelle Version der Daten in der Datenbank wurde geändert, seit der Benutzer einen Aktualisierungsprozess eingeleitet hat. Aktuelle Prüfsumme (Checksum) =...
I'm become crazy, because I didn't change some data of my m-d tables.
Thanks
SteffHello,
>> well, first of all I created a tabular form and then in a second step I added the checkbox with the code for checkbox
Well, this is probably the reason for your error. You should not change the query of a wizard created tabular form. The wizards automatically assign ID numbers to your updatable columns, starting with 1. In your second step, you added a checkbox column, and you also gave it an ID of 1. Now you probably have two columns with the same ID number in your form, which is a confusing situation for the multi row update procedure. In your case, the solution could be very simple. Change the p_idx parameter value of the APEX_ITEM.CHECKBOX statement to a higher number than the number of updatable columns in your tabular report (and add some for extra caution. The max number is 50) .
>> But I don't understand what you mean with "manual tabular
APEX allows you to use the APEX_ITEM API to create tabular forms manually. When the regular, wizard driven tabular form, don’t answer all your needs, like in your case, you can start with a regular SQL base report region. Then, you will have to manually add all the DML process you’ll need. You can get a lot of help from the Object Browser. Choose to create a new package, using the ‘Package with methods on database table(s)’ option. That will create for you all the procedures you’ll need to insert, update or delete data from the tables associated with your form, including full implementation of optimistic locking (to prevent lost updates in multi user environment).
Regards,
Arie. -
Exception when using apex_item.select_list_from_lov
I have a query where I want to use a select list to enable the user to change the value of an attribute. However, when i try using apex_item.select_list_from_lov or apex_item.select_list_from_query I get an exception. My report region shows ORA-06502: PL/SQL: numeric or value error: character string buffer too small
I tried querying a smaller table, and then it works. Is there a size limit for select_list_from_query and select_list_from_lov? And if so, what is it? The list of values and the query works fine when using them in select list items (in a form). It also works fine when using apex_item.popup_from_lov.
CamillaCamilla,
Those functions return a varchar2 value so you are limited to 4000 characters for a column of that type selected in SQL. You can use the select_list_from_query_xl or select_list_from_lov_xl, which return a CLOB. In any case the size of the HTML generated for the row must be less than 32K.
Scott -
Hi All,
I had created a IR report based on a table and it was working with no issues. But after few days, when I try searching using the IR search bar it shows "ORA-20001: get_dbms_sql_cursor error ORA-00936: missing expression" error message. I don't see any debug messages or errors in the debug window. The Finder drop down is empty too, there are no columns displayed to filter.
When I recreate the IR report(new page) based on the same table, It works fine and there are no issues with the search. But the old IR report search doesnt work. I have not modified the any thing in the old report after initial creation. Report uses Primary key based on a sequence.
What might have caused this issue?
Is there a way to intercept the search query from IR report?
Apex version - 4.2.3.00.08.
Any help on this appreciated.
Thanks,
JaganHi MK, as I had mentioned in my post, I don't see any logs in the debug window, query tab.
Can you please guide me how to check the query logs on search?
Thanks,
Jagan -
hello.
I hope someone can help. My script below takes record(s) from a temporary table and loads them into ORACLE Financials via several APIs but on initial testing (using 1 NEW Record) it fails with the error message:
Employee No: 00020206
ORACLE error occurred processing record.. ORA-20001: PAY_7599_SYS_SUP_DT_OUTDATE
Ive tried to google the error message but nothing - can someone either suggest what this may be or shsow me another way of getting a more precise reason for the problem?
/* Formatted on 2009/04/29 11:52 (Formatter Plus v4.8.7) */
SET serveroutput ON SIZE 1000000 FORMAT WRAPPED
SET verify OFF
SET feedback OFF
DECLARE
-- Debugging/error handling
-- Work variables
l_employ_start_date DATE:= TO_DATE ('01-APR-1999', 'DD-MON-YYYY');
v_ora_loc_code number := 0;
p_emp_number VARCHAR2 (14);
v_rec_cnt NUMBER := 0;
insert_flag VARCHAR2 (8);
err_num NUMBER;
err_msg VARCHAR2 (150);
err_line VARCHAR2 (350);
err_seq NUMBER := 0;
l_validate BOOLEAN DEFAULT FALSE;
l_std_business_group_id NUMBER := '0';
l_default_code_comb_id NUMBER := '218048';
l_organization_id NUMBER := '0';
l_set_of_books_id NUMBER := '1';
l_job_id NUMBER := '10';
l_obj NUMBER;
l_datetrack_update_mode VARCHAR2 (30) := 'CORRECTION';
l_assignment_sequence NUMBER;
l_name_combination_warning BOOLEAN := FALSE;
l_assign_payroll_warning BOOLEAN := FALSE;
l_org_now_no_manager_warning BOOLEAN;
l_other_manager_warning BOOLEAN;
l_spp_delete_warning BOOLEAN;
l_entries_changed_warning VARCHAR2 (30);
l_tax_district_changed_warning BOOLEAN;
l_person_id NUMBER;
l_assignment_id NUMBER;
l_assignment_id2 NUMBER; -- := '28262';
l_special_ceiling_step_id NUMBER;
l_per_effective_end_date DATE:= TO_DATE ('11-Jul-2049', 'DD-MON-YYYY');
l_people_group_id NUMBER;
l_group_name VARCHAR2 (30);
l_assignment_number VARCHAR2 (35);
l_effective_end_date DATE := TO_DATE ('11-Jul-2049', 'DD-MON-YYYY');
l_date DATE := SYSDATE;
ip_p_address_id per_addresses.address_id%TYPE;
ip_p_object_version_number NUMBER;
ip_p_party_id per_addresses.party_id%TYPE;
l_per_object_version_number NUMBER;
l_asg_object_version_number NUMBER;
l_full_name VARCHAR2 (240);
l_per_comment_id NUMBER;
l_per_effective_start_date DATE;
l_concatenated_segments VARCHAR2 (240);
l_soft_coding_keyflex_id NUMBER;
l_comment_id NUMBER;
l_no_managers_warning BOOLEAN;
-- Get employee details info from work table
CURSOR get_employee_details
IS
SELECT std_hire_date, std_last_name, std_sex, std_date_of_birth,
std_email_address, std_emp_status,
LPAD (std_employee_number, 8, '0') std_employee_number,
std_first_name, std_marital_status, std_middle_names,
std_nationality, std_title, std_national_identifier,
std_address_line1, std_address_line2, std_address_line3,
std_address_line4, std_post_code, std_telephone_1, std_country,
std_region, std_location_id, std_organization_id,
std_supervisor_id, std_person_id, std_position_id
FROM SU_TEMPLOYEE_DETAILS;
-- Get EXISTING employee details info from ORACLE tables
CURSOR get_existing_employee_details
IS
SELECT per.person_id, per.business_group_id, per.last_name,
per.start_date, per.date_of_birth, per.email_address,
per.employee_number, per.first_name, per.marital_status,
per.middle_names, per.nationality, per.national_identifier,
per.sex, per.title, padd.address_id, padd.primary_flag,
padd.address_line1, padd.address_line2, padd.address_line3,
padd.town_or_city, padd.postal_code, padd.telephone_number_1, paas.assignment_id,
paas.assignment_number, paas.object_version_number, paas.EFFECTIVE_START_DATE,
paas.job_id, paas.position_id, paas.location_id, paas.organization_id, paas.assignment_type, paas.supervisor_id,
paas.default_code_comb_id, paas.set_of_books_id, paas.period_of_service_id
FROM per_all_people_f per,
per_all_assignments_f paas,
per_addresses padd
WHERE
per.person_id = padd.person_id
-- AND paas.person_id(+) = per.person_id;
AND paas.person_id(+) = per.person_id;
-- checks employee details info from PER_ALL_PEOPLE_F table
CURSOR c_check_employee (p_emp_number VARCHAR2)
IS
SELECT per.person_id, per.business_group_id, per.last_name,
per.start_date, per.date_of_birth, per.email_address,
per.employee_number, per.first_name, per.marital_status,
per.middle_names, per.nationality, per.national_identifier,
per.sex, per.title, padd.address_id, padd.primary_flag,
padd.address_line1, padd.address_line2, padd.address_line3,
padd.town_or_city, padd.postal_code, padd.telephone_number_1, paas.assignment_id,
paas.assignment_number, paas.object_version_number, paas.EFFECTIVE_START_DATE,
paas.job_id, paas.position_id, paas.location_id, paas.organization_id, paas.assignment_type, paas.supervisor_id,
paas.default_code_comb_id, paas.set_of_books_id, paas.period_of_service_id
FROM per_all_people_f per,
per_all_assignments_f paas,
per_addresses padd
WHERE per.employee_number = p_emp_number
AND per.person_id = padd.person_id
AND paas.person_id(+) = per.person_id;
emp_rec c_check_employee%ROWTYPE;
-- Cursor retrieves latest Object Version Number from per_assignments_f table..
CURSOR csr_ovn (cp_person_id IN per_all_people_f.person_id%TYPE)
IS
SELECT MAX (paas.object_version_number)
FROM per_assignments_f paas, per_all_people_f per
WHERE paas.person_id = per.person_id
AND per.employee_number = paas.assignment_number
AND per.person_id = cp_person_id;
-- Cursor to get Oracle_Loc_Code from SU CHRIS vs ORACLE Locations Table into a variable..
CURSOR csr_ora_loc_code (cp_location_id IN SU_TEMPLOYEE_DETAILS.std_location_id%TYPE)
IS
SELECT sil.ORACLE_LOC_CODE
FROM SU_TEMPLOYEE_DETAILS std, SU_IEXP_LOCATIONS sil
WHERE std.STD_LOCATION_ID = sil.CHRIS_LOC_code
AND std.STD_LOCATION_ID = cp_location_id;
BEGIN
-- Process each record in the work table
FOR v_emp IN get_employee_details
LOOP
-- determine whether customer already exists
OPEN c_check_employee (v_emp.std_employee_number);
FETCH c_check_employee
INTO emp_rec;
l_assignment_id2 := emp_rec.assignment_id;
IF v_emp.std_emp_status = 'N' and c_check_employee%NOTFOUND
THEN
insert_flag := 'I';
DBMS_OUTPUT.PUT_LINE ('Employee No: ' || v_emp.std_employee_number);
ELSIF v_emp.std_emp_status = 'C'
THEN
-- if c_check_employee%NOTFOUND then raise no_data_found;
-- elsif l_assignment_id2 is null then
if l_assignment_id2 is null then
raise_application_error (-20010, 'Employee No: ' || v_emp.std_employee_number || ' exists but has no assignment id!');
end if;
DBMS_OUTPUT.PUT_LINE ('Employee No: ' || v_emp.std_employee_number || ' already exists, making changes.. ' );
insert_flag := 'C';
-- RAISE_APPLICATION_ERROR (-20001, 'Employee No: ' || v_emp.std_employee_number || ' already exists ' );
END IF;
CLOSE c_check_employee;
-- Obtain the most recent Object Version Number..
OPEN csr_ovn (v_emp.std_person_id);
FETCH csr_ovn
INTO l_obj;
-- IF csr_ovn%NOTFOUND THEN RAISE NO_DATA_FOUND; END IF;
CLOSE csr_ovn;
-- Open Oracle Location Code cursor
OPEN csr_ora_loc_code(v_emp.std_location_id);
FETCH csr_ora_loc_code
INTO v_ora_loc_code;
CLOSE csr_ora_loc_code;
-- Create new PER_ALL_PEOPLE_F and PER_ADDRESSES record from
-- info in table record
IF insert_flag = 'I'
THEN
-- -- Importing Employee Procedure --
Hr_Employee_Api.create_gb_employee
(p_validate => l_validate,
p_hire_date => l_employ_start_date,
p_business_group_id => l_std_business_group_id,
p_date_of_birth => v_emp.std_date_of_birth,
p_email_address => v_emp.std_email_address,
p_first_name => v_emp.std_first_name,
p_middle_names => v_emp.std_middle_names,
p_last_name => v_emp.std_last_name,
p_sex => v_emp.std_sex,
p_ni_number => v_emp.std_national_identifier,
p_employee_number => v_emp.std_employee_number,
p_person_id => l_person_id,
p_title => v_emp.std_title,
p_assignment_id => l_assignment_id,
p_per_object_version_number => l_per_object_version_number,
p_asg_object_version_number => l_asg_object_version_number,
p_per_effective_start_date => l_per_effective_start_date,
p_per_effective_end_date => l_per_effective_end_date,
p_full_name => l_full_name,
p_per_comment_id => l_per_comment_id,
p_assignment_sequence => l_assignment_sequence,
p_assignment_number => l_assignment_number,
p_name_combination_warning => l_name_combination_warning,
p_assign_payroll_warning => l_assign_payroll_warning
Hr_Person_Address_Api.create_person_address
(p_validate => l_validate,
-- p_effective_date => v_emp.std_hire_date,
p_effective_date => l_employ_start_date,
p_pradd_ovlapval_override => NULL,
p_validate_county => NULL,
p_person_id => l_person_id,
p_primary_flag => 'Y',
p_style => 'GB_GLB',
p_date_from => SYSDATE,
p_date_to => NULL,
p_address_type => NULL,
p_comments => NULL,
p_address_line1 => v_emp.std_address_line1,
p_address_line2 => v_emp.std_address_line2,
p_address_line3 => v_emp.std_address_line3,
p_town_or_city => v_emp.std_address_line4,
p_region_1 => NULL,
p_region_2 => NULL,
p_region_3 => NULL,
p_postal_code => v_emp.std_post_code,
p_country => v_emp.std_nationality,
p_telephone_number_1 => NULL,
p_telephone_number_2 => NULL,
p_telephone_number_3 => NULL,
p_party_id => ip_p_party_id,
p_address_id => ip_p_address_id,
p_object_version_number => l_obj
Hr_Assignment_Api.update_emp_asg
(p_validate => l_validate,
p_effective_date => SYSDATE, -- l_date,
p_datetrack_update_mode => l_datetrack_update_mode,
p_assignment_id => l_assignment_id,
p_object_version_number => l_obj,
p_supervisor_id => v_emp.std_supervisor_id,
p_default_code_comb_id => l_default_code_comb_id,
p_set_of_books_id => l_set_of_books_id,
p_concatenated_segments => l_concatenated_segments,
--IN/OUT
p_soft_coding_keyflex_id => l_soft_coding_keyflex_id,
--IN/OUT
p_comment_id => l_comment_id,
--IN/OUT
p_effective_start_date => l_date, --IN/OUT
p_effective_end_date => l_effective_end_date,
--IN/OUT
p_no_managers_warning => l_no_managers_warning,
--IN/OUT
p_other_manager_warning => l_other_manager_warning
--IN/OUT
Hr_Assignment_Api.update_emp_asg_criteria
(p_validate => l_validate,
p_effective_date => SYSDATE, -- l_date,
p_datetrack_update_mode => l_datetrack_update_mode,
p_assignment_id => l_assignment_id,
p_object_version_number => l_obj,
p_organization_id => l_organization_id,
p_location_id => v_ora_loc_code,
p_job_id => l_job_id,
p_position_id => v_emp.std_position_id,
p_special_ceiling_step_id => l_special_ceiling_step_id,
p_effective_start_date => l_date,
--per_effective_start_date,
p_effective_end_date => l_effective_end_date,
--IN/OUT
p_people_group_id => l_people_group_id,
--IN/OUT
p_group_name => l_group_name, --IN/OUT
p_org_now_no_manager_warning => l_org_now_no_manager_warning,
--IN/OUT
p_other_manager_warning => l_other_manager_warning,
--IN/OUT
p_spp_delete_warning => l_spp_delete_warning,
--IN/OUT
p_entries_changed_warning => l_entries_changed_warning,
--IN/OUT
p_tax_district_changed_warning => l_tax_district_changed_warning
--IN/OUT
v_rec_cnt := v_rec_cnt + 1;
DBMS_OUTPUT.PUT (CHR (10));
DBMS_OUTPUT.PUT_LINE ( 'There were '
|| v_rec_cnt
|| ' records read in..'
-- Updating PER_ALL_PEOPLE_F and PER_ADDRESSES record from
-- info in table record
ELSE IF insert_flag = 'C'
THEN
-- ===================================================
-- these next 6 lines is for the initial mass update of existing employee records only
-- ===================================================
/*IF emp_rec.default_code_comb_id is NULL THEN
l_default_code_comb_id = 218048;
END IF;
IF emp_rec.job_id is NULL THEN
l_job_id = 10;
END IF; */
-- =========
-- Section end
-- =========
Hr_Assignment_Api.update_emp_asg
(p_validate => l_validate,
p_effective_date => emp_rec.EFFECTIVE_START_DATE,
p_datetrack_update_mode => l_datetrack_update_mode,
p_assignment_id => l_assignment_id2,
p_object_version_number => l_obj,
p_supervisor_id => v_emp.std_supervisor_id,
p_default_code_comb_id => emp_rec.default_code_comb_id,
p_set_of_books_id => emp_rec.set_of_books_id,
p_concatenated_segments => l_concatenated_segments,
--IN/OUT
p_soft_coding_keyflex_id => l_soft_coding_keyflex_id,
--IN/OUT
p_comment_id => l_comment_id,
--IN/OUT
p_effective_start_date => l_date, --IN/OUT
p_effective_end_date => l_effective_end_date,
--IN/OUT
p_no_managers_warning => l_no_managers_warning,
--IN/OUT
p_other_manager_warning => l_other_manager_warning
--IN/OUT
Hr_Assignment_Api.update_emp_asg_criteria
(p_validate => l_validate,
p_effective_date => emp_rec.EFFECTIVE_START_DATE,
p_datetrack_update_mode => l_datetrack_update_mode,
p_assignment_id => l_assignment_id2,
p_object_version_number => l_obj,
p_organization_id => emp_rec.organization_id,
p_location_id => v_ora_loc_code,
p_job_id => emp_rec.job_id,
p_position_id => emp_rec.position_id,
p_special_ceiling_step_id => l_special_ceiling_step_id,
p_effective_start_date => emp_rec.EFFECTIVE_START_DATE,
p_effective_end_date => l_effective_end_date,
--IN/OUT
p_people_group_id => l_people_group_id,
--IN/OUT
p_group_name => l_group_name, --IN/OUT
p_org_now_no_manager_warning => l_org_now_no_manager_warning,
--IN/OUT
p_other_manager_warning => l_other_manager_warning,
--IN/OUT
p_spp_delete_warning => l_spp_delete_warning,
--IN/OUT
p_entries_changed_warning => l_entries_changed_warning,
--IN/OUT
p_tax_district_changed_warning => l_tax_district_changed_warning
--IN/OUT
v_rec_cnt := v_rec_cnt + 1;
DBMS_OUTPUT.PUT (CHR (10));
DBMS_OUTPUT.PUT_LINE ( 'There were '
|| v_rec_cnt
|| ' records read in..'
DBMS_OUTPUT.PUT (CHR (10));
-- End of customer related details
END IF;
END IF;
END LOOP;
COMMIT;
EXCEPTION
WHEN NO_DATA_FOUND
THEN
ROLLBACK;
err_num := TO_CHAR (SQLCODE);
err_msg := SUBSTR (SQLERRM, 1, 150);
err_line := 'ORACLE error occurred processing record.. ' || err_msg;
DBMS_OUTPUT.PUT_LINE (err_line);
INSERT INTO SU_ERROR_LOG VALUES (err_msg, 'TEMPLOYEE_DTLS.sql', SYSTIMESTAMP);
WHEN OTHERS
THEN
ROLLBACK;
err_num := TO_CHAR (SQLCODE);
err_msg := SUBSTR (SQLERRM, 1, 150);
err_line := 'ORACLE error occurred processing record.. ' || err_msg;
DBMS_OUTPUT.PUT_LINE (err_line);
INSERT INTO SU_ERROR_LOG VALUES (err_msg, 'TEMPLOYEE_DTLS.sql', SYSTIMESTAMP);
END;
EXIT;Many thanks
StevenIt looks like the Supervisor employee is not active for the duration of the Employee Record.
Using the correct Supervisor record should resolve the issue. -
ORA-20001: The printing engine..Is this related to a BIP licensing issue?
Hello all,
The error "ORA-20001: The printing engine could not be reached because either the URL..." happens in 2 cases:
<pre>
1. When our BIP is down or being bumped
2. As an APEX administrator, in workspace environment settings, the print server is set to OFF.
</pre>
I'm thinking that this is a licensing issue but I need some clarification on what is causing the error, because all we are trying to do is bring up a PDF report that a user can open or save. BIP is not involved at this point. Is it because the report was developed using BIP that APEX needs BIP up? How does APEX even know the report was developed using BIP? Were are using APEX 3.2.1.00.12 and BIP 10.1.3.4.1
The error happens when a user clicks on a PDF icon that calls an "After Submit Process". The following is the code and the report that was created in BIP is loaded into APEX with a "Named Columns (RTF)" layout type.
Alex.
declare
l_xml clob;
l_template clob;
l_request_blob blob;
l_response blob;
begin
...call up a stored proc to populate l_xml with report data
-- Fetch template
select page_template
into l_template
from apex_030200.wwv_flow_report_layouts
where flow_id = :app_id
and report_layout_name = 'pdf_report';
-- Convert CLOB to BLOB
l_request_blob := wwv_flow_utilities.clob_to_blob(l_xml);
-- Call unsupported and undocumented APEX function
l_response :=
apex_030200.wwv_flow_print_util.convert(
p_report_data => l_request_blob,
p_template => l_template,
p_template_type => 'rtf',
p_output => 'pdf'
-- Set correct mime type and download response
owa_util.mime_header('application/pdf', false);
htp.p('Content-length: ' || dbms_lob.getlength(l_response));
htp.p('Content-Disposition: attachment; filename="Claim_details.pdf"');
owa_util.http_header_close;
apex_application.g_page_text_generated := true;
apex_application.g_unrecoverable_error := true;
wpg_docload.download_file(l_response);See, http://www.oracle.com/technetwork/developer-tools/apex/configure-printing-093060.html
http://download.oracle.com/docs/cd/E17556_01/doc/install.40/e15513/otn_install.htm#CBHBJDDE
(excerpt copied here, for you convenience)
7. Enabling Network Services in Oracle Database 11g
By default, the ability to interact with network services is disabled in Oracle Database 11g release 1 (11.1). Therefore, if running Oracle Application Express with Oracle Database 11g release 1 (11.1), use the new DBMS_NETWORK_ACL_ADMIN package to grant connect privileges to any host for the FLOWS_030100 database user. Failing to grant these privileges results in issues with PDF/report printing, specifically, you will get the following error message:
ORA-20001: The printing engine could not be reached because either the URL specified is incorrect or a proxy URL needs to be specified.
Follow the steps mentioned in the Oracle Application Express Installation Guide, Enabling Network Services in Oracle Database 11g. Also refer to the troubleshooting section in case you receive an ORA-44416: Invalid ACL error after running the previous script. -
ORA-20001: Maximum number of email messages per workspace exceeded
Greetings. We are running APEX 4.1.1. I have an application where we have to send out email messages to a list of emails. Currently there are 2469 email addresses. Originally we put the email addresses in the BCC but we received an error that we had exceeded the size limit of the BCC. So we modified our procedure to send one email at a time, in a loop.
Now we are receiving the following error message:
"ORA-20001: You have exceeded the maximum number of email messages per workspace"
Has anyone else run into this issue? What is maximum number or email messages per workspace? Is it a limit per day, per session?
We have not added emails to this table since last year, so the maximum number of email messages allowed may have changed recently?
I did find this Forum post that addressed the issue but no one responded:
How many mails i can send at a time per day using APEX mail system?
Thanks,
JohnHi jfosteroracle,
You are getting the error may be the following reason,
Check the following,
Login as ADMIN and Goto -->Manage Instance-->Instance Settings--> Mail-->Maximum Emails per workspace
Actually this number denotes the Number of mails can be sent per 24 hour for the workspace,It may exceeded.
It may be the reason.
Thank you.
Regards,
Gurujothi
Edited by: Gurujothi on Jun 27, 2012 5:54 AM -
Trying to implement a VPD policy but got the following error ORA-20001
hey good day,
I'm trying to implement a VPD policy to my application. After I have performed the below task (Label 1) in oracle 10g database. When I'm about to access my application page in ApEx 3.2.1 I got the following error
ORA-20001: get_dbms_sql_cursor error ORA-28110: policy function or package CHARLES.VPD_PREDICATE has error
any form of assistance will be greatly appreciated.
thanks in advance
Label 1
USER is "VPD_ADMIN"
SQL> create or replace context empnum_ctx using set_empnum_ctx_pkg;
Context created.
SQL> CREATE OR REPLACE PACKAGE set_empnum_ctx_pkg IS
2 PROCEDURE set_empnum;
3 END;
4 /
Package created.
SQL> CREATE OR REPLACE PACKAGE BODY set_empnum_ctx_pkg IS
2 PROCEDURE set_empnum IS
3 emp_id NUMBER;
4 BEGIN
5 SELECT EMPNUM INTO emp_id FROM CHARLES.INSTRUCTOR
6 WHERE upper(username) = nvl(v('APP_USER'), USER);
7 DBMS_SESSION.SET_CONTEXT('empnum_ctx', 'empnum', emp_id);
8
9 EXCEPTION
10 WHEN NO_DATA_FOUND THEN NULL;
11 END;
12 END;
13 /
Package body created.
SQL> create or replace package vpd_policy as
2 function vpd_predicate(object_schema in varchar2 default null, object_name in varchar2 default null)
3 return varchar2;
4 end;
5 /
Package created.
SQL> create or replace package body vpd_policy as function vpd_predicate(
2 object_schema in varchar2 default null, object_name in varchar2 default null)
3 return varchar2 as
4
5 BEGIN
6 if (USER = 'ADMIN') and (v('APP_USER') is null) or
7 (USER = 'MICHAEL.GRAY') and (v('APP_USER') is NULL) then
8 return '';
9 else
10 return '(
11 exists (
12 select "INSTRUCTOR"."EMPNUM" as "EMPNUM",
13 "INSTRUCTOR"."FIRSTNAME" as "FIRSTNAME",
14 "INSTRUCTOR"."LASTNAME" as "LASTNAME",
15 "LOAD"."COURSEID" as "COURSEID",
16 "COURSE"."CREDIT" as "CREDIT",
17 "COURSE"."HPW" as "HPW",
18 "LOAD"."CAMPID" as "CAMPID",
19 "LOAD"."YR" as "YR",
20 "INSTRUCTOR"."POS" as "POS",
21 "INSTRUCTOR"."USERNAME" as "USERNAME",
22 "INSTRUCTOR"."DEPARTMENT_NAME" as "DEPARTMENT_NAME",
23 "LOAD"."SEMESTER" as "SEMESTER"
24 from "COURSE" "COURSE",
25 "INSTRUCTOR" "INSTRUCTOR",
26 "LOAD" "LOAD"
27 where "INSTRUCTOR"."EMPNUM"="LOAD"."EMPNUM"
28 and "LOAD"."COURSEID"="COURSE"."COURSEID"
29 and department_name = (
30 select department_name from departments
31 where upper (assigned_to) = nvl(v(''APP_USER''),USER) )
32 )
33
34 or upper(username) = nvl(v(''APP_USER''), USER)
35 ) ';
36
37 END IF;
38 END vpd_predicate;
39 END vpd_policy;
40 /
Package body created.
SQL> begin
2 dbms_rls.add_policy(
3 object_schema => 'charles',
4 object_name => 'load',
5 policy_name => 'Loading Policy',
6 function_schema => 'charles',
7 policy_function => 'vpd_predicate',
8 statement_types => 'select, update, insert, delete');
9 end;
10 /
PL/SQL procedure successfully completed.ORA-20001 isn't an Oracle error message it was coded into your application by a developer: Look it up.
Consider too the following:
EXCEPTION
WHEN NO_DATA_FOUND THEN NULL;so if the employee identifier is not found ... is this really what you want? If an employee isn't valid shouldn't you know it? -
i am using the following description to create a web service reference:
web reference :REST
Name :Yahoo Map
URL :http://local.yahooapis.com/MapsService/V1/mapImage
HTTP Method: GET
Basic Authentication: No
Add Parameter:
Name Type
appid String
location String
Output Format: XML
XPath to Output Parameters : /Result
Output Parameter:
Name Path Type
Url /text() String
Then i tried to create form and report on webservice:
Web Service Reference Type: Yahoo Map
Operation: doREST
All the fields i keep as default
I tick the checkbox (url)in report Parameter
After clicking next whereever required i click create button
I get the following error
ORA-20001: Unable to create form on table. ORA-02263: need to specify the datatype for this column.
Please someone help to solve this as i need to fix it urgently.i exported the application from apex.oracle.com and imported it to our environment
import went fine, but when I ran the IR page I got
ORA-20001: get_dbms_sql_cursor error ORA-00904: : invalid identifier
evidently the problem is a lack of public execute on DBMS_LOB, which is used in the generated IR source.
while waiting for the DBA to grant privs on DBMS_LOB, changing the dbms_lob.getlength call to length() fixes the IR.
however, i am not getting the download link on the associated form page... changed templates, that's not the issue -- we'll see if that's a dbms_lob issue as well -
Strange error while creating form/report pages [ORA-20001]
While creating two new pages with a form and report on it, I've got a strange error. I tried to create the pages several times, but I always got the same error:
ORA-20001: Unable to create query and update page. ORA-20001: Unable to create form on table. ORA-20001: Error creating shortcut id="" ORA-00001: unique constraint (FLOWS_030000.WWV_FLOW_SHORTCUT_IDX1) violated
Error creating query and update.
Return to application.
I'm using the wizard to get the pages, like I did many times before (without problems), but this time it will not work!
Greetings,
JanBelow is a view or sql query i want to create in XE to show users report on startdate,end date,road name,etc,i am having a problem making this view work when i put the code in the sql script. Kindly help me with this if you can please. Thanks. CREATE OR REPLACE FORCE VIEW "RESULTS_DETAILS_VIEW" ("STARTDATE","ENDDATE","ROAD","NAME","STATUS","TYPE","UTILITIES","DATES","LUTON",
AS SELECT
d.Startdate,
d.EndDate,
l.Road,
u.Name,
ws.Status,
wt.Type,
cb.startdate,
cb.enddate,
cb.road,
cb.utility,
cb.type,
cb.status
FROM
Dates d,
Luton l,
Utilities u,
WorkStatus ws,
WorkType wt,
Comb cb
WHERE cb.startDate = d.StartDate
AND cb.endDate = d.EndDate
AND cb.road = l.Road
AND cb.utility = u.Name
AND cb.type = wt.Type
AND cb.status = ws.Status
WITH READ ONLY
/ -
I am using Apex 4.2.2.00.11
am using the following description to create a web service reference:
web reference :REST
Name :Yahoo Map
URL :http://local.yahooapis.com/MapsService/V1/mapImage
HTTP Method: GET
Basic Authentication: No
Add Parameter:
Name Type
appid String
location String
Output Format: XML
XPath to Output Parameters : /Result
Output Parameter:
Name Path Type
Url /text() String
Then i tried to create form and report on webservice:
Web Service Reference Type: Yahoo Map
Operation: doREST
All the fields i keep as default
I tick the checkbox (url)in report Parameter
After clicking next whereever required i click create button
I get the following error
ORA-20001: Unable to create form on table. ORA-02263: need to specify the datatype for this column.
Please someone help to solve this as i need to fix it urgently.336554,
Looks like there is a 127-column limit on the number of report columns supported when using that wizard. Do you have more than that?
57434 -
Error in mru internal routine: ORA-20001: no data found in tabular form
Hi All,
I am trying to do the Multi Row Update. Please go through the below process which i followes:
> I have a table B which is of child table of A, the columns belongs to table B are B_ID, B_Name, B_Description and A_ID.
> I have prepared a report with B_NAME, B_DESCRIPTION and B_ID and in this B_NAME is of LOV.
> Now I want to update the values through interface by clicking on SUBMIT [Apply Change] button.
> To do this I used the Process of "Multiple Rows Update" by choosing table B and a primary key value of table B which is B_ID.
While clicking on the SUBMIT [Apply Change] button I am getting this error:
Error in mru internal routine: ORA-20001: no data found in tabular formPlease tell me is i am following the correct process. If not please correct me.
Thanks in advance
VishwanathHi All,
I am trying to do the Multi Row Update. Please go through the below process which i followes:
> I have a table B which is of child table of A, the columns belongs to table B are B_ID, B_Name, B_Description and A_ID.
> I have prepared a report with B_NAME, B_DESCRIPTION and B_ID and in this B_NAME is of LOV.
> Now I want to update the values through interface by clicking on SUBMIT [Apply Change] button.
> To do this I used the Process of "Multiple Rows Update" by choosing table B and a primary key value of table B which is B_ID.
While clicking on the SUBMIT [Apply Change] button I am getting this error:
Error in mru internal routine: ORA-20001: no data found in tabular formPlease tell me is i am following the correct process. If not please correct me.
Thanks in advance
Vishwanath -
Apex 2.2.1- error in editing a report withIE 6: ORA-20001- Checksum error
Hi all,
I'am getting an Error when I try to edit a report with Internet Explorer 6: ORA-20001-...- Checksum error.
With Firefox it works fine.
Customer is using IE as standard browser and Firefox is not available here.
Any Ideas?
KazimI had to apply Patch 4554072, provided with APEX.
This patch is available in the directory patch\bug4554072.
Kazim -
ORA-20001 FLEX-ID DOES NOT EXIST
Hi Experts,
Please am having this issue when running create Grade api for HCM of Oracle EBS.
When i execute this script below to existing Business Group( Vision University 1759 or Vision Corporation 202 ) data is transferred to per_grades and per_grade_definitions tables
But when i execute this same script pointing to a Business Group (TEST BG 7891) we created by ourself it gives error code ORA-20001 FLEX-ID DOES NOT EXIST
I have a strong feeling that creating our Business Group and setting up the Grade Flexfield has a problem, but i can 't trace the fault, am not EBS expert
Please can you please advice where am going wrong !!
Thanks,
Kwesi
SCRIPT BELOW:
Procedure Create_Grade
is
l_Validate Boolean := FALSE;
l_Business_Group_id Number(15,2);
l_Date_From Date;
l_Sequence Number(15,2);
l_Grade_id Number(15,2);
l_Object_Version_Number Number(15,2);
l_Grade_Definition_id Number(15,2);
l_Name Varchar2(100);
l_OVN Number(15,2) := 1;
i Number;
Begin
For Grad In (Select * from chr_Grades where OVN IN l_OVN) loop
Begin
apps.hr_grade_api.Create_Grade(
p_Validate => l_Validate,
p_Business_Group_id =>7891,
p_Date_From => to_Date(sysdate,'DD-MM-YYYY'),
p_Sequence => 11,
p_Grade_id => l_Grade_id,
p_Object_Version_Number => l_Object_Version_Number,
p_Grade_Definition_id => l_Grade_Definition_id,
p_Name => l_Name,
p_segment1 => Grad.Grade_id,
p_segment2 => Grad.Grade_Name,
p_segment3 => Grad.Grade_Description
Update chr_Grades Set OVN = 2
where Grade_id = Grad.Grade_id;
End;
End loop;
Commit;
End Create_Grade;Well, i found the solution to my problem, and is just creating the segment you want to use in your flexfield without PASSING ANY VALUESET.
-
Ora -20001 error coming while updating from a tabular form
Hi
I have a tabular form , which updates a table in the database.
Whenever I update the record first time I getting an error as
Error in MRU internal routine ORA-20001.Error in MRU:row=1,
ORA-1403 no_data_found, update abc.sale_forcast_temp set "PK_ID"=:b1,"W27"=:b2
Error unable to update process
But when I press Ok return to the form and then again try to update , records gets successfully updated
Regards
ShashiKamal,
This will be the pseudocode.
Procedure A()
select * from EMP bulk collect into records_array; --Of type RECORD_ARRAY
batch_count = (records_array.length) / batch_size;
--batch_size is say 5000 rows and batch_count is the number of batches
for i in 1..(batch_count+1)
B( records_array);
C();
commit;
Procedure B(records_array in RECORD_ARRAY )
INSERT /*+PARALLEL(EMP_DUMMY, 2) */
INTO TABLE EMP_DUMMY
SELECT * from TABLE(CAST(records_array as RECORD_ARRAY) ;
Procedure C()
Other operations which include reads on the EMP_DUMMY table;
This is the top view of how it looks like. Actually the Select statement for the insert statement is very complex and I do a join on the records that are being passed in by casting it into a table. This query is taking about 40 minutes for 10,000 rows in the records_array. I need to parellelise this query because each row of the records_array yields a different row for the EMP_DUMMY table.
I hope that I made it clear for you.
Can you also tell me if procedure C in which I shall be doing a read on the EMP_DUMMY table, has any affect of the parallel insert
Thanks for your help.
Maybe you are looking for
-
How to delete line item from sales order ?
Dear All , user is having 20 line items from which 3 line items of which prod order confirmation cancellation is done also goods reversal done now as user tries to delete the line items an info box pops up --> Due to cost m
-
Oracle 9.0.1 + Linux w/generic conectivity
I'm currently migrating from a Ora8i+WinNT4 to a Ora9i+RH Linux 9. All the database is OK on the linux side. I have added the listener entry: (SID_DESC = (SID_NAME = NETFINITY) (ORACLE_HOME = /opt/ora9/product/9.2/) (PROGRAM = hsodbc) (SID_DESC = (SI
-
Can't get Zip or Jaz Drive to work with PB G4 OS 10.4.7
Hi All, Please help if possible. I recently upgraded from a PB 3400/G3, "Kanga" to a PB G4. When I used my Kanga I saved tons of files and pictures to my Iomega SCSI 1G Jaz and 100M Zip drives. I would like to transfer all this stuff to my PB G4 but
-
Problem in Client authentication in JSSE on a web service
Hi, I am having a Web service running on my Web server (Sunone 6.1). I need to implement Security on it using JSSE. It has to be a MUTUAL authentication. I have installed all the certificates and CA certs on both Client and server. But when I try to
-
Making a loadmovie in an empty movie clip
Hi. I'm making a new as3 file, and there i made an animation, like an intro for my website, in a movie clip. But what i want is, when this animation or this movie clip ends, automatically it charges another swf with my website, without having to pres