18.11.2004, 16:09 | #1 |
Участник
|
Часто при разработке структуры таблиц нам не хватает поля, которое формируется автоматически. Например, возрастает при добавлении новой записи. Обычно производители СУБД предусматривают простенький механизм – счетчик (counter), который представляет собой числовое поле, автоматически увеличивающее значении при добавлении новой записи. В MBS Axapta к реализации данного механизма подошли довольно серьезно – простенький счетчик заменили номерные серии. Теперь - это уже текстовое поле, с возможностью изменения шаблонов автоматического формирования следующего значения и поддерживаний свойства непрерывности серий. Однако возросшие возможности повлекли за собой и трудности при использовании и настройке и данного механизма. Как правильно использовать номерные серии, и посвящена данная статья.
Подробнее... http://axapta.mazzy.ru/hints/numbersequence/ |
|
20.11.2004, 05:57 | #2 |
Участник
|
Побольше бы таких статей.
Кстати... Существуют ли подобное подробное описание складских аналитик (InventDim)? От программной концепции самой таблицы и принципов работы с ней и до того как правильно создавать новые формы где есть InventDim (отображение только нужных аналитик, может быть даже сворачивание по ним и т.п.)? Уже очень хочется написать подобную инструкцию для своих программеров, но может где есть готовая? |
|
20.11.2004, 16:46 | #3 |
Участник
|
Спасибо за статью Георгию Нанеишвили (George Nordic)
готовой не видел. написать хочется. не получается из-за отсутствия времени. с удовольствием опубликую, если такая статья будет создана. |
|
15.09.2005, 09:56 | #4 |
Участник
|
Небольшое дополнение:
Цитата:
Если же Вы собираетесь писать в своем модуле… Что ж… Все возможно. Вам только придется подправить enum « NumberSeqModule », добавить в него новый элемент.
class NumberSeqReference 1) В static public container moduleList() добавить что-то вроде: <div class='XPPtop'>X++</div><div class='XPP'>moduleList += NumberSeqReference_<Ваш модуль>::numberSeqModule();</div> 2) В public static numberSeqReference construct(NumberSeqModule _module) добавить что-то вроде: <div class='XPPtop'>X++</div><div class='XPP'>[color=:blue]case[/color] (NumberSeqReference_<Ваш модуль>::numberSeqModule()) : [color=:blue]return[/color] [color=:blue]new[/color] NumberSeqReference_<Ваш модуль>(_module);</div> Когда увидите код этих методов, сразу поймете куда добавить. Потом загляните в форму Основное-Настройки-Серии документов-Ссылки. Там появятся записи с названием Вашего модуля и Вашими ссылками. P.S. Очень полезная статья. Спасибо. |
|
15.09.2005, 19:30 | #5 |
Участник
|
Давно хотел спросить автора. По поводу вот этого.
" ... При разработке префикса я рекомендую использовать следующее правило его формирования... " Вопрос собственно такой. А у вас никогда не случалось, что номерная серия заканчивалась? Например, для ваучеров. Просто я взвешиваю плюсы и минусы включения цифр года в шаблон так называемой номерной серии. |
|
15.09.2005, 19:39 | #6 |
Участник
|
нумератор не ругается, насколько я помню.
Если генерируемый номер стоит в уникальном поле, то Аксапта выругается на то, что не может создать запись с таким кодом. Не более. |
|
20.09.2005, 14:34 | #7 |
Участник
|
добавил чуть более удобный с моей точки зрения вариант использования номерных серии на
http://erpkb.com/Axapta/NomernyeSerii |
|
20.09.2005, 14:37 | #8 |
Участник
|
Цитата:
Сообщение от mugz
добавил чуть более удобный с моей точки зрения вариант использования номерных серии на
http://erpkb.com/Axapta/NomernyeSerii 2. А чем именно он "более удобный"? Вроде такой же. Или я что-то пропустил? |
|
20.09.2005, 15:00 | #9 |
Участник
|
Спасибо, mugz.
Исправил опечатки в коде, добавил ссылку на erpkb.com |
|
03.05.2006, 19:30 | #10 |
Участник
|
Когда передо мной встал вопрос: что такое номерная серия и как ее можно использовать, я первым делом полез в Интернет в поисках различных статей на эту тему. Статьи я обнаружил и прочел. Но после их прочтения у меня осталось стойкое ощущение, что я что-то не понимаю.
Вроде бы, все, что написано в статьях правильно и разумно. Но целостного представления о номерных сериях не получается. Все рассыпается на фрагменты. Я многократно перечитывал статьи, чтобы понять, что же я пропустил. Оказалось, ничего не пропустил. Просто авторы статей исходили из предположения, что читатель и так знает некоторые вещи, которые им представлялись "совершенно очевидными". Данная статья ни в коем случае не предназначена для того, чтобы заменить ранее написанные статьи. Это заняло бы слишком много времени и сил. Да и особого смысла в этом нет. Я хотел бы остановиться как раз на тех "совершенно очевидных" вещах, которые вызвали мое недоумение. Описать общую концепцию номерных серий. |
|
03.05.2006, 19:59 | #11 |
Участник
|
Спасибо. Респект.
|
|
27.03.2013, 12:31 | #12 |
Участник
|
Хорошо бы найти полноценную инструкцию по созданию номерной серии с нуля для нового модуля. Ибо не в одной из нескольких инструкций, которые прочитал, не сказано ничего про создание таблицы параметрической, какие должны быть методы на форме, ds и таблице и т.д.
|
|