Automatic form processing..
Hi ,
I am researching about the automactic form validation processing and i hv found these ..FPAPI
http://www.javaworld.com/javaworld/jw-10-2001/jw-1005-forms.html
The documentation appear to very complex and many steps need to be done ...
Any expert can suggest other alternatived of automatic form validation processing method?
Hi, did you check out the jakarta projects (struts, ...) at http://jakarta.apache.org? Look for the SubProjects.
Although I'm not familiar with struts, I believe it has some validation facility for form validation...
Patrick
Similar Messages
-
Adding a new field to an Automatic Row Processing form
Hi,
I have a form that I built through the form Wizard which has an automatic row processing function. It is working very well, except that any new fields I add to the form are not being updated in the database when the row is processed. I have set up the field exactly the same as other fields which are working and were originaly created by the wizard. I have deleted and recreated the row processing Page Process, but nothing seems to make it work. Have I missed anything? I don't want to recreate my page from scratch each time I want to add a new field.
Thanks,
Steveif you're positive that your new fields/columns update correctly when you use Text Field items and not when you use Select List ones, i'd check to see what your select lists are returning. a good way to see exactly what your form got from your select list items is to check the session state for your select list items right after you submit your page (clicking the "Session" link in your developer toolbar in your runtime environment is a good way to get to this info). also, even though you said your added Text Fields work and your Select Lists don't, i'd still check the "Source Type" and "Source value or expression" fields of your select list items to make sure they're set correctly. for form items to work with your table in htmldb auto-dml processing, you need to set the "Source Type" to "Database Column" and the "Source value or expression" to the case-sensitive name of your db column.
hope this helps,
raj -
Are 'read only' items causing my automatic row processing to fail?
I have a form that uses automatic row processing to update my table.
I recently had to add a check to lock down the fields using the read only condition where a record has been 'approved'. So, I turned off all of the fields and hid the update button.
Now they want me to check to see if the user is a manager, and if so, allow them to see the update button, and make a single field on the form modifiable.
I have the user identified as a manager, and can make the field accept the change (a yes/no combo box). Yet when they click the update button, the form just sits there. A branch is supposed to fire on hitting that button, taking them back to the previous report, but it doesn't happen. The source of the combo box in question uses a column on the table, and works fine when the form has all of the fields showing for modification.
I had some validations that I finally set to never fire, thinking that they were failing and just not giving the error messages. I know a bad sql or pl/sql atatement in a validation will cause the form to just keep sitting there doing nothing, and thought it might help.
Several of the various fields are combo boxes, several are text boxes.
I'm stumped.
Shall I keep the regular update button hidden whether it is a manager or not (because it has been 'approved'), and enable a new button that fires off a process to update the one field that the manager may want to change? Does making a field 'read only' always have a detrimental effect on the auto processes I've been counting on? Is that if fact what is happening now?
Thanks in advance for any advice or comments on this.
ClaytonHi, Scott.
My version is 3.0.0.00.20
I have received info to set up the application, though I have not activated it as yet. I'm reluctant to try to load up the various tables to make it work. It could be done.
My workaround is to that the user (a manager) fires off to another form to show an individual record, and ask if he/she really wants to make this change. On submit, they will be taken back to the original locked down form, and I will update the single field in that process of returning them. This will actually be a plus, in that I expect to show them all of the 'duplicate' entries for that item, and show them that by 'activating' this particular item, they will 'deactivate' the one duplicate that is currently active. Or, if they are deactivating the sole item that is active, that there will in fact be no active items in the system. Convoluted as heck, but they swear this is how they've been doing business with their briefcases and file cabinets of Excel files. I'm surprise they even float at this point (these are ships we're talking about).
This all may be due to the form originally having a next/previous/count process once arrived at my clicking on the edit button of the report of items. All of that has been hidden away, and though the fields exist of the form, they are not used. They only see the current item that they clicked on from the report.
I read up a little on session state, as well as posts with the debug error I was getting. I'm still not on board with the whole issue of 'state'. Items stay as they are until they're changed, no? I suppose that sounds simplistic.
One of the things that caught my eye was several combo box lists that on read only mode, showed [] square brackets. Which, in some cases is okay.
What I'll try to do is set up a public application - for future use if nothing else. I'm going to be working on this for awhile. I have more than a bit of work to do to cleanse the data as well as get rid of the single sign on requirement (I'll assume that I should have to do this) in order to share the app.
I know you're expecting me to have this up and running for you to look at, but I'm under the gun. And they actually like my workaround.
I'll keep everybody informed, one way or another.
Clayton -
Without Automatic Row Processing (DML)
Hi All
I try to make one page to show use DML statements without standard Automatic Row Process.
What I have:
One page with:
region: Report - select empno, ename, sal, deptno from emp;
region: Form with items: p6_empn, p6_ename, p6_sal, p6_deptno
addictionaly in that moment I have:
process CreateProcess:
begin
insert into emp (empno, ename, sal, deptno)
values (emp_seq.nextval, :P6_ENAME, :P6_SAL, :P6_DEPTNO);
commit;
end;
and button CREATE.
Create Process is fired when I push CREATE button and Insert statement works corecctly. Branch is on the same page. (I use request).
Now I would like to show update and delete statements.
In Report I have in column EMPNO standard button Edit (each row)
(<img src="#IMAGE_PREFIX#edit.gif" alt="Edit">)
I have process SelectProcess:
begin
select ename,sal,deptno
into :p6_ename, :p6_sal, :p6_deptno
from emp
where empno = :p6_empno;
end;
It is fired In Load _ Before Header
When I push Edit in one row I would like to see details of employee in Form, but I see nothing. In session state all is correct - I see :p6.... with name, sal and ...
I dont know how to connect this process with buton and branch.
could you help me?Hi,
I have done a quick test for this - [http://htmldb.oracle.com/pls/otn/f?p=25946:1]
On the Edit page, I have a process called P2_LOAD_DATA that runs "On Load - Before Header", is conditional on P2_EMPNO being NOT NULL and using the following code:
BEGIN
SELECT EMPNO, ENAME, JOB
INTO :P2_EMPNO, :P2_ENAME, :P2_JOB
FROM EMP
WHERE EMPNO = :P2_EMPNO;
END;I have a button with a Button Name setting of "UPDATE" (user sees this as Apply Changes)
I then have a process that runs "On Submit - After Computations and Validations" and is conditional on REQUEST = UPDATE. The code is:
BEGIN
UPDATE EMP
SET ENAME = :P2_ENAME,
JOB = :P2_JOB
WHERE EMPNO = :P2_EMPNO;
END;The source settings on P2_EMPNO, P2_ENAME and P2_JOB are as I described in my previous post.
One thing to check - do you have a "reset page" process? If so, remove it.
Andy -
Automatic form generation on creation transfer order for delivery note?
Hi,
I have to create a form that should automatically be generated on the creation of a transfer order for delivery note. How do I trigger this automatic creation of the form? And how can the transfer order number be passed to my print program?
Thx!hi christophe,
To issue the delivery output, go to transaction VL02N.
Then go to EXTRAS-> OUTPUT->HEADER->EDIT
In the Message output screen enter the relevant output type created for the delivery.
Choose the relevant medium of output.
Choose Simple Mail, in this case the field NAST-NACHA will be having a value of 7.
Specify the Partner Function; in this case it is MA -> Mail partner address
Select the Communication Method for the output type maintained.
This will take you to the SAPOFFICE screen.
Enter there the E-Mail Address to which you want to send the delivery document as PDF.
A mail will be sent to the e-mail address of the E-Mail Address specified, with the delivery output form as a PDF attachment.
hope it will help u ..
*& Report ZZ_TEST *
REPORT zz_test .
INCLUDE zz_test_top.
INCLUDE zz_test01.
FORM entry *
--> RETURN_CODE *
--> US_SCREEN *
FORM entry USING return_code us_screen.
CLEAR retcode.
xscreen = us_screen.
PERFORM processing USING us_screen.
CASE retcode.
WHEN 0.
return_code = 0.
WHEN 3.
return_code = 3.
WHEN OTHERS.
return_code = 1.
ENDCASE.
ENDFORM. "entry
*& Include ZZ_TEST_TOP *
TABLES : nast,
tnapr.
TYPES : BEGIN OF t_SOUDNAMEI1.
INCLUDE STRUCTURE SOUDNAMEI1.
TYPES : END OF t_SOUDNAMEI1.
Internal Table declarations
DATA: i_otf TYPE itcoo OCCURS 0 WITH HEADER LINE,
i_tline TYPE TABLE OF tline WITH HEADER LINE,
i_receivers TYPE TABLE OF somlreci1 WITH HEADER LINE,
i_record LIKE solisti1 OCCURS 0 WITH HEADER LINE,
*Objects to send mail.
i_objpack LIKE sopcklsti1 OCCURS 0 WITH HEADER LINE,
i_objtxt LIKE solisti1 OCCURS 0 WITH HEADER LINE,
i_objbin LIKE solisti1 OCCURS 0 WITH HEADER LINE,
i_reclist LIKE somlreci1 OCCURS 0 WITH HEADER LINE,
i_lips LIKE lips OCCURS 0 WITH HEADER LINE,
i_SOUDNAMEI1 TYPE STANDARD TABLE OF t_SOUDNAMEI1.
Work Area declarations
DATA:w_objhead TYPE soli_tab,
wa_control_parameters TYPE ssfctrlop,
wa_output_options TYPE ssfcompop,
w_return TYPE ssfcrescl,
w_doc_chng TYPE sodocchgi1,
w_data TYPE sodocchgi1,
w_buffer TYPE string,"To convert from 132 to 255
wa_SOUDNAMEI1 TYPE t_SOUDNAMEI1,
Variables declarations
w_form_name TYPE rs38l_fnam,
w_len_in LIKE sood-objlen,
w_len_out LIKE sood-objlen,
w_len_outn TYPE i,
w_lines_txt TYPE i,
w_lines_bin TYPE i,
retcode TYPE sy-subrc,
xscreen TYPE c,
w_spld TYPE usr01-spld,
w_receiver TYPE SOXNA-FULLNAME,
w_OBJ_RECORD TYPE OBJ_RECORD,
w_user type sy-uname,
w_email TYPE ad_smtpadr.
Constants Declaration
CONSTANTS : c_x TYPE c VALUE 'X',
c_atrate(1) TYPE c VALUE '@'.
*& Include ZZ_TEST01 *
FORM PROCESSING *
FORM processing USING proc_screen.
SELECT * FROM lips
INTO TABLE i_lips
WHERE vbeln = nast-objky.
Call Function module to Getfunction Module name Generated by Smartform
CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
formname = tnapr-sform
IMPORTING
fm_name = w_form_name
EXCEPTIONS
no_form = 1
no_function_module = 2
OTHERS = 3.
IF sy-subrc <> 0.
retcode = sy-subrc.
ENDIF.
CLEAR : wa_control_parameters,
wa_output_options.
CASE nast-nacha.
WHEN '1'.
wa_control_parameters-device = 'PRINTER'.
WHEN '7'.
DATA: l_email TYPE ad_smtpadr.
wa_output_options-tdnoprev = c_x.
wa_control_parameters-getotf = c_x.
To get the default output device maintained in the
User profile
SELECT SINGLE spld FROM usr01
INTO w_spld
WHERE bname EQ nast-usnam.
IF sy-subrc EQ 0.
MOVE w_spld TO wa_output_options-tddest .
ENDIF.
wa_output_options-tdnoprev = c_x.
wa_control_parameters-getotf = c_x.
To get the email address maintained for the particular output
CALL FUNCTION 'NAST_GET_MESSAGE_OBJECT_RECV'
EXPORTING
pi_objkey = nast-tdname
IMPORTING
pe_addr = w_receiver
CHANGING
pc_objhandle = w_obj_record
EXCEPTIONS
maildata_not_readable = 1
OTHERS = 2.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
IF w_receiver NA c_atrate.
To retrieve the E-Mail Id in case we get the User name from NAST
CLEAR wa_soudnamei1.
REFRESH i_soudnamei1.
MOVE w_receiver TO wa_soudnamei1-fullname.
To get the user name
CALL FUNCTION 'SO_NAME_CONVERT_API1'
EXPORTING
name = wa_soudnamei1
TABLES
names = i_soudnamei1
EXCEPTIONS
user_not_exist = 1
parameter_error = 2
x_error = 3
OTHERS = 4.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
CLEAR wa_soudnamei1.
READ TABLE i_soudnamei1 INTO wa_soudnamei1 INDEX 1.
MOVE wa_soudnamei1-sapname TO w_user.
To get the e-mail Id maintained in the user profile
CALL FUNCTION 'FTR_CORR_CHECK_EMAIL_SAP_USER'
EXPORTING
i_user = w_user
IMPORTING
e_email_address = l_email
EXCEPTIONS
mail_address = 1
determination_error = 2
OTHERS = 3.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
MOVE l_email TO w_receiver.
ENDIF.
MOVE w_receiver TO w_email.
ENDCASE.
wa_control_parameters-no_dialog = c_x.
wa_control_parameters-langu = nast-spras .
wa_output_options-tdteleland = nast-tland.
wa_output_options-tdtelenum = nast-telfx .
wa_output_options-tdsenddate = nast-erdat .
wa_output_options-tdsendtime = nast-eruhr .
wa_output_options-tddataset = nast-dsnam .
wa_output_options-tdsuffix1 = nast-dsuf1 .
wa_output_options-tdsuffix2 = nast-dsuf2 .
wa_output_options-tdimmed = nast-dimme .
wa_output_options-tddelete = nast-delet .
wa_output_options-tdautority = nast-tdautority.
wa_output_options-tdcovtitle = nast-tdcovtitle .
wa_output_options-tdcover = nast-tdocover .
wa_output_options-tdreceiver = nast-tdreceiver.
wa_output_options-tddivision = nast-tddivision.
wa_output_options-tdcopies = nast-anzal .
wa_output_options-tdnewid = c_x.
wa_output_options-tdarmod = nast-tdarmod.
wa_output_options-tdnoarmch = c_x.
CALL FUNCTION w_form_name
EXPORTING
archive_index = toa_dara
archive_parameters = arc_params
control_parameters = wa_control_parameters
output_options = wa_output_options
user_settings = ' '
IMPORTING
job_output_info = w_return
TABLES
it_lips = i_lips
EXCEPTIONS
formatting_error = 1
internal_error = 2
send_error = 3
user_canceled = 4
OTHERS = 5.
IF nast-nacha EQ 7 AND sy-subrc EQ 0.
i_otf[] = w_return-otfdata[].
CALL FUNCTION 'CONVERT_OTF'
EXPORTING
format = 'PDF'
max_linewidth = 132
IMPORTING
bin_filesize = w_len_in
TABLES
otf = i_otf
lines = i_tline
EXCEPTIONS
err_max_linewidth = 1
err_format = 2
err_conv_not_possible = 3
OTHERS = 4.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
Convert PDF from 132 to 255.
LOOP AT i_tline.
Replacing space by ~
TRANSLATE i_tline USING ' ~'.
CONCATENATE w_buffer i_tline INTO w_buffer.
ENDLOOP.
Replacing ~ by space
TRANSLATE w_buffer USING '~ '.
DO.
i_record = w_buffer.
Appending 255 characters as a record
APPEND i_record.
SHIFT w_buffer LEFT BY 255 PLACES.
IF w_buffer IS INITIAL.
EXIT.
ENDIF.
ENDDO.
REFRESH: i_reclist,
i_objtxt,
i_objbin,
i_objpack.
CLEAR w_objhead.
Object with PDF.
i_objbin[] = i_record[].
DESCRIBE TABLE i_objbin LINES w_lines_bin.
Document information.
w_doc_chng-obj_name = 'Smartform'.
w_doc_chng-expiry_dat = sy-datum + 10.
CONCATENATE 'Delivery' 'Note'
INTO w_doc_chng-obj_descr.
*w_doc_chng-obj_descr = 'Smart form output'.
w_doc_chng-sensitivty = 'F'. "Functional object
w_doc_chng-doc_size = w_lines_txt * 255.
Pack to main body as RAW.
Obj. to be transported not in binary form
CLEAR i_objpack-transf_bin.
Start line of object header in transport packet
i_objpack-head_start = 1.
Number of lines of an object header in object packet
i_objpack-head_num = 0.
Start line of object contents in an object packet
i_objpack-body_start = 1.
Number of lines of the object contents in an object packet
i_objpack-body_num = w_lines_txt.
Code for document class
i_objpack-doc_type = 'RAW'.
APPEND i_objpack.
Packing as PDF.
i_objpack-transf_bin = 'X'.
i_objpack-head_start = 1.
i_objpack-head_num = 1.
i_objpack-body_start = 1.
i_objpack-body_num = w_lines_bin.
i_objpack-doc_type = 'PDF'.
i_objpack-obj_name = 'Smartform'.
CONCATENATE 'Delivery' 'Note' '.pdf'
INTO i_objpack-obj_descr.
i_objpack-doc_size = w_lines_bin * 255.
APPEND i_objpack.
Document information.
CLEAR i_reclist.
e-mail receivers.
i_reclist-receiver = w_email.
i_reclist-express = 'X'.
i_reclist-rec_type = 'U'. "Internet address
APPEND i_reclist.
sending mail.
CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
EXPORTING
document_data = w_doc_chng
put_in_outbox = 'X'
TABLES
packing_list = i_objpack
object_header = w_objhead
contents_bin = i_objbin
contents_txt = i_objtxt
receivers = i_reclist
EXCEPTIONS
too_many_receivers = 1
document_not_sent = 2
document_type_not_exist = 3
operation_no_authorization = 4
parameter_error = 5
x_error = 6
enqueue_error = 7
OTHERS = 8.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
ENDIF.
ENDFORM. "processing -
Automatic Row Processing?
Hi,
I have a requirement to create forms that insert into multiple tables and returns items from multiple tables. What are my options? Can I still use automatic row processing and fetching?
Thanks in advance.create multiple regiions embedded with different table
-
Automatic row processing insert fail
Hi all,
Application Express 3.2.1.00.11
Oracle Database 10g Release 10.2.0.3.0 - 64bit Production
I am running into a problem where my automatic row processing will update and delete records but will not insert. I get the following error.
ORA-44003: invalid SQL nameI disabled all triggers and added the appropriate fields to my form and manually entered correct data and am still having the issue. I can run a trace but only the dba has access to retrieve the file and he is gone. Any suggestions on where to start? i checked debug mode and it is definitely hanging on the ARP.
Cheers,
Tyson JougletAll,
Finally fixed it!!! So if you experience this problem, double check all of your item sources. I was upgrading a date column to a timezone column and subsecuently made it three different items. Long story less long, I left the original date item on the form and deleted the source column name but i forgot to change the item source from database column to something else. This will not effect how apex deletes or updates a record but it will not allow you to insert a new record. I know this is a user error, but maybe this could be added as a validation?
Cheers,
Tyson Jouglet -
Automatic Payment Process through Schedule Manager
Dear Experts,
I am an infant in SAP..just started my foot steps by formally taking up a sap course from siemens. I would like to get a complete configuration details for the scheduling automatic payment process. The scenario I could think of is a weekly payment run for a company code at 7.30 pm..Please help.
Thanks,
AspirantHi,
In FBZP you need to do the config. for the automatic payment.
1All co codes:fill the paying co code.
2)Paying co codes :give Min and Max amount for payment and form payment advise.
3)Payment methods in country :In country creat the p.method
eg: for cheque :pay method 'c',select outgoing payments,check and give document type for paymentand under apyment medium program 'rffous_c'
4)payment methods in co code:give the same pay method (c)in your co code here and amt lmt and form for payment medium
5)bank determination:give the bank details i.e crcy,paymethod,house bank,account id,bank sub account,available amts etc.
6)house banks:give the detials of your bank account.
there will be no schedule job for f110.
Further you need to configure check lot,house banks for this.
regards -
Automate the process of making interactive PDFs
Hi
We have quite a large number static PDF forms and would like to convert them into interactive form (with text box, radio, form fields, etc...) so our users can fill in the forms. However some of our forms are big e.g. 16 pages with repetitive fields. At the moment we're using Lifecycle designer ES 8.2 to manually put the form fields in, a simple form could take us 1 hour to do.
I was just wondering if there's a way to somehow automate this process so it's less manual, otherwise our wish to become interactive will nearly be impossible.
If not possible with lifecyle, is there another product that could help?
Thanks in advance.Hi,
Because it sounds like you are placing fields over an existing form layout, it is unlikely that you need 'dynamic' behaviour like fields becoming hidden/visible or creating more instances of objects.
If this is the case then you could use Acrobat Standard or Acrobat Pro to add fields to the layout.
When you open your existing form layout in Acrobat, go to the Forms menu and click "Start forms wizard". This will examine the layout and make a first stab at placing fields on the layout. So for example, if it comes across a square shape it will place a checkbox. If it sees a series of circles it will places a radio button exclusion group.
You may need to work on the objects, but it would be a good start.
This would be an AcroForm (eg developed solely in Acrobat) and would not involve LC Designer at all. You can script objects for calculations and other behaviour.
LC Designer does not have the same ability to automatically place objects over a layout.
Hope that helps,
Niall -
Automatic Row Processing - Preset a value with value from other page
Hi everybody,
I have created a form on a table with report. I added a dropdown field to a sidebar region on the first page the groups and selects only a couple of these entries. (Think: only people for the department selected in the drop down field). Now when I click on the normal create button the id field for the department should be filled automatically with the value from the page before, where something was already selected in the drop down field. The id field is a hidden field on the actual create page. Maybe it is not working because the field is linked to the database column to make the automatic row processing work or something. I tried computions on both pages and setting the values. Nothing seems to do the trick.
Any help would be greatly appreciated.
Thanks,
HenrikHi,
these are the values I currently see:
108 14 P14_SELECTEDSS Display as Text (escape special characters, does not save state) No
108 14 P14_CHARACTERISTIC_ID Hidden and Protected Reset to Null No
108 14 P14_SHAREDSERVICE_ID Text Field 30 Inserted No
108 14 P14_CAPTION Text Field No
108 14 P14_CATEGORY_ID Select List No
108 14 P14_WEIGHING Text Field No
108 14 P14_DESCRIPTION Textarea No
I also have to say that I deleted the computations I created earlier again cause they did not work and I had the same values for these variables. I am trying to (pre)set P14_SHAREDSEVICE_ID to P13_SELSS when I click the create button on page 13.
Thanks again,
Henrik -
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
SHYHi 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 updating my primary key
Hi all!
In Apex 3.2, I've got an Interactive report with a DML form on a table. My table has a primary key which use a sequence (trigger based). When I created my forms, I specified that I wanted to use an existing trigger as the source type of the primary key.
When I try to create a record, it work. If I try to create a new record and save, my trigger give me an error message because the automatic row processing is trying to update the primary key too. (My trigger on the update specify that the primary key should not be updated).
So my question is : How can I make the automatic row processing update everything but the primary key ? (I noticed that I could have asked APEX to use my SEQUENCE directly instead of the trigger (in the creation Wizard). But I dont know how to change this now that my form is created.)
Is there a source type that I can change in my primary key item ?
Note : My primary key item (id_emp) is protected and hidden. If I display it as "Display only", the update works... But I dont need to see id_emp on my form.OK,
From your first post, it sounds as though the process is trying to perform an INSERT rather than an UPDATE. It is, therefore, trying to create a new record using a primary key that already exists on the table.
If that is the case, then we need to go through the points along that route:
1 - when you load a record into the page, the primary key page item should be given a value. So, firstly, check the link is populating the correct page item. And then, when the page has loaded, click the Session button on the Developer's toolbar at the bottom of the screen and check that the value is there
2 - when the page loads, one, and only one, page item should have the primary key value. This should be P3_NO_EMPLOYE*. Check other page items to make sure that their source is not NO_EMPLOYE. Again, check with using the Session button to see if the value appears anywhere else on the page
3 - when the page loads, the "SAVE" button should become visible. Check that this is conditional on P3_NO_EMPLOYE being NOT NULL
4 - there should be one, and only one, button that triggers the SAVE action. Check that there are no other buttons that either (A) are called SAVE or (B) trigger the INSERT SQL database action
5 - when the SAVE button is clicked, the "Process Row of..." process should be triggered and, because the button is SAVE and, therefore, sends "SAVE" as the REQUEST value, the process identifies this request as an Update database action. Check that you have Update ticked on the process and that you only have one process that can perform the update
6 - it is possible to change the value of the Request after a button has been clicked, so check that you have no computations or processes that run before the "Process Row of..." process
Andy -
Automatic row processing in a validation
Hi,
I have a form on a table (page11) with one process for automatic row processing and I have the buttons Submit and Create.
I have another button f.e. BUTTON_NEW. I have a validation (function returning error text) with "BUTTON_NEW" as When-Button-pressed-Condition. In the validation I did an Insert into another table.
I changed values of items on Page11 and don't press Submit. And then I press "BUTTON_NEW". The validation on BUTTON_NEW works fine. But the changed values are lost. Is there a possibility for an automatic "Submit" or "Create" when BUTTON_NEW is pressed?
Thanks, DanielaHi,
these are the values I currently see:
108 14 P14_SELECTEDSS Display as Text (escape special characters, does not save state) No
108 14 P14_CHARACTERISTIC_ID Hidden and Protected Reset to Null No
108 14 P14_SHAREDSERVICE_ID Text Field 30 Inserted No
108 14 P14_CAPTION Text Field No
108 14 P14_CATEGORY_ID Select List No
108 14 P14_WEIGHING Text Field No
108 14 P14_DESCRIPTION Textarea No
I also have to say that I deleted the computations I created earlier again cause they did not work and I had the same values for these variables. I am trying to (pre)set P14_SHAREDSEVICE_ID to P13_SELSS when I click the create button on page 13.
Thanks again,
Henrik -
Automatic Row Processing BUG?
Unfortunately it turns out that one can not create report with form through the wizard if the target table has a primary key that should be updatable. Is that true?
I have a table with only 2 columns 1-code of some type, 2-description. Column 1 is primary key.
I get the following error when I try to change tha value of column 1:
ORA-20001: Error in DML: p_rowid=ass, p_alt_rowid=CURRENCYCODE, p_rowid2=, p_alt_rowid2=. ORA-01403: no data found
I searched through the forum but noone explained why this happens. And the only thing that I think is the reason for this is that Automatic Row Processing does not remember the previous value of the primary key column so its embedded SET statement only has the new value.
Is this a bug?
I don't want to create different processes to update, delete, create. This however involves using temp hidden field to hold the original value of my first column.
Would You fix this to be done automatically in HTMLDB when using the wizard with Automatic Row Processing?
My version is: 1.6.0.00.87
ThanksWell, actually the wizard succeded but it did not do what I needed: my table is with one column (primary key) and another column (varchar). The wizard asked me for my primary key column and I pointed it, but after it secceeded and I ran the form, the field was hidden. But I wanted it to be avalable for entering/editing so I changed it to a text box type. Does that help?
And another thing what happens if I use the wizzard on a table with to columns which define a composite primary key. when i point them on the relevant page, the next page of the wizzard asks me to choose columns, but there aren't any more because it appears to hide my primary key fields. In this case i really can not use the usard for helping me with automatic processing. This and the previous case I believe are if not bugs then at least "lacks" of the wizzard. -
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,
SinanHi,
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
Maybe you are looking for
-
This is an old version of CS2 but my old computer died and I would like to be able to use the CS2 on my new computer. My serial number and activation number are not accepted and need an authorization code. Thank You!
-
How to publish a report from Discoverer to Oracle App. Server
Hi, I am just getting into this. I glanced through admin & desktop user guides(10g Release 2 (10.1.2.1)) for information on how to publish the end report developed using discoverer desktop onto Oracle Application server? Do anyone of you know which t
-
Photos sent to file on desktop when importing from memory card
The photos sent to a file when importing from a memory card appear in the file as Adobe documents and cannot be opened. If I try to open a message appears 'Adobe Reader cannot open this document as it is not a supported file/ What has gone wrong?
-
I have created a custom database portlet using Portal 3.0.9.8.3 and have registered the same to portal. Now I have added customizations (personalization) to save user preferences. However if I just compile the portlet code none of the preference path
-
Systran widget not working in OSX 10.9.5
Systran widget not working in OSX 10.9.5.