TasmanianDevil, спасибо тебе большое - наставил на нужные мысли. Вот к чему я пришёл:
1. AssetToFromRecId_RU используется для хранения ссылок как на складскую проводку так и на строку журнала:
1.1) при групповом сторнировании амортизации - ссылка на сторнируемую проводку ОС (RAssetTrans)
1.2) при выбытии (продажа или разборка) - ссылка на исходную строку журнала
Из-за непонимания этих особенностей в код были внесены такие правки (RAssetPost) что ссылка на строку журнала стала переноситься в RAssetTrans.StornoRecId, что неверно.
2. AssetCanDisposal_RU: это признак того что строка журнала (СЖ) была создана из RAssetProposal... -> RAssetJournal.CreateTrans - (как правильно сказать, классов обслуживающих создание операций по ОС ?)
На основании этого признака осуществляется в т.ч и переставление ссылки (RecId основной строки) на другую СЖ с таким же ваучером и датой (при удалении).
3. Invisible ещё один очень полезный признак, используется модулем ОС для сокрытия СЖ созданных по настройке "Главное меню - ОС - Настройки - Профили разноски - Настройки > Выбытие (...)" - таблица "Параметры выбытия" RAssetDisposalParameters, строки с параметром "Не показывать в журнале"
При создании новой операции по ОС классом RAssetProposal... для каждой подходящей модели учета инициируется создание новой СЖ. Далее:
1. Параметр AssetCanDisposal_RU = true практически для всех классов RAssetProposal, включая Выбытие (продажа), а вот для Выбытие (разборка) принимает значения в зависимости от остатков разборки.
2. при вставке СЖ по МУ - отрабатывает метод добавления новых невидимых строк на основании "Параметры выбытия" для СЖ с типом выбытие(продажа) или выбытие(разборка) - LJT.AssetCreateDisposalLines_ru()
3. классы RAssetProposalDisposalSale и DisposalScrap дополнительно выполняют метод добавления новых видимых СЖ - LJT.AssetCreateVisibleLines_ru()
Надо обратить вимание что вставка невидимых строк выполняется на основании типа СЖ а видимых - непосредственно из классов, чем обусловлено не ясно.
Ну и все созданные доп. строки будут иметь ссылку AssetToFromRecId_RU = RecId основной проводки по МУ.
Последний раз редактировалось zinius; 23.06.2007 в 01:17.
|