I have created a three page SharePoint list form that has all but three fields as required. However, when I try to submit the the form with some fields being empty, it does not alert the user that the field is empty and the form is still submitted. Currently, I have a save button at the end of the form with the following code used OnSelect:
Patch('Contingent Worker Onboarding',Defaults('Contingent Worker Onboarding'),CWInfo_Form.Updates,JobInfo_Form.Updates,OtherCompany_Form.Updates)Ideally I would like for it to set off the Error notifications that are trigged by default when using OnSubmit as shown below. Right now it I can only get this to work using the default Save button in SharePoint and it only works for the first page.

I've tried searching online but I cannot find any good examples/best practices on how to accomplish this efficiently. Everything I found shows how to use Patch on a Multi-page form but not how to manage validations. I also, have the following questions:
1. Would it be better to validate the fields after the entire form is filled out? Or would it be best to validate these fields when they click on the next button before they go to the next page?
2. Since my fields are required when I use Patch should I explicitly add every field in order for the validation to work or should continue to use what I am using (see code above).
3. I noticed when I use my custom save button to submit, when the user goes back to view/edit the form all but the first form fields are blank eventhough in the SharePoint list they all have values. How can I fix this?
Here are screenshot of my form for more information:
All the required fields are set on the List level and on the PowerApps form

SharePoint Integration Settings.

First Page of the Form
Screen: CWInfo
Form: CWInfo_Form
Next Button OnSelect
NewForm(JobInfo_Form); Navigate(JobInfo,ScreenTransition.Fade)
Second Page of Form
Screen: JobInfo
Form: JobInfo_Form

Next Button OnSelect
NewForm(OtherCompany_Form); Navigate OtherCompany,ScreenTransition.Fade)
Third Page of Form
Screen: OtherCompany
Form: OtherCompany_Form
Save Button (Same as Above):
Patch('Contingent Worker Onboarding',Defaults('Contingent Worker Onboarding'),CWInfo_Form.Updates,JobInfo_Form.Updates,OtherCompany_Form.Updates)
Any advice would be greatly appreciated!