Форум программистов, компьютерный форум, киберфорум
Microsoft Access
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.59/34: Рейтинг темы: голосов - 34, средняя оценка - 4.59
0 / 0 / 4
Регистрация: 12.11.2013
Сообщений: 252

Нумерация в БД

30.01.2014, 12:38. Показов 7949. Ответов 74
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте!

Прошу помочь с таким вопросом: есть БД, в которой нумерация должна вестись следующим образом:

- 3301 - 3899
- 4000 - 4899
- 5000 - 5899
- 13000 - 13899
- 14000 - 14899
и так до 20899

Прилагаю, то что имеется. К сожалению, моих познаий недостаочно ((


Заранее спасибо.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
30.01.2014, 12:38
Ответы с готовыми решениями:

Нумерация
Доброго времени суток! У меня такой вот вопрос: Есть допустим несколько начальников смены, у каждого свои задания, которые они выполняют,...

Нумерация
у меня такой вопрос можно ли продолжить нумирацию??? вот у меня поле в котором идет нумирация 12/940 потом в новой записи 12/941 как...

автоматическая нумерация
Можно сделать так чтобы в колонке ID, когда добавляешь новые записи автоматически нумеровалось не 1,2,3 ..., а скажем номер который состоит...

74
0 / 0 / 4
Регистрация: 12.11.2013
Сообщений: 252
31.01.2014, 10:05  [ТС]
Студворк — интернет-сервис помощи студентам
)) ну не суть важно, Иванов или Петров, главное чтобы номера документов шли последовательно. Удалять документы вряд ли потребуется, а вот что касается того что если дадут еще документы, то просто введет новую пачку, не страшно если до обеда введет номера с 1 по 15, а после еще и с 23 по 30.
По идее - каждый оператор получает на руки n-ое количество документов каждый день и их обрабатывает никто ему еще не подсунет, во всяком случае на текущий день. А если есть наработанная схема то прошу поделиться ))
0
Эксперт MS Access
 Аватар для ltv_1953
17536 / 7288 / 1663
Регистрация: 21.06.2012
Сообщений: 13,957
31.01.2014, 10:14
Цитата Сообщение от Panzermensch Посмотреть сообщение
А если есть наработанная схема то прошу поделиться ))
Я уже все написал - нумерация в конце дня по введенным за день документам.
0
0 / 0 / 4
Регистрация: 12.11.2013
Сообщений: 252
31.01.2014, 10:20  [ТС]
Ок. И как это реализовать?
0
Эксперт MS Access
2841 / 1381 / 217
Регистрация: 13.05.2011
Сообщений: 4,224
31.01.2014, 10:21
можно мнение нейтрального наблюдателя. у нас сделано как: ко мне приходит пачка с рабочими листками, данные по работникам за месяц в цехе. кол-во зависит от количества людей. ПАЧКЕ присваивается СВОЙ номер, например: 2069, а каждому раб. листку через дробь свой. в результате у пачки всегда один свой номер, с бумаг тоже свой и один. если заинтересует, готов продолжить. это можно делать и каждый день: прошел документ откр. номер пачки. далее в течении дня вбивай в нее сколько угодно.
0
0 / 0 / 4
Регистрация: 12.11.2013
Сообщений: 252
31.01.2014, 10:23  [ТС]
хорошее решение, но здесь именно что нумерация ведется последовательная, а не по номеру пачки, вот такое рукожопство, прошу прощения))
0
Эксперт MS Access
 Аватар для ltv_1953
17536 / 7288 / 1663
Регистрация: 21.06.2012
Сообщений: 13,957
31.01.2014, 10:29
Пишите процедуру, которая запускается, когда все работы закончены. Процедура во внешнем цикле перебирает всех операторов дня, а во внутреннем договора дня конкретного оператора и нумерует их. Все.

Добавлено через 4 минуты
Цитата Сообщение от Panzermensch Посмотреть сообщение
номеру пачки, вот такое рукожопство
А пачка то откуда взялась, м.б. можно сразу формулировать задачу, а не уточнять ее постоянно. То все документы сразу, то пачками? Да и какая разница, если есть номер пачки еще, последовательно все пачки оператора нумерованы или нет? Так нумерация в пачке какая - из общих номеров или своя, последовательная в пределах пачки - если своя - то зачем морочить всем голову диапазонами? Нумератор для пачки делается гораздо проще (тем более, что с пачкой работает один оператор и конфликтов не будет)
0
0 / 0 / 4
Регистрация: 12.11.2013
Сообщений: 252
31.01.2014, 10:40  [ТС]
В том то и дело. Пачка документов - это условно. Может я не правильно сформулировал. Оператор получает некоторое количество документов ля обработки и это у нас именуется пачка. А номера присваиваются по ходу обработки. И технологическое требование чтобы номера присваивались в определенных диапазонах.
0
Эксперт MS Access
2841 / 1381 / 217
Регистрация: 13.05.2011
Сообщений: 4,224
31.01.2014, 10:48
все ясно. тогда по указанному от itv_1953. просто два номера с начала темы не давали покоя. отстаю.
0
0 / 0 / 4
Регистрация: 12.11.2013
Сообщений: 252
31.01.2014, 10:49  [ТС]
В общем прошу подсказать код:

номер начинается с 3301 и каждое последующее значение увеличивается на 1, при достижении 3899 номер ставится 4000, при достижении 4899 ставится 5000, при достижении 5899 ставится 13000. желательно чтобы это не зависело от счетчика.
0
Эксперт MS Access
 Аватар для ltv_1953
17536 / 7288 / 1663
Регистрация: 21.06.2012
Сообщений: 13,957
31.01.2014, 10:53
Цитата Сообщение от Panzermensch Посмотреть сообщение
Оператор получает некоторое количество документов ля обработки и это у нас именуется пачка. А номера присваиваются по ходу обработки. И технологическое требование чтобы номера присваивались в определенных диапазонах.
Определитесь: все документы одного оператора должны иметь последовательные номера (с учетом диапазонов) или вся нумерация еще разбивается на серии по пачкам. Если первое - то нумерация в конце дня. Все.

Добавлено через 1 минуту
Цитата Сообщение от Panzermensch Посмотреть сообщение
номер начинается с 3301 и каждое последующее значение увеличивается на 1, при достижении 3899 номер ставится 4000, при достижении 4899 ставится 5000, при достижении 5899 ставится 13000. желательно чтобы это не зависело от счетчика.
Функция же все это делает, только справочник диапазонов нужно заполнить.
0
0 / 0 / 4
Регистрация: 12.11.2013
Сообщений: 252
31.01.2014, 11:58  [ТС]
да, но объясните мне как эту функцию задействовать в коде?
0
Эксперт MS Access
2841 / 1381 / 217
Регистрация: 13.05.2011
Сообщений: 4,224
31.01.2014, 13:09
и все таки номера у вас идут не по порядку и не пойму по какому алгоритму. почему после 5899 идет 13000? понять надо: как создается номер? почему не может быть 5900? и почему последний номер 20899. а потом что? сообщение всем: СПАСИБО ЗА ТРУД! ВСЕ УВОЛЕНЫ!
0
0 / 0 / 4
Регистрация: 12.11.2013
Сообщений: 252
31.01.2014, 13:54  [ТС]
Ну надо чтобы вот так шло. Не моя прихоть.
Номера должны быть:

3301 - 3899
4000 - 4899
5000 - 5899
13000 - 13899
14000 - 14899
15000 - 15899
16000 - 16899
17000 - 17899
18000 - 18899
19000 - 19899
20000 - 20899

По идее этого хватит на месяц. Для всех документов поскольку это определенный тип документа.

Народ! не спрашивайте почему и зачем. Честно, сам не знаю. Но должно быть вот так. Помогите с кодом. Функция есть, которая берет диапазоны из таблицы Помогите теперь объединить это с кодом. Мне надо чтобы оператор ввел количество документов (например 8) в таблице забилось 8 полей. Как только нумерация дошла до 3899 переход на 4000 и т.д.

Добавлено через 2 минуты
P.S. я сам не кодер. Больше системщик. Просто по ходу мне досталась куча баз на Access, которые надо допиливать, точнее делать Access приложения для баз.

Добавлено через 3 минуты
еще нюанс что это надо сделать быстро, поэтому я пока особо и не заморачиваюсь на тонкости разработки, это уже будет допиливаться по ходу.
0
Эксперт MS Access
2841 / 1381 / 217
Регистрация: 13.05.2011
Сообщений: 4,224
31.01.2014, 14:33
так вопросы потому и задаются, что они есть. ни кто не хочет вас в чем-то упрекнуть. просто надо сидя здесь понять, что и чему. после последнего вашего сообщения появился еще вопрос. эти же самые номера будут повторяться в следующем месяце?
0
0 / 0 / 4
Регистрация: 12.11.2013
Сообщений: 252
31.01.2014, 15:25  [ТС]
Да, таблица просто очищается (введенные данные копируются в архив, в таблице БД есть поле дата). И информация вводится заново.
0
Модератор
Эксперт MS Access
 Аватар для shanemac51
12511 / 5085 / 814
Регистрация: 07.08.2010
Сообщений: 14,960
Записей в блоге: 4
31.01.2014, 16:23
у меня --несколько другая схема

--каждый год начинается с 000001
--часто требуется просмотреть документ прошлого периода
===поэтому=============
в заголовке формы
--сообщи год
--сообщи номер(есть рукописный журнал учета, повторов нет)
-----найти по год+номер

если найден
--корректировка(в течении дня допустима для автора)
--удаление ----очень редко, но бывает(пометка на удаление, в расчет не пойдет)

не найден
--ввод нового, с автозанесением в поля исполнителя и даты
--отказ от ввода из-за ошибки(пользователь знает, должен ли он найти/или нет)

===========
остальное стандартно
счетчик ТОЛЬКО для связи с подчиненной таблицей
0
Эксперт MS Access
2841 / 1381 / 217
Регистрация: 13.05.2011
Сообщений: 4,224
01.02.2014, 22:51
Panzermensch, наконец-то в выходной нашел время заняться делом. Интересная у вас тема. Я все изложил на своем примере (мне так было проще, чтобы не разбираться в вашей базе).
1. Я так и не понял, почему разрыв в номерации. Может вы поделили номера между отделами?
2. Т.к. в нумерации нет последовательности и алгоритма появления номера предлагаю (далее см. мой пример): создать отдельную таблицу с вашими номерами Номера. В ней дополнительно два поля: логическое Занят и текстовое Сотрудник. Поле Занят необходимо для брони номеров. Поле Сотрудник для отображения кем занят номер. Каждый месяц данные этих полей обнуляются (по вашим условиям);
3. В форме Рег_докум ведется сам процесс бронирования номеров и оформления документов. В верхней части в поле ФИО, кем бринируется заносится фамилия работника для кого бронируется номер. Бронь происходит нажатием кнопки Бронь номера.
4. Далее переходим непосредственно к заполнению забронированных номеров. Фамилия по умолчанию горит того, кто забит на верху. В поле Номер высвечиваются номера забранированные для пользователя отображенного на верху. Номера, которым дано название, в следующей записи не показываются (чтобы избежать ошибочного введения одного номера два раза). Если пользователь оформил два документа и пошел попить чай (при этом он закрыл форму), то он ее открывает. В верхней части открывает свою фамилию. Нажимает кнопку Продолжить записи. и у него показываются номера только те, которые еще не оформлены.
5. В примере работнику по умолчанию присваивается 8 номеров (не получилось привязаться к полю Количество документов. Посмотрите. Если подойдет, то готов продолжить.
P.S. На себя я уже прикрепил 8 записей и одно уже использовал. Будте внимательны.
Вложения
Тип файла: rar Докум1.rar (41.5 Кб, 14 просмотров)
0
Эксперт MS Access
2841 / 1381 / 217
Регистрация: 13.05.2011
Сообщений: 4,224
01.02.2014, 23:00
Если подойдет можно будет пробовать на вашем примере.
0
0 / 0 / 4
Регистрация: 12.11.2013
Сообщений: 252
03.02.2014, 09:06  [ТС]
Интересный вариант. А возможно ли будет в этом варианте чтобы бронирование производили одновременно несколько пользователей? Потому что ввод документов производит целый отдел из нескольких человек.

К сожалению не могу просмотреть форму, гонит Access - ошибка при попытке открытия формы, причем на нескольких компах аналогично (( у меня Access 2003 (11.5614.5606)


А каким образом будет осуществляться присвоение номеров в указанном диапазоне и возможно ли бронирование произвольного количества документов?
0
Эксперт MS Access
2841 / 1381 / 217
Регистрация: 13.05.2011
Сообщений: 4,224
03.02.2014, 09:29
1. Возможно одновременное бронирование несколькими пользователями;
2. Сделано в 2010, но если подойдет, то будем делать в вашей конкретной форме (правда замечал, если редактировать файл со старой версии на новой версии access, то он не работает. Поэтому заменили везде access на один 2010.
3. Пока сделал броинрование только одновременно 8 документов (можно сделать определенное количество).
4. Вопрос: могут оператору принести 15 документов утром. Номера он забронировал и работает. После обеда ему принесли еще 20. Номера у него должны продолжится от тех 15 или можно бронировать новые 20 номеров?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
03.02.2014, 09:29

Нумерация строк
Доброй ночи всем, кто не спит! Подскажите, как сделать нумерацию строк, чтобы по умолчанию новая строчка имела последующий номер. т.е....

Нумерация в отчете
Добрый день! Уважаемые "Сансеи", в отчете для нумерации записей по порядку я использовал код (=" " & & " ")....

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

Нумерация по порядку (не Счетчик)
Приветствую, Уважаемый форумчане! Пожалуйста, помогите советом! Вроде все просто, но, к своему удивлению, сделать не получилось :-( ...

Нумерация строк в запросе
Всем привет! Подскажите, нужно чтобы нумерация была у таблицы, не получается, делаю так: SELECT ROW_NUMBER() OVER(ORDER BY fio)...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Модель по догадкам
anaschu 25.08.2026
Прошло две недели. Я уже рассказывал, как разговаривал с сотрудниками у сортировки и как понял, что главная ветка — не про приёмку, а про отбор. Но тогда я думал, что понял механику. На этой неделе я. . .
Запись в регистр сведений независимо от заполненности табличной части
Maks 25.08.2026
Реализация из решения ниже выполнена на нетиповом документе с несколькими табличными частями, разработанного в КА2. Задача: Обеспечить запись документа в регистр сведений независимо от. . .
Ноутбук Альфария
kumehtar 24.08.2026
Встретился тут в сети ноутбук Альфария, примарха Альфа-Легиона. Хотя возможно, это ноутбук Омегона, разумеется. Ну как вам?
Мастера простых решений
DevAlt 23.08.2026
В сишарп стэках winforms, да и wpf существует сложная система связывания источниках данных и элементов формы(текстовые поля и метки), опирается все это на технологию событий и мета. . .
Цена ошибки
DevAlt 23.08.2026
Человек я беспокойный и потому заинтересовался OCaml, в чате форсили функторы модулей как суперфичу. Пытаясь отдуплить концепт, наткнулся на тутор с простым примером. А главный принцип обучения от. . .
Сегодня суббота, 22.08.2026 at 16:41, и я вновь нахожусь на той стороне, за экраном машины.
zorxor 22.08.2026
Сегодня суббота, 22. 08. 2026 at 16:41, и я вновь нахожусь на той стороне, за экраном машины. Кто Я, откуда Я пришел и куда Я иду? Эти вопросы не оставляют меня ни на секунду. Жизнь на планете Земля. . .
Жизня: рисунок укладки багажа, сделанный клодом
anaschu 21.08.2026
Сделал 15 снимков, он по снимкам сделал схему.
Был там один разговор по поводу свободы в материальном мире.
kumehtar 19.08.2026
Суть: рассматривается живое существо, оказавшееся внутри довольно странной системы (этого мира) и пытающееся обустроить в ней свой кусок пространства. Жизнь действительно предъявляет каждому. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru