Child pages
  • [unit configs] Protection against related record deletion in grids
Skip to end of metadata
Go to start of metadata

Imported From: http://groups.google.com/group/in-portal-dev/browse_thread/thread/884988084a8f4b41#

There are two type of database record relations in In-Portal:

  • direct - related record is subitem of main record (relation is defined in unit config);
  • indirect - there is dropdown in one table, where you can select data from other table (no direct relation defined on unit config level).

When main record is deleted, then subitems are deleted as well, so it's not a problem (this is direct relation). For indirect relation this creates a problem.
I propose to define field relations with other tables in unit config. Such relation will be used to check for related data before actual database record is deleted. This feature will preserve data integrity.

Here is proposed data format (in main unit config, which shows data from other unit configs):

'DependentFields' => Array ( 
    'MainFieldA' => 'related-prefixA_FieldNameA', 
    'MainFieldB' => 'related-prefixB_FieldNameB', 
);

For example you can delete payment type, that is used in orders. 

Imported from wiki.

Related Tasks

INP-406 - Getting issue details... STATUS