|
|
#1 |
|
Участник
|
Установить следующее значение в номерной серии
Есть номерная серия.
И есть форма в которой должно отображаться значение следующего номера (по идее, как в настройказ ном серии)( номера выделяютс и используются определенной процедурой во время обработки, которая берет номер указанный в этой форме или выделяет свой) .Также пользователь должен иметь возможность вписать Следующий номер руками в форму. Как это реализовать? В форме NumberSequenceTable берется поле NextNum для определения следующего доступного номера, но может, нужно получать след номер ким-то другим, не столь прямым образом . Насчет ввода пользователем следующего номера есть идея делать NumberSeq.reserve , но мож тож надо как-то по-другому,?Тыкните, плз, где поглядеть на подобное в системе. |
|
|
|
|
#2 |
|
Участник
|
NumberSeq::newGetNumFromCode("Код номерной серии") - это используйте для случая, когда автоматом.
В остальных случаях - пусть себе вводит что заблагорассудится. З.Ы. Или после ввода пользователем необходимо обновить след. номер в номерной серии на то что он ввел? Он должен всегда вводить в правильном формате? |
|
|
|
|
#3 |
|
Участник
|
Только в том случае, если:
1. ручные коррекции разрешены в самой номерной серии 2. "хитрый" (конечно же в смысле, smart) программист не запретил ручное редактирование поля. |
|
|
|
|
#4 |
|
Участник
|
Я так понял, у девушки kitty поле не связано с номерной серией. И хендлер не используется. Просто в это поле выводится следующий номер
|
|
|
|
|
#5 |
|
Участник
|
Цитата:
Сообщение от kashperuk
NumberSeq::newGetNumFromCode("Код номерной серии") - это используйте для случая, когда автоматом.
В остальных случаях - пусть себе вводит что заблагорассудится. З.Ы. Или после ввода пользователем необходимо обновить след. номер в номерной серии на то что он ввел? Он должен всегда вводить в правильном формате? |
|
|
|
|
#6 |
|
Участник
|
Цитата:
1) Номерная серия не ручная, тк при ручной не получается выделять номера автоматически (или я чот не так делаю?? но стандартным путем не выделяются). 2) Пошла вторым путем - разрешила редактировать поле в форме. Последний раз редактировалось kitty; 28.02.2008 в 17:22. |
|
|
|
|
#7 |
|
Участник
|
Предлагаю путь номер ноль. Этот путь надо выполнять ПЕРЕД всеми остальными.
Сначала почитать и поисследовать. Почитать: http://axapta.mazzy.ru/lib/numbersequence/ http://axapta.mazzy.ru/lib/numbersequence_using/ http://erpkb.com/Axapta/NomernyeSerii а также здесь на форуме и на msdn. кроме того, про номерные серии много писали блоггеры. поищите. поисследуйте код в существующих формах. например, поисследуйте код нумерации клиентов (можно править руками при определенных условиях) и нумерации заказов (никогда нельзя править руками). Разберитесь чем они отличаются. |
|
|
|
|
#8 |
|
Участник
|
Цитата:
Сообщение от mazzy
Предлагаю путь номер ноль. Этот путь надо выполнять ПЕРЕД всеми остальными.
Сначала почитать и поисследовать. Почитать: http://axapta.mazzy.ru/lib/numbersequence/ http://axapta.mazzy.ru/lib/numbersequence_using/ http://erpkb.com/Axapta/NomernyeSerii а также здесь на форуме и на msdn. кроме того, про номерные серии много писали блоггеры. поищите. поисследуйте код в существующих формах. например, поисследуйте код нумерации клиентов (можно править руками при определенных условиях) и нумерации заказов (никогда нельзя править руками). Разберитесь чем они отличаются. .. про форму клиентов, спасибо, гляну .. Исследовать систему можно до бесконечности, но вот время на задание ограничено, была бы благодарна за более-менее определенный совет, если такой имеется. Спасибо.
|
|
|
|
|
#9 |
|
Участник
|
Неужели никто не знает как установить свое значение в ном серию?
В клиентах, по крайней мере у нас, можно руками забить AccountNum, но следующий номер все равно выделяется тот, что по ном серии следующий, то есть тот, что руками забыивают в учет не берется. Мне же нужно , чтобы следующий номер выделялся, следующим за тем, что пользователь ввел руками. |
|
|
|
|
#10 |
|
Участник
|
вам же уже ответили
Установить следующее значение в номерной серии |
|
|
|
|
#11 |
|
Участник
|
kitty,
посмотрите 3 метода, думаю, это вам поможет: \Classes\NumberSeq_Fast\getNumFromTable - там просто увиличивается на 1 nextRec после выделения номера. \Сlasses\NumberSeq\checkChangeNumber - этот метод сможете использовать для проверки введенного пользователем значения. Воспользуйтесь перекрестными ссылками или поиском по АОТ, чтобы посмотреть, где используется этот метод, и как. \Classes\NumberSeq\getNumFromTable - более сложный вариант первого метода. Здесь nextRec увеличивается на increment, который рассчитывается в зависимости от того, сколько номерков было зарезервировано. В принципе, думаю попробовать воспользоваться резервированием здесь может быть уместным. Правда нужно убедиться, что номера, пропущенные пользователем, нигде потом не вылезут |
|
|
|
|
#12 |
|
Участник
|
Спасибо, Иван!
|
|
|