Вот рабочий вариант на примере КЗ.
-- заблокировать контракт
Supermag.Documents.LockDoc('CO', Doc_Id);
Supermag.Documents.Changedocstate('CO', Doc_Id, 0, 1); --Заблокирован --> повысить до "Черновик".
..
Supermag.Documents.Changedocstate('CO', Doc_Id, 2, 1); --"Принят" --> снижаем до "Черновик".
-- разблокировать контракт
Supermag.Documents.UnLockDoc('CO', Doc_Id);