Показать сообщение отдельно
Старый 24.10.2014, 18:37   #10  
Wamr is offline
Wamr
----------------
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
 
1,737 / 858 (32) +++++++
Регистрация: 15.01.2002
Адрес: Москва
Записей в блоге: 7
продолжаем разговор...
Наконец-то добрался еще разок посмотреть на retail.

Если все делать "по уму", то на пустой базе DAX2012R3 нужно нажимать кнопочку "Инициализировать" в форме параметров розничной торговли (может еще где есть "волшебная кнопка?")
Тогда классик RetailConnSeedDataGenerator запустит процесс самогенерации настроек и кода модуля:
RetailConnChannelSchema создаст схемы каналов
в RetailConnSeedDataGenerator.run()
- создадутся стандартные настройки интерфейсов POSов
- розничные отчеты
- настройка Offfline базы
- и т.д.
RetailCDXSeedData, используя RetailCDXSeedData_AX63 как шаблон, создает Задания планировщика(jobs), Подзадания(subJobs), Списки полей переноса
RetailConnCreateUploadTempDBTable::GenerateTempDBTableForJobByJobID('P-0001') создаст для всех подзаданий нужные временные таблицы
RetailCDXCodeGen для схемы канала 'AX 2012 R3' будут созданы классы RetailCDXChannelSpecificData_AX63, RetailCDXXmlDataOutput_AX63
Ну и инкрементная CIL компиляция.


Но мне досталась система в состоянии "Мы поставили retail, но он не работает. Помоги разобраться почему." Видимо, все настройки модуля не генерировались, а переносились с демо-базы. Поэтому таблицы перенеслись, а вот сгенеренный функционал нет.


Цитата:
Сообщение от mazzy Посмотреть сообщение
временных таблиц нет в sys
временные таблицы появляются в usr при включении модуля retail в параметрах.

что за процедура?
напомню, что генерируется: таблица+поля+индексы+2 метода в таблице.
Процедура - кнопка на форме Задание планировщика "Создать промежуточную таблицу....". Она же RetailConnCreateUploadTempDBTable::GenerateTempDBTableForJobByJobID('P-0001')
Да, все правильно, генерятся временные таблицы на основании настроек подзаданий задания 'P-0001'. Одна из таких настроек имя этой временной таблицы, которое в исходном шаблоне (RetailCDXSeedData_AX63) прописана везде как ИмяПостояннойТаблицы+'T'. Однако, если взглянуть в код, то видно, что по умолчанию имя временной таблицы формируется как ИмяПостояннойТаблицы+'X', а такие таблицы в SYS есть. То ли про них забыли, то ли от них отказались я не понял.


Цитата:
Сообщение от mazzy Посмотреть сообщение
какое? что там прямые запросы? дык, в коде написано.
или о чем?
Здесь речь шла о кнопке "Создание классов" в форме Схема канала розничной торговли, и, соответственно о создаваемых классах RetailCDXChannelSpecificData_AX63, RetailCDXXmlDataOutput_AX63. Конечно, я не изучил их внимательно, но "прямые sql-команды. В обход аксаптовского движка" я там не увидел.
За это сообщение автора поблагодарили: -DocSerzh- (1).