When saving a new Contract, the following error displays: "Attempt to de-reference a null object"
The error occurs because the related records Contract_Line_vod and Contract_Partner_vod do not have the same Record Type defined to match the Contract.
When creating custom contract types, you must create corresponding record types for all three objects using matching API names.
For example, to create a Pilot Program custom contract type, you must create a record type named Pilot Program for the Contract_vod, Contract_Line_vod, and Contract_Partner_vod objects.
Additionally, users must be granted Record Type access to the corresponding Record Type on all three objects.
CRM Help Documentation: Contract Architecture