If you set project_accounting_context to Y/Yes, Oracle will verify that the required project information is populated. It will require project_id and task_id in all cases, and if expense, it will require expenditure_type / expenditure_org_id as well. If any required field is missing, you will get error POREQ-20110. You may want to start setting the flag to Y, just as an extra check that the project columns are populated. If you leave project_accounting_context null, it will still allow you to populate the project fields.
If this answers the question, please mark it correct so that the question changes from unanswered to answered.