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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 26.02.2010, 17:40   #1  
Владимир Максимов is offline
Владимир Максимов
Участник
КОРУС Консалтинг
 
1,715 / 1204 (44) ++++++++
Регистрация: 13.01.2004
Записей в блоге: 3
Не мучайте "птичку" Простейшее решение выглядит так

PHP код:
set @DtBeg '20091201'
set @DtEnd '20091231'

select sum(itr.CostAmountPosted itr.CostAmountAdjustment
from inventTrans itr with (nolock)
where itr.dateFinancial between @DtBeg and @DtEnd
    
and itr.TRANSTYPE -- Заказ на продажу 
Не нужно больше никаких фильтров и ограничений по той причине, что в тех проводках, которые учитывать не надо себестоимости и коррекции просто не будет.

Но вообще-то, MBurachkov задал правильный вопрос. Что именно подразумевается под термином "себестоимость на дату"? И нужно ли определять себестоимость именно на дату?

Так вот, Вам надо знать, по какой мгновенной (скользящей) себестоимости продавался товар без учета накладных расходов (это значение поля CostAmountPosted) или же сумма по некой усредненной себестоимости товара (это сумма CostAmountPosted и CostAmountAdjustment).

Причем следует учитывать тот факт, что по не закрытому периоду сумм коррекции еще нет и Вы увидите только суммы по скользящей себестоимости плюс накладные расходы.

Если цель - это сравнение с бухгалтерией "на дату", то заранее следует смириться с тем фактом, что с бухгалтерией у Вас НИКОГДА не сойдется. Вне зависимости от выбранного способа расчета. Ну, разве что, Вы будете суммировать напрямую бух.проводки под чутким руководством бухгалтера
За это сообщение автора поблагодарили: Prophetic (1).
Старый 26.02.2010, 18:02   #2  
MBurachkov is offline
MBurachkov
КОРУС Консалтинг
КОРУС Консалтинг
 
23 / 14 (1) ++
Регистрация: 18.12.2001
Адрес: Санкт-Петербург
Цитата:
Сообщение от Владимир Максимов Посмотреть сообщение
Не мучайте "птичку" Простейшее решение выглядит так

PHP код:
set @DtBeg '20091201'
set @DtEnd '20091231'

select sum(itr.CostAmountPosted itr.CostAmountAdjustment
from inventTrans itr with (nolock)
where itr.dateFinancial between @DtBeg and @DtEnd
    
and itr.TRANSTYPE -- Заказ на продажу 
Не нужно больше никаких фильтров и ограничений по той причине, что в тех проводках, которые учитывать не надо себестоимости и коррекции просто не будет.

Но вообще-то, MBurachkov задал правильный вопрос. Что именно подразумевается под термином "себестоимость на дату"? И нужно ли определять себестоимость именно на дату?

Так вот, Вам надо знать, по какой мгновенной (скользящей) себестоимости продавался товар без учета накладных расходов (это значение поля CostAmountPosted) или же сумма по некой усредненной себестоимости товара (это сумма CostAmountPosted и CostAmountAdjustment).

Причем следует учитывать тот факт, что по не закрытому периоду сумм коррекции еще нет и Вы увидите только суммы по скользящей себестоимости плюс накладные расходы.

Если цель - это сравнение с бухгалтерией "на дату", то заранее следует смириться с тем фактом, что с бухгалтерией у Вас НИКОГДА не сойдется. Вне зависимости от выбранного способа расчета. Ну, разве что, Вы будете суммировать напрямую бух.проводки под чутким руководством бухгалтера
Если я правильно понял вопрос - то задача не просто написать запрос на вычисление себестоимости - но и при этом совпасть с конкретными цифрами в уже существующем отчете. А для этого нужно понять, по какому алгоритму существующий отчет вытаскивает данные. Отсюда и куча наводящих вопросов и советов
PS "Чтобы правильно задать вопрос, нужно знать бОльшую часть ответа." (С) Р. Шекли

А почему с б/у не сойдется, если брать данные из settlement??? Они полностью совпадают с проводками в ГК
__________________
Misha Burachkov

Последний раз редактировалось MBurachkov; 26.02.2010 в 18:15.
Старый 26.02.2010, 18:15   #3  
sukhanchik is offline
sukhanchik
Administrator
Аватар для sukhanchik
MCBMSS
Злыдни
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,342 / 3563 (125) ++++++++++
Регистрация: 13.06.2004
Адрес: Москва
Цитата:
Сообщение от Владимир Максимов Посмотреть сообщение
Не нужно больше никаких фильтров и ограничений по той причине, что в тех проводках, которые учитывать не надо себестоимости и коррекции просто не будет.
Долго вдумывался в выделенную мною фразу - но так и не понял - о чем она.

Цитата:
Сообщение от Владимир Максимов Посмотреть сообщение
Что именно подразумевается под термином "себестоимость на дату"? И нужно ли определять себестоимость именно на дату?
Для неискушенного Аксаптой бухгалтера - это стоимость запасов именно на ту дату именно в тот момент. Другое дело - что в Аксапте сведение данных по ГК и запасам в плане себестоимости - вещь нетривиальная и хранит в себе ряд допущений и ограничений.
Цитата:
Сообщение от Владимир Максимов Посмотреть сообщение
Так вот, Вам надо знать, по какой мгновенной (скользящей) себестоимости продавался товар без учета накладных расходов (это значение поля CostAmountPosted) или же сумма по некой усредненной себестоимости товара (это сумма CostAmountPosted и CostAmountAdjustment).
Причем следует учитывать тот факт, что по не закрытому периоду сумм коррекции еще нет и Вы увидите только суммы по скользящей себестоимости плюс накладные расходы.
... которые (накладные расходы) м.б. сделаны вне (позже) рассматриваемого периода.

Цитата:
Сообщение от Владимир Максимов Посмотреть сообщение
Если цель - это сравнение с бухгалтерией "на дату", то заранее следует смириться с тем фактом, что с бухгалтерией у Вас НИКОГДА не сойдется. Вне зависимости от выбранного способа расчета.
Я бы не стал так категорично утверждать.
Если выполнить ряд условий, а именно:
1. Рассматривать только те товары, которые разносятся в ГК (галка Разносить финансовые запасы в группе складских моделей)
2. Рассматривать только те бух счета, на которые падают только складские операции
3. Рассматривать коррекции по складу (CostAmountAdjustment) по InventSettlement
4. Не делать корректировки / накладные расходы спустя более [месяца] периода, в который закрывается склад
5. Рассчитывать стоимость только на конец даты, на которую была проведена корректировка или закрытие склада
6. Рассматривать только операции по финансовой дате в заданном периоде.
(список, возможно, не исчерпывающий - но основные моменты в нем определены)
То суммарное исходящее сальдо по всем складам и товарам из п.1 будет совпадать (при отсутствии косяков в данных) с суммарным исходящим сальдо по бух счетам из п.2.
Грубо говоря - отчет InventTurnover_RU (только если его считать не по физической дате как он есть, а по финансовой и без учета операций Отпущено/Получено) по исходящему сальдо будет совпадать с итоговым сальдо по товарным счетам.

При наложении дополнительных ограничений (без учета журналов переноса или наоборот с их учетом, но тогда с их отражением в ГК) можно и обороты выверить.
__________________
Возможно сделать все. Вопрос времени

Последний раз редактировалось sukhanchik; 26.02.2010 в 18:17.
Старый 26.02.2010, 20:54   #4  
Владимир Максимов is offline
Владимир Максимов
Участник
КОРУС Консалтинг
 
1,715 / 1204 (44) ++++++++
Регистрация: 13.01.2004
Записей в блоге: 3
Насчет "в тех проводках, которые учитывать" - это я к тому, что дополнительные условия, например, по StatusIssue - бессмысленное. Если StatusIssue отличен от 1, то и себестоимости еще нет. Она собственно и проставляется только в момент проведения. Запрос (возможно!) захватит "лишние" проводки, но они не повлияют на результат, поскольку в них еще нет себестоимости.

Почему с бухгалтерией не сойдется никогда? По той причине, что, в общем случае, слишком велико количество условий, которые надо учесть, чтобы "очистить" себестоимость складской проводки до состояния себестоимости в КГ. Причем способ "очистки" крайне громоздкий, как следствие, чрезвычайно медленный.

Как правило, останавливаются на каком-то компромисе. Неких допущениях. Что-то вроде: вот этого у нас никогда не будет, а если будет, учтем вручную. Если действительно "этого" нет, то все сходится. А если "это" появляется, то начинаются долгие и мучительные поиски причин расхождения, поскольку про "допущения" все уже благополучно забыли...
Старый 26.02.2010, 21:04   #5  
sukhanchik is offline
sukhanchik
Administrator
Аватар для sukhanchik
MCBMSS
Злыдни
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,342 / 3563 (125) ++++++++++
Регистрация: 13.06.2004
Адрес: Москва
Цитата:
Сообщение от Владимир Максимов Посмотреть сообщение
Насчет "в тех проводках, которые учитывать" - это я к тому, что дополнительные условия, например, по StatusIssue - бессмысленное. Если StatusIssue отличен от 1, то и себестоимости еще нет.
А... в этом смысле - согласен. Сразу не осознал.

Цитата:
Сообщение от Владимир Максимов Посмотреть сообщение
Почему с бухгалтерией не сойдется никогда? По той причине, что, в общем случае, слишком велико количество условий, которые надо учесть, чтобы "очистить" себестоимость складской проводки до состояния себестоимости в КГ. Причем способ "очистки" крайне громоздкий, как следствие, чрезвычайно медленный.
Как правило, останавливаются на каком-то компромисе. Неких допущениях. Что-то вроде: вот этого у нас никогда не будет, а если будет, учтем вручную. Если действительно "этого" нет, то все сходится. А если "это" появляется, то начинаются долгие и мучительные поиски причин расхождения, поскольку про "допущения" все уже благополучно забыли...
Согласен.
__________________
Возможно сделать все. Вопрос времени
Старый 02.03.2010, 11:51   #6  
Prophetic is offline
Prophetic
Участник
 
113 / 15 (1) ++
Регистрация: 08.12.2009
Всем спасибо за просветление.
Теги
себестоимость

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Denis Fedotenko: Себестоимость и закрытие склада Blog bot DAX: База знаний и проекты 44 29.03.2010 14:54
Зачистка товара. Себестоимость vey DAX: Функционал 17 16.02.2007 10:48
Помогите с SQL запросом malex DAX: Программирование 8 26.07.2005 13:43
Себестоимость проданного товара Hamster DAX: Функционал 3 12.08.2004 16:02
Физическая себестоимость товара Алексей Контев DAX: Функционал 5 22.08.2002 20:18

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

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

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