If you have applied the bundles anytime using CA and with "Apply Application Updates" option, you might have seen that in the end of each bundle, CA do an additional step: Update Package Prerequisites. In the end, CA runs a script "prereqs_i.dms" to update the DB about the prerequisite info if you use "Apply Application Updates" option.
The Update Package Prequisites is a data mover script that is correctly run at the end of the Apply process. It typically looks like this:
Delete from Psprojectdep where projectname = 'PRJnnnnnn';
INSERT INTO PSPROJECTDEP VALUES (PRJnnnnnn,'nnnnnn');
where nnnnnn is your Bundle ID/Update ID. Remember, if you are applying multilingual bundle (for unicode database), then in inset statement, first value precedes with ML, but second value will not. For example, if you are applying Bundle '12345', Delete and insert statement would be like:DELETE FROM PSPROJECTDEP WHERE PROJECTNAME=PRJxxxxxxML
INSERT INTO PSPROJECTDEP VALUES (PRJxxxxxxML,'xxxxxx');
It is basically removing any dependence for this project from the Dependence table. This is a type of clean up.
During the job to apply the change package, the Apply Wizard will check the manifest file located within the Change Package. The manifest contains all of the Pre and Post Requisite information for the particular Change Package that is being applied
The manifest.xml is in each change package zip file.