today I want to write few words about interesting feature of Acumatica: column DeletedDatabaseRecord. As you may know plenty of ERP systems have strategy of holding everything that ever passed through them, and even if user has huge desire to ask ERP system to forget something via deletion of some entity, ERP "pretends" that record was deleted, but leaves it in db.
From this standpoint Acumatica can be exception. It allows to preserve records that lived inside of it. Allows mean can preserve or not preserve.
How programmer can achieve this kind of behaviour? Via column DeletedDatabaseRecord.
If you want Acumatica to hold some kind of entities in db, just add this column to your table and don't add it to DAC class and you'll have all set up. In case of delete request Acumatica will leave that record in db, but user will not be able to see recrods that he deleted.
Few more reminders about DeletedDatabaseRecord column.
DeletedDatabaseRecord should be of type bit, not null and by default 0 ( which says no, record wasn't deleted ). As soon as user will press on delete button instead of sql delete command will be executed sql update command. And user will get a feeling that he deleted record while in reality he just hide record from other users.