Is there a way to avoid the general commit of all the opened forms?
Simplest answer is it depends :). As Tomy said one option will be manipulate with sessions using session_mode parameter. For some reasons you don't want to use such method. Using single database session you're unable to selective commit your changes and Forms has nothing to do here. You can try to play with :SYSTEM.FORM_STATUS variable and one of the following triggers: WHEN-WINDOW-ACTIVATED or WHEN-FORM-NAVIGATE to check whatever form has been changed and then you can display some warning message to user, but that's just my thoughts.
I can't understand that we don't have possibility to define savepoints or independent transactions in one session during executionHow should that work?