Commit differences in Forms? help!

Dicas do Oracle Forms Builder - Blocos, Itens, LOV, Canvas, Triggers, comandos, PLL, d2kwutil, FMB, Alert, menus, etc
Post Reply
bertosro
Rank: Analista Júnior
Rank: Analista Júnior
Posts: 88
Joined: Fri, 18 Aug 2006 11:13 am
Location: São Paulo - SP
Bertosro
MSN / TALK - roberto.fernandes@gmail.com

Hello dear Masters Good evening
Please, can someone know how to explain in a clear way what the difference between the following Commit '' in forms?

Select all

 
do_key('commit_form'); 
FORMS_DDL ('COMMIT'); 
commit_form; 
commit; 
standard.commit;
: -O
bertosro
Rank: Analista Júnior
Rank: Analista Júnior
Posts: 88
Joined: Fri, 18 Aug 2006 11:13 am
Location: São Paulo - SP
Bertosro
MSN / TALK - roberto.fernandes@gmail.com

I performed some tests and I came to the following conclusion:

Select all

do_key('commit_form');        /*Commit Forms(S) Oracle(S)*/ 
FORMS_DDL ('COMMIT');         /*Commit Forms(N) Oracle(S)*/ 
commit_form;                  /*Commit Forms(S) Oracle(S)*/ 
commit;                       /*Commit Forms(S) Oracle(S)*/ 
standard.commit;              /*Commit Forms(N) Oracle(S)*/    
Please comment .....
Thanks.
User avatar
dr_gori
Moderador
Moderador
Posts: 5024
Joined: Mon, 03 May 2004 3:08 pm
Location: Portland, OR USA
Contact:
Thomas F. G

Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered

Come on:

Commit_Form, DO_KEY ('Commit_Form'), Commit
The 3 options do the same thing! This Commit, first makes the information post on the bank and then commits. Example:
* You change information in a base-table block.
* This information is not oracle immediately. Forms only makes a Select for Update on the line, and "Reserve" it on the bench. (No one altered)
* When you perform this Commit, Forms:
(1) - literally sends Update or Insert, etc. to the bank!
(2) - Committates the information. (Releasing the line to another person tb)

Forms_DDL ('Commit') and Standard.commit
is the Commit performed only in the database Oracle.
Example:
* You run a procedure on the bank that changes rows at the base.
* After Standard.commit, only this bank information will be commented, the post will not be done as in the example above. That is, it is as if it were a commit within the procedure and not the forms ...

usually uses only the Commit. In rare cases it is necessary to start only on the bank.

If what I said above is wrong, correct me :-D
bertosro
Rank: Analista Júnior
Rank: Analista Júnior
Posts: 88
Joined: Fri, 18 Aug 2006 11:13 am
Location: São Paulo - SP
Bertosro
MSN / TALK - roberto.fernandes@gmail.com

Hello Thomas F. G. Good morning!
Thanks for the answer.
Regarding the POST command; What exactly do you do?
User avatar
dr_gori
Moderador
Moderador
Posts: 5024
Joined: Mon, 03 May 2004 3:08 pm
Location: Portland, OR USA
Contact:
Thomas F. G

Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered

The post changes in the bank all that the guy is typing / changing the blocks. But the post does not commit! Only the updates do!

If you change something in the block, the forms does not send the information at the same moment to the bank. Only goes at the time of the Commit or the post! :-O
User avatar
Porva
Rank: DBA Sênior
Rank: DBA Sênior
Posts: 342
Joined: Mon, 29 Jan 2007 7:36 am
Location: São Paulo/SP
Rafael S. Nunes
São Paulo/SP

It means that if I do a post I can already do a Select on these data, however, if you do not run the Commit when you leave the screen , this united information is ignored ???
SPECIALIZED
Rank: Programador Pleno
Rank: Programador Pleno
Posts: 40
Joined: Tue, 02 Oct 2007 4:09 pm
Location: São Paulo - SP

After giving the post, you only see the value in the session itself, this is usually used to book a value (record), to use with sequence effect.
Deniskywalker
Rank: Estagiário Sênior
Rank: Estagiário Sênior
Posts: 8
Joined: Tue, 27 Oct 2015 7:12 am

Hello good afternoon.
I had a problem in Form and corrected it by changing the Commit for Standard.commit;
The following:

In the form there was Checbox for the user to score and click a Print button. Beauty! The guy marked more than one checkbox and the thing happened !!! "FRM-40401 at Changes to Save".

This part did insert directly on a table of the bank ... I took the Commit, put the Standard.commit and was that it is a beauty.

Select all

   IF :WIP_DEN_V.IDPRINT = 'S' THEN 
           BEGIN          
             INSERT INTO WIP_002 
                (IDREG 
                ,ORGANIZATION_ID 
                ,WIP_ENTITY_ID 
                ,CREATION_DATE  
                ,CREATED_BY  
                ,LAST_UPDATE_DATE  
                ,LAST_UPDATED_BY 
                ) 
             VALUES 
                (V_IDREG 
                ,:R_WIP_041_V.ORGANIZATION_ID 
                ,:R_WIP_041_V.WIP_ENTITY_ID 
                ,SYSDATE 
                ,FND_GLOBAL.USER_ID 
                ,SYSDATE 
                ,FND_GLOBAL.USER_ID 
                ); 
             standard.commit;  
            -- commit; 
                
             IF V_TITULO IS NULL THEN 
                V_TITULO := :WIP_041_V.NRORDPRO; 
             END IF;
Post Reply
  • Information
  • Who is online

    Users browsing this forum: Bing [Bot] and 13 guests