this can be done on the AOT. if you have permissions to access the AOT, then you can either make the fields mandatory on the table or form data source of the fields you want. other ways contact the system administrator.
go to AOT > Forms > SalesCreateOrder > Datab sources > SalesTable > Fields
then on each of the following fields right click > properties, and set the “Mandatory” property to “yes”:
DlvMode (mode of delivery)
DlvTerm (Delivery terms)
InventSiteId (Site)
the site field can also be mandatory by configuring the Inventory dimension group of the item, checking the site dimension to be mandatory. however this will make it so on all inventory transactions not only sales orders.
as far as i know, you can only configure the “Site” to be mandatory , it’s done in Inventory management > Setup>dimensions>dimension groups. however the user will still be able to create a sales order without selecting a site in the create order form, but the order cannot be posted for picking/packing/invoice unless a site is specified.
and about the delivery term and mode, you can only set up default values for every customer, this way they will automatically load on the form when an order is created for the customer.
the only way to force the user to make selections in those fields before closing the Create order form is through the AOT. if you found another way please share it.