Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.10.03;
Скачать: CL | DM;

Вниз

Вопрос по нумерации документов   Найти похожие ветки 

 
Koala ©   (2004-09-03 13:49) [0]

Есть справочник номеров документов которые получают из типографии
дата, №_начальный, №_конечный, Отметка_О_Списании
Есть журнал документов уже отпечатанных
ID, дата, №_Док, ... данные
Как лучше организовать номерацию документов...
может кто сталкивался с этим и может подсказать наилучший алгоритм...
Вопрос сформулировал может не сильно понятно, тогда перефразирую...
За ранее благодарен


 
Карелин Артем ©   (2004-09-03 14:40) [1]

>>Как лучше организовать номерацию документов...
Номер=номер+1????????????
Наверно нет.
Перефразируй лучше что надо канкретно надо..


 
Koala ©   (2004-09-03 14:57) [2]


> Номер=номер+1????????????

это правильно...
но для начала нужно вызвать список из справочника доступных номеров т.е. не списанных, затем в журнале найти последний используемый номер, а потом вставлять Inc(Номер). и следить за тем, когда Номер достигнет №_Конечный установить флаг в справочнике что пачка списана и взять нумерацию следующе пачки...


 
Drakosha   (2004-09-03 15:03) [3]

в Oracle есть sequence
наверняка и в других есть что то подобное.
Нахудой конец тригер завести.


 
Koala ©   (2004-09-03 15:32) [4]

Проблема в следующем, ряд документов формируется во временной таблице, одним пользователем локально, т.е. доступ к формированию первой партии документов (путевые листы для легкового автомобиля) на следующий день есть только у одного пользователя (диспетчера). Он формирует список, затем пока распределятся коммандировки, пересадка водителя с одной машины на другую, вобщем пока эта утряска пройдет часам к 16-17 тогда запускается печать путевых и маршрутных листов. так что тригер тв этом случае не поможет, а вот дальше... при работе с этими документами на счет тригера надо подумать
> Drakosha   > Нахудой конец тригер завести.(03.09.04 15:03)
спасибо за совет....
Использую Firebird 1.5 с sequence не сталкивался


 
Sergey13 ©   (2004-09-03 15:35) [5]

2[2] Koala ©   (03.09.04 14:57)
Может стОит сделать ссылку на пачку для документа? Проще будет контролировать. А так max+1, наверное больше никак.
А номера в пачках разрываются? Типа в первой 100-200 следующая 300-400?


 
Sergey_Masloff   (2004-09-03 15:45) [6]

Sergey13 ©   (03.09.04 15:35) [5]
>Типа в первой 100-200 следующая 300-400?

Это фигня. Вот когда мы бланки ОСАГО получаем - там нумерация не по порядку. Ну типа бланки защищенные если сбой станка то с таким номером больше не печатается а в пачку на его место подкладывается рандомный ;-) (ну типа строгий учет - должно быть тысяча в пачке так и будет).
 Но и это фигня - уже есть дубликаты то есть напечатали реально с нарушением primary key. Классно, да?
 Вот это я назяваю Ж а там если пачки с разрывами - так это даже не проблема ;-)


 
Koala ©   (2004-09-03 15:47) [7]


> [5] Sergey13 ©   (03.09.04 15:35)
> А номера в пачках разрываются?

Пачки получаем из типографии, т.е. нумерация напр. 20250-20500, 3000-14000 только серии разные но меня серии как таковое не интересует..., а вот талоны заказчика, те вообще идут как бланки строгой отчетности (с водяными знаками и др. защитой) за них еще и отчитыватся надо в конце месяца, вот тут серия как раз нужна, но это уже следующий этап....

> Может стОит сделать ссылку на пачку для документа?

не понял, поясни пож...


 
Sergey13 ©   (2004-09-03 15:50) [8]

2[6] Sergey_Masloff   (03.09.04 15:45)
Просто у разных людей и Ж разные. 8-)


 
Koala ©   (2004-09-03 15:54) [9]


> [6] Sergey_Masloff   (03.09.04 15:45)


> а там если пачки с разрывами - так это даже не проблема
> ;-)

Подскажи как ты реализовывал нумерацию...
если не трудно...


 
Koala ©   (2004-09-03 16:01) [10]


>
> [3] Drakosha   (03.09.04 15:03)
> Нахудой конец тригер завести.

не подскажешь как его сделать????


 
Sergey13 ©   (2004-09-03 16:01) [11]

2[7] Koala ©   (03.09.04 15:47)
>не понял, поясни пож...

>Есть журнал документов уже отпечатанных
>ID, дата, №_Док, ... данные
Сюда добавить ID_пачки, что бы можно было определить допустимый диапазон адресов


 
Sergey13 ©   (2004-09-03 16:02) [12]

Ты бы хоть БД сказал какая.


 
Sergey_Masloff   (2004-09-03 16:03) [13]

Вообще так просто не расскажешь.
Есть сущность пачка есть сущность документ (один-ко-многим)
У пачки есть куратор у документа есть куратор и статус - создан системой, выдан, испорчен и так далее. Куратор отвечает за пачку - то есть получив заводит ее - первый номер и число бланков. Программа генерирует N=число бланков записей. Куратор пачки раздает бланки другим кураторам (они могут раздавать дальше так что нужна история на каком этапе кто отвечал за бланк).
 В программе оператор же работает с бумажным бланком - берет его вводит первые цифры и выбирает из списка допкстим. И все. Если на бумажках уже есть номера то нумеровать их из программы неразумно.

А так писать долго - это на главу книги потянет


 
Koala ©   (2004-09-03 16:07) [14]


>  [11] Sergey13 ©   (03.09.04 16:01)
> Сюда добавить ID_пачки, что бы можно было определить допустимый
> диапазон адресов

но для чего??? если №_Док уже стоит в для чего диапазон то...?????


 
Sergey13 ©   (2004-09-03 16:08) [15]

2[14] Koala ©   (03.09.04 16:07)
А чего тогда вообще нумеровать то надо если все номера есть? 8-)


 
Koala ©   (2004-09-03 16:19) [16]


> [13] Sergey_Masloff   (03.09.04 16:03)


> Программа генерирует N=число бланков записей.

т.е. программа вставляет в таблицу N-ое кол-во строк содержащих только номер документа, а оператор уже выбирая из списка нужный номер дополняет его нужными данными (я правильно понял???)

>
>  [15] Sergey13 ©   (03.09.04 16:08)
> А чего тогда вообще нумеровать то надо если все номера есть?
> 8-)

мне нужен первый этап сама нумерация, а когда № уже вставлен то зачем проверять диапазон
или я не правильно вас понял....


 
Sergey_Masloff   (2004-09-03 16:31) [17]

Koala ©   (03.09.04 16:19) [16]
>т.е. программа вставляет в таблицу N-ое кол-во строк содержащих >только номер документа,
Ну почему только номер. Всю информацию которую она может узнать без оператора. Если это билет то фамилию пассажира она конечно не вставит. А вот дату регистрации билета на складе, дату передачи кассиру, всякую аналитику - пожалуйста.


 
Koala ©   (2004-09-03 16:48) [18]


> [17] Sergey_Masloff   (03.09.04 16:31)
> дату регистрации билета на складе, дату передачи кассиру,
> всякую аналитику - пожалуйста

но мне эта инфа не нужна, и она нигде не используется, тут сам смысл: при формировании путевых листов программа должна проанализировать какие пачки есть в справочнике создать список и указать диспетчеру, что вставьте путевые листы с № ... по № ...


 
Sergey13 ©   (2004-09-03 17:03) [19]

2[18] Koala ©   (03.09.04 16:48)
> при формировании путевых листов программа должна проанализировать какие пачки есть в справочнике создать список и указать диспетчеру, что вставьте путевые листы с № ... по № ...
А не проще при вводе новой пачки автоматом нагенерить нужные документы с номерами?


 
Koala ©   (2004-09-03 18:28) [20]


> [19] Sergey13 ©   (03.09.04 17:03)
> А не проще при вводе новой пачки автоматом нагенерить нужные
> документы с номерами?

этот метод не совсем подходит...



Страницы: 1 вся ветка

Текущий архив: 2004.10.03;
Скачать: CL | DM;

Наверх




Память: 0.52 MB
Время: 0.022 c
14-1094846423
Думкин
2004-09-11 00:00
2004.10.03
С днем рождения! 11 сентября


6-1091039930
dms_main
2004-07-28 22:38
2004.10.03
html encoding


9-1086007711
Полубинский Антон
2004-05-31 16:48
2004.10.03
Новый проект на сайте ПроектGame


14-1095392648
Leshiy
2004-09-17 07:44
2004.10.03
Прикольный вид сайта :)


1-1095273812
kand
2004-09-15 22:43
2004.10.03
Подскажит, что за параметры (EmptyParam) задаются при открыт