Текущее время: Ср, июн 18 2025, 15:18

Часовой пояс: UTC + 3 часа


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 7 ] 
Автор Сообщение
 Заголовок сообщения: Интервал номеров.
СообщениеДобавлено: Ср, дек 05 2012, 08:16 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Ср, окт 05 2011, 17:54
Сообщения: 87
Пол: Мужской
Добрый день.

Возник вопрос по поводу ФМ NUMBER_GET_NEXT.

У меня есть справочник в нем есть код(счетчик) и наименование.
При ведении этого справочника, автоматически берется новый номер через ФМ.
Может произойти ситуация, что завели лишние данные.
Эти данные будут удалены, но когда будут присваиваться новые номера, то пользователь получить новый номер, а удаленные номера будут пропущены.
Как мне получить старый удаленный номер?
Может кто знает?

Заранее спасибо.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Интервал номеров.
СообщениеДобавлено: Ср, дек 05 2012, 08:49 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, окт 06 2005, 16:44
Сообщения: 3080
Откуда: Москва
Все нумераторы работают именно так.
Анализ удаленных номеров никак не производится.
Если хотите, можете на удаление записи накрутить свой функционал, который будет собирать в своей таблице номера удаленных записей.
Но как это может использоваться? Ведь код удаленной записи может использоваться в каких-либо документах :?

второй путь - не удалять физически записи, а помечать их к удалению. Тогда новой таблицы создавать не нужно.

_________________
С уважением,
Удав.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Интервал номеров.
СообщениеДобавлено: Ср, дек 05 2012, 08:52 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Ср, июн 25 2008, 14:06
Сообщения: 313
Откуда: Казахстан, Алматы
Пол: Мужской
Тр SNRO для работы с объектами диапазона номеров.
В диапазоне можно текущий номер изменить.
Но это чревато всякими последствиями. Не советую делать это для стандартных объектов.

_________________
Каждый раз при запуске проекта думаешь - ну вот оно СЧАСТЬЕ! А оказывается нет...снова ОПЫТ...


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Интервал номеров.
СообщениеДобавлено: Ср, дек 05 2012, 09:55 
Ассистент
Ассистент

Зарегистрирован:
Пт, ноя 03 2006, 07:42
Сообщения: 31
Старый номер - очень условное понятие.
Вот дали номера подряд 1,2,3,4,5
Удалили номер 3. Осталось 1,2,4,5
С какой стати система должна давать номер 3 для следующего документа?
Разделять удалили ли последний номер или не последний - я полагаю это глупо.

Откручивать назад счётчики в таблице NRIV - задача разовая и точечная. Но ни в коем случае не регулярная.

Или так, или просто присваивайте номер вручную или берите через MAX (мало рисков если это делается редко и одним юзером)


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Интервал номеров.
СообщениеДобавлено: Ср, дек 05 2012, 10:43 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Ср, окт 05 2011, 17:54
Сообщения: 87
Пол: Мужской
А каким образом работает счетчик заполняющий позиции в стандартных транзакциях?


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Интервал номеров.  Тема решена
СообщениеДобавлено: Ср, дек 05 2012, 11:18 
Ассистент
Ассистент

Зарегистрирован:
Пт, ноя 03 2006, 07:42
Сообщения: 31
WALL-E написал:
А каким образом работает счетчик заполняющий позиции в стандартных транзакциях?

Номер документа.
Делается вызов NUMBER_GET_NEXT. Он даёт следующий номер.
Полученный номер вставляется куда надо.
В таблице статусов данного интервала делается запись +1.
Если вдруг номер в базу не сохранился, то номер пропадает. Совсем.
Поэтому в стандарте получение номера делается в самый последний момент, когда все проверки и подтверждения прошли.

Главная задача - исключение конфликтов, когда два пользователя одновременно сохраняют документы.
Вторая задача - не давать делать MAX по всем документам (просто небыстрая операция).
См также http://entropii.net/?p=1078

При заполнении позиций такой задачи не стоит, так как экран находится под монопольным доступом пользователя, поэтому каждая транзакция делает счётчик самостоятельно. Вероятно просто тупо sy-tabix или sy-tabix * 10.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Интервал номеров.
СообщениеДобавлено: Ср, дек 05 2012, 12:33 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Ср, окт 05 2011, 17:54
Сообщения: 87
Пол: Мужской
Спасибо большое.
Все что нужно узнал.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 7 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB