AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: База знаний и проекты
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 10.03.2005, 12:31   #1  
slava09 is offline
slava09
Участник
Аватар для slava09
MCBMSS
Дети Юза
1C
 
1,642 / 237 (11) ++++++
Регистрация: 06.03.2003
Адрес: Украина, Киев
Изыскания по поводу функциональности поля "Ссылка на лот"
Мы (я и fed), решили выложить на форум свои мысли по поводу использования системой поля "Ссылка на лот" в таблице складских проводок:

1. Моя часть касается процедуры пересчета\закрытия склада, а именно пересчета проводок заказов или закупок созданных на основании контракта.
2. Часть fed'а будет звучать примерно так: "двоякая сущность поля "сылка на лот"

Итак моя часть:

Как известно, данное поле, кроме всего прочего, указывает из какого лота прихода, взять себестоимость для лота расхода. Стандартно такую связь можно указать через процедуру "Маркировка". Данная процедура однозначно сопоставляет лот прихода, лоту расхода записывая в поле "Ссылка на лот" перекрестные ссылки. При пересчете\закрытии склада, себестоимость такой сопоставленной расходной проводки будет равна себестоимости сопоставленной проводки прихода.
В случае когда складские проводки созданны заказом или закупкой сделанными на основании контракта, они содержат ссылку на лот строки исходного контракта. Ссылка эта появляется еще при создании строк и находится на закладке "Прочее" строк заказа\закупки. Оттуда она и подставляется в складские проводки.
Как мы знаем: заказы\закупки с типом контракт не создают складских проводок, поэтому наши "Ссылки на лот" ссылаются на номера лотов не существующих в таблице складских проводок.
Вот на этом моменте закрытие\пересчет склада и спотыкается. Увидев такую проводку, система выбрасывает ее из стандартного механизма сопоставления, и пытается дооценить себестоимость, выбрав ее по ссылке. Но так как ссылка ссылается "в никуда", то естественно ничего не дооценивается и проводка выпадает из списка проводок к сопоставлению:

В классе InventCostItemDim, есть следующие методы:
1. protected void load(InventDim _inventDimCriteria)
2. protected void updateSettleRefItem(ItemId _itemId)

в этих методах вы увидите запросы в которых встречается такое условие:

PHP код:
inventTrans.InventRefTransId  == '' 
или такое:

PHP код:
inventTrans.InventRefTransId  != '' 
но, помимо того что мы выбираем проводки с заполненными или незаполненными InventRefTransId, нам еще следует проверять, имеется ли проводка с таким лотом в InventTrans. Зачем такая проверка, я думаю совершенно очевидно.
При небольшой корректировке этих запросом мы добиваемся правильного пересчета.
Старый 10.03.2005, 12:53   #2  
Maxim Gorbunov is offline
Maxim Gorbunov
Administrator
Соотечественники
Лучший по профессии 2009
 
2,483 / 645 (26) +++++++
Регистрация: 27.11.2001
Адрес: Dubai, UAE
Спасибо. Интересно. Про контракты не знал, так как мало ими пользовался.

А зачем вообще в заказе, созданном на основании контракта, указывать ссылку на лот? Может проще исправить процедуру создания заказа из контракта, чтобы не проставлялась ссылка?
__________________
Not registered yet? Register here!
Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me
Старый 10.03.2005, 13:02   #3  
slava09 is offline
slava09
Участник
Аватар для slava09
MCBMSS
Дети Юза
1C
 
1,642 / 237 (11) ++++++
Регистрация: 06.03.2003
Адрес: Украина, Киев
А вот про это уже расскажет fed, но позже.
Старый 10.03.2005, 19:33   #4  
Firestarter is offline
Firestarter
Участник
 
49 / 10 (1) +
Регистрация: 11.11.2003
Re: Изыскания по поводу функциональности поля "Ссылка на лот"
Цитата:
Изначально опубликовано slava09
Мы (я и fed), решили выложить на форум свои мысли по поводу использования системой поля "Ссылка на лот" в таблице складских проводок:


добавлю еще, что проблема с inventreftransid решалась (и нами с fed :-) )
еще в связи и со следующей проблемой:

это поле стандартно используется (знаю только по 3.0 sp1) и при утверждении заказов / закупок / производств из сводного планирования - там оно имеет смысл сопоставления закупки например с произв. заказом, под который она планируется

в результате получалось, что закрытие склада воспринимало это как маркировку и не корректировало проводки.

Решением было создать другое поле (для целей маркировки)
Старый 11.03.2005, 12:51   #5  
slava09 is offline
slava09
Участник
Аватар для slava09
MCBMSS
Дети Юза
1C
 
1,642 / 237 (11) ++++++
Регистрация: 06.03.2003
Адрес: Украина, Киев
Ага Уважаемый fed, я так понимаю, носится с нами как с детьми
Эту проблему и ее решении он мне уже рассказал.
Ну вот это он и собирался выложить как свою часть...
Только что-то не вылаживает... Наверно занят... Ждем...
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Ошибка при выборе поля "подразделение" на форме Дима DAX: Программирование 5 01.10.2007 11:23
Создание "Ссылка меню" petr DAX: Программирование 5 14.04.2006 14:00
Очистка поля "Ссылка на лот" при пересчете slava09 DAX: Функционал 9 15.02.2005 10:57
Как добавить в addRange условие по "или" на контейнерные поля? Lora DAX: Программирование 9 29.11.2004 13:52
Поля "Автор", "Автор модификации" xconsul DAX: Функционал 1 22.10.2003 09:44

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 23:53.