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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 18.07.2006, 08:26   #1  
sparur is offline
sparur
Участник
 
334 / 25 (1) +++
Регистрация: 19.05.2006
И снова про номерные серии... правда немного глубже...
Интересует собственно такой механизм как группа номерных серий, что он из себя представляет и как с ним работать?
Задался этим вопросом по простой причине: сейчас стоит задача привязать к каждой номенклатурной группе свою номерную серию (чтоб потом использовать это дело при отслеживании ItemID в номенклатурной единице).
Так вот хотелось бы собственно узнать и понять поможет ли мне этот механизм чем-нибудь в данной задаче или все таки придется для каждой номенкл. группы делать "стандартный" механизм создания номерной серии, столько раз описанный в различных статьях и темах форума...
Старый 18.07.2006, 09:09   #2  
Roman777 is offline
Roman777
NavAx
Аватар для Roman777
NavAx Club
 
320 / 64 (3) ++++
Регистрация: 10.02.2005
Адрес: г. Москва
Данный механизм поможет в решении данной задачи:
1. Настройте необходимые группы номерных серий
2. Добавьте привязку группы номерных серий к номенклатурной группе
3. Модифицируйте форму InventTable так, чтобы номенклатурная группа инициализировалась автоматически (поможет также вариант с шаблонами)
4. Модифицируйте класс NumberSeqFormHandler (переопределите специально для данной формы) так, чтобы id номенклатуры создавался соответственно привязанной к ном. группе группы номерных серий.
Старый 18.07.2006, 09:33   #3  
sparur is offline
sparur
Участник
 
334 / 25 (1) +++
Регистрация: 19.05.2006
Цитата:
Сообщение от Roman777
Данный механизм поможет в решении данной задачи:
1. Настройте необходимые группы номерных серий
2. Добавьте привязку группы номерных серий к номенклатурной группе
3. Модифицируйте форму InventTable так, чтобы номенклатурная группа инициализировалась автоматически (поможет также вариант с шаблонами)
4. Модифицируйте класс NumberSeqFormHandler (переопределите специально для данной формы) так, чтобы id номенклатуры создавался соответственно привязанной к ном. группе группы номерных серий.
это радует что поможет...только вот можно поподробней по всем пунктам ??
надо ли для каждой ном.группы создавать свой ExtendedType, править метод loadModule класса NumberSeqReference_Inventory и все остальное...
или как то можно создать одну группу номерных серий и к ней каким-то образом привязывать ВСЕ номенкл. группы...
Старый 18.07.2006, 09:50   #4  
Roman777 is offline
Roman777
NavAx
Аватар для Roman777
NavAx Club
 
320 / 64 (3) ++++
Регистрация: 10.02.2005
Адрес: г. Москва
Вообще-то я имел ввиду вариант, когда для каждой номенклатурной группы создается и настраивается своя группа номерных серий, в этом случае не нужно создавать никаких ExtendedType и править NumberSeqReference_Inventory.
Но если хотите обойтись только одной группой номерных серий... думаю по сравнению с предложенной это задача сложнее и по сути неправильная (IMHO).
Старый 18.07.2006, 10:19   #5  
sparur is offline
sparur
Участник
 
334 / 25 (1) +++
Регистрация: 19.05.2006
Цитата:
Сообщение от Roman777
Вообще-то я имел ввиду вариант, когда для каждой номенклатурной группы создается и настраивается своя группа номерных серий, в этом случае не нужно создавать никаких ExtendedType и править NumberSeqReference_Inventory.
Но если хотите обойтись только одной группой номерных серий... думаю по сравнению с предложенной это задача сложнее и по сути неправильная (IMHO).
мне то как раз и неохота заморачиваться с этим(созданием доп объектов, множественная дописка классов и т..д.), я просто точно не знаю как работает этот механизм с группами номерных серий...(собственно хотел и выяснить здесь это). В моем понимании это выглядит след образом:
Каким то образом создается целая группа номерных серий, в которую потом затем включается каждая в отдельности ном. группа и у каждой будет СВОЯ номерная серия... Наверное я себе что-то не так представляю...вот и хочу выяснить что да как и с чего начать...
Конечно можно было тупо для каждой ном. группы создавать свою отдельную серию (путем создания ExtendedType и всего прочего), но по-моему это нецелесообразно делать, когда есть механизм групп номерных серий...
Старый 18.07.2006, 10:44   #6  
sparur is offline
sparur
Участник
 
334 / 25 (1) +++
Регистрация: 19.05.2006
ну что никто мне не пояснит сути??
Старый 18.07.2006, 11:04   #7  
Roman777 is offline
Roman777
NavAx
Аватар для Roman777
NavAx Club
 
320 / 64 (3) ++++
Регистрация: 10.02.2005
Адрес: г. Москва
Можно объяснить следующиими простыми словами:
Есть в аксапте такие сущности:
1. Серии документов - грубо говоря это счетчики определенного формата, хранящие минимальное, следующее незанятое и максимальное значения ключа.
2. Ссылки на серии - у каждого модуля аксапты определяются контроллируемые значения ключа (как раз в названной Вами NumberSeqReference_Inventory, например)
Эти сущности связываются. В параметрах каждого модуля аксапты это делается на закладке "Номерные серии", эту настройку также можно назвать "группой номерных серий по умолчанию". Т.е. именно эта настройка используется для связки ссылки и номерной серии в случае, если не указана альтернативная связка, т.е. группа номерных серий. Это можно проследить в функциональности выписки документов в закупках / заказах, когда в настройках закупки / заказа указывается группа номерных серий.
Старый 18.07.2006, 11:16   #8  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от sparur
ну что никто мне не пояснит сути??
http://axapta.mazzy.ru/lib/numbersequence/
http://axapta.mazzy.ru/lib/numbersequence_using/
http://erpkb.com/Axapta/NomernyeSerii

см. также:
http://axapta.mazzy.ru/lib/numbersequenceformat/
За и против използувание суфикс/префикс в номерные серии
__________________
полезное на axForum, github, vk, coub.
За это сообщение автора поблагодарили: alex55 (1).
Старый 18.07.2006, 11:26   #9  
sparur is offline
sparur
Участник
 
334 / 25 (1) +++
Регистрация: 19.05.2006
Цитата:
Сообщение от Roman777
Можно объяснить следующиими простыми словами:
Есть в аксапте такие сущности:
1. Серии документов - грубо говоря это счетчики определенного формата, хранящие минимальное, следующее незанятое и максимальное значения ключа.
2. Ссылки на серии - у каждого модуля аксапты определяются контроллируемые значения ключа (как раз в названной Вами NumberSeqReference_Inventory, например)
Эти сущности связываются. В параметрах каждого модуля аксапты это делается на закладке "Номерные серии", эту настройку также можно назвать "группой номерных серий по умолчанию". Т.е. именно эта настройка используется для связки ссылки и номерной серии в случае, если не указана альтернативная связка, т.е. группа номерных серий. Это можно проследить в функциональности выписки документов в закупках / заказах, когда в настройках закупки / заказа указывается группа номерных серий.
правильно ли я понял что если я создам всего одну номерную серию - ссылку на серию (строку в таблице NumberSequenceReference), грубо говоря для всех номенклатурных групп, задам ей свойство groupEnabled = true (в методе LoadModule() класса NumberSeqReference_Inventory) и ВСЁ! и потом просто для каждой номенклатурной группы я могу задать свою серию (по нажатию кнопки группа в форме InventParameters закладка номерные серии) и все настройки (из таблицы Серии документов), связанные с этой новой ссылкой будут автоматически применимы для всех элементов что я задал на форме InventSequenceGroup (формат, начальное, конечное значение и др.)

Если так, то вопрос останется только в том как отслеживать именно ту номерную серию для нужной номенкл. группы...
Старый 18.07.2006, 11:30   #10  
sparur is offline
sparur
Участник
 
334 / 25 (1) +++
Регистрация: 19.05.2006
все это уже смотрел, но нигде там не нашел про группы номерных серий и как это работает...Как создать свою номерную серию я знаю, но в данной задаче я надеюсь можно как то решить вопрос по другому, а не тупо создавать свою номерную серию для каждой номенкл. группы, так как это описано напрмер в
http://erpkb.com/Axapta/NomernyeSerii
неохота, все это делать (создавать новый ExtendedType для каждой номенкл. группы, править класс в зависимости от группы и т.п.) если вдруг это можно решить боллее простым способом. вот и создал тему, для того чтобы понять можно ли это решить как-нибудь попроще и поинтереснее, чем тупое дублирование одних и тех же шагов...
Старый 18.07.2006, 11:34   #11  
Roman777 is offline
Roman777
NavAx
Аватар для Roman777
NavAx Club
 
320 / 64 (3) ++++
Регистрация: 10.02.2005
Адрес: г. Москва
Цитата:
правильно ли я понял что если я создам всего одну номерную серию - ссылку на серию (строку в таблице NumberSequenceReference), грубо говоря для всех номенклатурных групп, задам ей свойство groupEnabled = true (в методе LoadModule() класса NumberSeqReference_Inventory) и ВСЁ! и потом просто для каждой номенклатурной группы я могу задать свою серию (по нажатию кнопки группа в форме InventParameters закладка номерные серии) и все настройки (из таблицы Серии документов), связанные с этой новой ссылкой будут автоматически применимы для всех элементов что я задал на форме InventSequenceGroup (формат, начальное, конечное значение и др.)
Да. Именно про это я и вел речь в первом своем ответе.
Старый 18.07.2006, 11:37   #12  
sparur is offline
sparur
Участник
 
334 / 25 (1) +++
Регистрация: 19.05.2006
Цитата:
Сообщение от Roman777
Да. Именно про это я и вел речь в первом своем ответе.
вот для этого то мной и создавалась тема , спасибо. Теперь есть направление в котором стоит двигаться...
Только вот сразу и напрашивается вопрос, как же мне отслеживать ту или иную номерную серию для каждой номенкл. группы...
Старый 18.07.2006, 11:39   #13  
Roman777 is offline
Roman777
NavAx
Аватар для Roman777
NavAx Club
 
320 / 64 (3) ++++
Регистрация: 10.02.2005
Адрес: г. Москва
Прочтите внимательнее мой 1 ответ (пункты 2, 3 и 4). Если что непонятно, я поясню подробнее.
Старый 18.07.2006, 11:52   #14  
sparur is offline
sparur
Участник
 
334 / 25 (1) +++
Регистрация: 19.05.2006
Цитата:
Сообщение от Roman777
Прочтите внимательнее мой 1 ответ (пункты 2, 3 и 4). Если что непонятно, я поясню подробнее.
да собственно если нетрудно то можно пояснить подробнее все пункты
скажем что касается п.2:
то каким образом привязать?? я так понимаю в форме NumberSequenceGroup надо каким то образом забивать ссылку (на одноименной закладке) и потом к ней привязывать код серии из таблицы Серий документов. для всех что указывать одно и тоже?? тогда как система будет различать их?? или же надо ссылку указывать одну для всех номенкл. групп (мною созданную одну единственную), а вот код серии для каждой делать разным??
Старый 18.07.2006, 12:16   #15  
Roman777 is offline
Roman777
NavAx
Аватар для Roman777
NavAx Club
 
320 / 64 (3) ++++
Регистрация: 10.02.2005
Адрес: г. Москва
Расшифровки:
п 1. Заходим в настройки модуля "Управление запасами" на закладку "Номерные серии". Ищем там ссылку "Номенклатура" (предполагается, что Вы уже поставили для этой ссылки свойство groupEnabled = true). Жмем кнопку [Группа] и в появившейся форме добавляем необходимое количество групп, присваивая каждой из них свою настроенную номерную серию.
п 2. в таблицу номенклатурных групп добавляем поле "Группа номерных серий" с сылкой на таблицу групп номерных серий (это есть Extended DataType NumberSequenceGroupId). Привязываем к номенклатурным группам группы номерных серий, настроенные в п.1
п. 3 для того, чтобы выяснить, по какой номерной серии инициализировать код номенклатуры, нам нужно знать код группы номенклатуры до того, как выполниться код метода \Forms\InventTable\Data Sources\InventTable\Methods\create, а в нем element.numberSeqFormHandler().formMethodDataSourceCreate();. Т.е. тут нужно подумать как его инициализировать.
п.4 Здесь по ссылке "ном. группа - группа номерных серий" находим номерную серию, и по ней инициализируем код номенклатуры
За это сообщение автора поблагодарили: alex55 (1).
Старый 18.07.2006, 12:20   #16  
Roman777 is offline
Roman777
NavAx
Аватар для Roman777
NavAx Club
 
320 / 64 (3) ++++
Регистрация: 10.02.2005
Адрес: г. Москва
Да, кстити, что-то подобное сделано в договорах. Там каждой группе договоров присваивается код серии документов. Это вообще намного проще, чем использовать группы номерных серий, причем в Вашей задаче это будет целесообразнее, т.к. Вы нумеруете только один объект (номенклатуру).
Старый 18.07.2006, 12:31   #17  
sparur is offline
sparur
Участник
 
334 / 25 (1) +++
Регистрация: 19.05.2006
Цитата:
Сообщение от Roman777
Расшифровки:
п 1. Заходим в настройки модуля "Управление запасами" на закладку "Номерные серии". Ищем там ссылку "Номенклатура" (предполагается, что Вы уже поставили для этой ссылки свойство groupEnabled = true). Жмем кнопку [Группа] и в появившейся форме добавляем необходимое количество групп, присваивая каждой из них свою настроенную номерную серию.
с этим понятно... а что забивать в поле код серии?? для каждой группы свой код или тоже (как и серию) один единственный

Последний раз редактировалось sparur; 18.07.2006 в 12:36.
Старый 18.07.2006, 12:33   #18  
sparur is offline
sparur
Участник
 
334 / 25 (1) +++
Регистрация: 19.05.2006
Цитата:
Сообщение от Roman777
Да, кстити, что-то подобное сделано в договорах. Там каждой группе договоров присваивается код серии документов. Это вообще намного проще, чем использовать группы номерных серий, причем в Вашей задаче это будет целесообразнее, т.к. Вы нумеруете только один объект (номенклатуру).
то есть если пойти по этому пути то надо сделать только п.1 из предыдущего ответа и в настройках для каждой группы указать свой код серии документов?? а как потом в таком случае отслеживать??

Последний раз редактировалось sparur; 18.07.2006 в 12:36.
Старый 18.07.2006, 12:53   #19  
Roman777 is offline
Roman777
NavAx
Аватар для Roman777
NavAx Club
 
320 / 64 (3) ++++
Регистрация: 10.02.2005
Адрес: г. Москва
Цитата:
Сообщение от sparur
то есть если пойти по этому пути то надо сделать только п.1 из предыдущего ответа и в настройках для каждой группы указать свой код серии документов?? а как потом в таком случае отслеживать??
В этом случае отслеживаем аналогично, только для объекта numberSeqFormHandler нужно инициализировать параметр numbersequencecode при помощи функции numberSeqFormHandler.parmNumberSequenceCode(_numberSequenceCode) всякий раз, когда создается запись в таблице InventTable, и уже известен код ном. группы.
Старый 18.07.2006, 12:57   #20  
sparur is offline
sparur
Участник
 
334 / 25 (1) +++
Регистрация: 19.05.2006
Цитата:
Сообщение от Roman777
В этом случае отслеживаем аналогично, только для объекта numberSeqFormHandler нужно инициализировать параметр numbersequencecode при помощи функции numberSeqFormHandler.parmNumberSequenceCode(_numberSequenceCode) всякий раз, когда создается запись в таблице InventTable, и уже известен код ном. группы.
блин примерчик бы где это все посмотреть, а то че то вот так абстрактно как то не очень понимается...но все равно спасибо
Теги
документация, номерная серия

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Вопрос про номерные серии Umi DAX: Функционал 16 10.03.2009 17:30
Номерные серии в новом учетном периоде sda_1978 DAX: Функционал 4 21.12.2006 10:55
Номерные серии для Контактных лиц в Axapta CRM Alex-bs DAX: Функционал 2 10.02.2006 11:29
За и против использования суфикс/префикс в номерной серии dreshkov DAX: Функционал 18 12.11.2004 16:13
Толстый - Тонкий и номерные серии renat DAX: Администрирование 9 22.05.2003 11:20

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

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

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