what is the difference between the two ?
Exit = Application Exit - return to either calling application or redirect to whatever exit url was defined in your application or application link settings.
Cancel = Cancel the Transaction - You are busy editing a record, but decide to discard your changes, you can cancel, This will either keep you in the form application if you are only using a form in form view, or return you to the grid, if you are using a grid/form. No commit happens.
aha, great, so what you say is, that it will also do no COMMIT the transaction ? correct ?
so would it be much harm if I do not use transactional editing and skip the CANCEL button ?
Depending on what database back end you are using. If it supports transactional processing, SC will always use it. This is the safest way.
This is because you PHP back end and the HTML/JS/CSS front end is actually disconnected and require POST/GET (Ajax) to communicate with each other. Skipping transactional processing means that your database can possibly be in a state that could adversely affect your data integrity if for any reason the front end cannot communicate with the back end to complete actions.
But, SC is very forgiving on this, and they are giving us a huge latitude to do what we want. SC is the tool, but we are the architects. So depending on your use case, there are many options open to you, like using a control application in place of a form, handling database transactions on your own, or using a form, letting the form procedure update another table, but you’re using the front end with custom fields to manually update a totally different related table in the OnEvents within the form (Weird scenario, but yes, I have used this to get the job done, especially when using multi uploads).
So, evaluate your use case. We can give a couple of suggestion if you can give a brief description on what you want to accomplish.