21.06.2007, 14:33 | #1 |
Участник
|
ОС - какова роль полей AssetToFromRecId_RU
какова роль полей LJT AssetToFromRecId_RU, AssetCanDisposal_RU и каков смысл пропихивания ...RecId_RU в RAssetTrans.StornoRecId (класс RAssetPost_Depreciation) - ведь проводка не сторнирована ещё?
Функционал вроде стандартный 3.0 SP3 - местами встречается // VALU, FixedAssets |
|
22.06.2007, 10:49 | #2 |
Мрачный тип
|
AssetCanDisposal_RU - флаг создания из данной строки журнала ОС строки в RAssetTrans. Нужен в случае операций ОС , порождающих N строк в ГК и 1 строку в RAssetTrans(как правило в рамках ваучера+даты установлен только у одной записи, при удалении оной переставляется на другую с таким же ваучером и датой).
AssetToFromRecId_RU заполняется в случае сторно операции, в противном случае он нулевой, поэтому в строке метода initFromLedgerJournalTrans класса RAssetPost_Depreciation строка X++: rAssetTrans.StornoRecId = ledgerJournalTrans.AssetToFromRecId_RU; Все это - последствия (прямо говоря - затычки) однажды неверно (IMHO, но готов подискутировать) принятого решения в архитектуре российского модуля ОС, а именно привязывать операции ОС к общему журналу (и загаживать без того уже загаженный) |
|
22.06.2007, 17:54 | #3 |
Участник
|
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. |
|
Теги |
ax3.0 |
|
Похожие темы | ||||
Тема | Ответов | |||
Сторно ввода в эксплуатацию ОС | 16 | |||
Массовая внутригрупповая продажа/покупка ОС | 0 | |||
"Ловля" проводок в ГК по ОС в модуле ОС | 17 | |||
Закупка ОС | 1 | |||
Проблема с групповым приемом ОС | 0 |
|