RE: Batct Post and Email Sales Orders
From the sales order page you can access the "Post batch" function. That can be used to post several sales orders in one batch.

And from the posted sales invoices you can mark several invoices and use the send function. And the invoices will the be sent according to the document sending profile on the customer.

So what i normally would do in a vanilla Business Central is to filter on " No. printer" = 0.
Then i get a list of all invoices that have not been printed or sent via email
Then i will mark them all and use the send function.
Then you can do several customization around this as well. The last thing i did was to use this even:
[EventSubscriber(ObjectType::Codeunit, Codeunit::"Sales-Post", 'OnAfterPostSalesDoc', '', false, false)]
And send the invoice "silent" with out user interaction once the sales document is Posted.