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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 05.06.2018, 12:42   #1  
DSPIC is offline
DSPIC
Боец
 
1,077 / 1243 (44) ++++++++
Регистрация: 11.04.2008
D365 Retail SDK - Get InventOnhand
Коллеги, кто может в курсе, как получить InventOnHand для Item+Dim из CRT DB? Т.е. зачитать нужно не из HQ, а из channel DB.
Старый 06.06.2018, 12:51   #2  
Alex_KD is offline
Alex_KD
Участник
AxAssist
MCBMSS
Соотечественники
 
522 / 362 (14) ++++++
Регистрация: 06.07.2006
Адрес: Melbourne, Down Under
Кроме как вызов RTS других методов не знаю.
В channel DB у вас даже таблички InventSum нету.

Так же, реальный сток у вас будет только после того как Post Inventory отработает или Post Statements (или допиливайте RTS метод). Возможно это поменялось в последней версии тк как они переписали end of day.
__________________
AxAssist 2012 - Productivity Tool for Dynamics AX 2012/2009/4.0/3.0
Старый 06.06.2018, 13:31   #3  
DSPIC is offline
DSPIC
Боец
 
1,077 / 1243 (44) ++++++++
Регистрация: 11.04.2008
RTS не подойдет, т.к. он вернет QTY из HQ, а нужно именно из сhannel DB, чтобы конкретному Store не продать больше чем есть у него в наличии.
В CRT есть несколько похожих сервисов, к примеру ProductAvailabilityService, но он мне возвращают пустую колекцию for my particular ItemId.
Вдобавлк, анализируя ctr.*, ax.* tables in channel DB я даже не могу понять, где хранится инфа по InventAvailability. Хороший кандидат - [AxDB].[ax].[RETAILINVENTAVAILABILITY], но в ней нет записей по моему ItemId, несмотря на возможность добавления в cart на cPOS, его успешной продаже и последующей PostStatement в HQ, его on-hand успешно вычитается.
С другой стороны, RETAILINVENTAVAILABILITY содержит другие ItemIds со ссылками на [RETAILINVENTTABLE], записей для которых в последней отсутсвуют. В общем что-то я in stuck...
Старый 06.06.2018, 14:16   #4  
Ivanhoe is offline
Ivanhoe
Участник
Аватар для Ivanhoe
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
4,143 / 2156 (80) +++++++++
Регистрация: 29.09.2005
Адрес: Санкт-Петербург
По общей логике ритейла, если что-то принесли на кассу, его не может "не быть" - вы должны продать

В текущей реализации, как мне кажется, можно только проводить предварительное списание со склада магазина в Аксапте - Post inventory и через RTS проверять наличие на складе магазина.

Видел примеры реализации InventSum и остального "бэка" прямо на POS в локальной СУБД. По факту долго потом переписывали это решение, т.к. касса буквально минутами проводила чеки!
__________________
Ivanhoe as is..
Старый 06.06.2018, 14:32   #5  
DSPIC is offline
DSPIC
Боец
 
1,077 / 1243 (44) ++++++++
Регистрация: 11.04.2008
Цитата:
Сообщение от Ivanhoe Посмотреть сообщение
По общей логике ритейла, если что-то принесли на кассу, его не может "не быть" - вы должны продать
Такого быть не должно, но технически это никак не проверяется, в частности - s\n: мало того что не проверяется On-Hand, так еще можно вбить несуществующий s\n.

Цитата:
Сообщение от Ivanhoe Посмотреть сообщение
В текущей реализации, как мне кажется, можно только проводить предварительное списание со склада магазина в Аксапте - Post inventory и через RTS проверять наличие на складе магазина.
RTS - это сервис в аксапте, т.е. им можно проверить наличие только в HQ, насколько я понимаю, которое всегда будет запаздывать, т.к. обновляется только после синка с Channel DB + Post Statement

Цитата:
Сообщение от Ivanhoe Посмотреть сообщение
Видел примеры реализации InventSum и остального "бэка" прямо на POS в локальной СУБД. По факту долго потом переписывали это решение, т.к. касса буквально минутами проводила чеки!
Разве у POS есть локальная СУБД? Где она лежит?
(не бейте, если глупость спросил, Retail пока black box для меня)
Старый 06.06.2018, 14:36   #6  
Ivanhoe is offline
Ivanhoe
Участник
Аватар для Ivanhoe
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
4,143 / 2156 (80) +++++++++
Регистрация: 29.09.2005
Адрес: Санкт-Петербург
Цитата:
Сообщение от DSPIC Посмотреть сообщение
Такого быть не должно, но технически это никак не проверяется, в частности - s\n: мало того что не проверяется On-Hand, так еще можно вбить несуществующий s\n.
Что значит "не должно"? Реализован какой-то бизнес кейс. О других не подумали. На форумах можно почитать много историй про учет партий и s\n в POS, что-то даже по желанию трудящихся в стандарте меняли.

Цитата:
Сообщение от DSPIC Посмотреть сообщение
RTS - это сервис в аксапте, т.е. им можно проверить наличие только в HQ, насколько я понимаю, которое всегда будет запаздывать, т.к. обновляется только после синка с Channel DB + Post Statement
Да, я об этом и написал, только кроме Post statement есть промежуточный Post inventory - чтобы обновить склад, но пока не делать фин. проводки.

Цитата:
Сообщение от DSPIC Посмотреть сообщение
Разве у POS есть локальная СУБД? Где она лежит?
(не бейте, если глупость спросил, Retail пока black box для меня)
Я про channel DB - она же локальная для магазина. Ну и совсем локальная для POS - offline db.
__________________
Ivanhoe as is..
Старый 06.06.2018, 14:40   #7  
Ivanhoe is offline
Ivanhoe
Участник
Аватар для Ivanhoe
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
4,143 / 2156 (80) +++++++++
Регистрация: 29.09.2005
Адрес: Санкт-Петербург
Вот обсуждение по теме: AX2012 R2: Разноска журнала операций и Номер партии
Но мне кажется, что-то было и более новое, надо искать.
__________________
Ivanhoe as is..
Старый 06.06.2018, 14:44   #8  
Ivanhoe is offline
Ivanhoe
Участник
Аватар для Ivanhoe
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
4,143 / 2156 (80) +++++++++
Регистрация: 29.09.2005
Адрес: Санкт-Петербург
Еще вот про "новый способ" учета серийных номеров: https://blogs.msdn.microsoft.com/dyn...ynamics-ax-r3/

Я так понял в POS именно он и работает - можно запросить номер, но он действительно не проверяется и пишется "только для истории".
__________________
Ivanhoe as is..
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
kurthatlevik: First Aid Kit for Dynamics 365 for Retail; A messy blog post Blog bot DAX Blogs 0 10.05.2018 17:11
kurthatlevik: New Microsoft Dynamics AX – A guide for using retail sales prices and discounts Blog bot DAX Blogs 0 01.12.2015 18:12
axsa: Retail Extensibility in Dynamics AX 2012 R3 CU8 (CRT, RetailServer, MPOS) Part 1 Blog bot DAX Blogs 0 19.02.2015 06:14
DAX: Powerful, new omni-channel retail capabilities – get started today! Blog bot DAX Blogs 0 19.09.2014 04:48
axinthefield: Dynamics Ax 2009 Retail Error Messages & Possible resolutions Blog bot DAX Blogs 0 23.05.2012 11:11
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

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

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