|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
06.03.2008, 16:39 | #1 |
Форумчанин
Регистрация: 03.05.2007
Сообщений: 247
|
исключение повторения номера акта за этот год
как исключить ввод повторяющего номера акта на определенный год, и выводил подсказку на определенную дату ввода.
|
06.03.2008, 17:19 | #2 |
Участник клуба
Регистрация: 19.12.2007
Сообщений: 1,100
|
В БД есть такое понятие как Ключевое Поле (т.е. не повторяющееся)
Если же такого нет, можно организовать поиск даного значения по базе (т.е. по даному полю) и на основе его результатов - делать "выводы".
На форуме: Помогаю за спасибо
ICQ\Skype: Это моё личное время ... Последний раз редактировалось Yurk@; 06.03.2008 в 17:28. |
06.03.2008, 18:15 | #3 | |
Форумчанин
Регистрация: 04.03.2007
Сообщений: 615
|
Цитата:
|
|
06.03.2008, 23:18 | #4 |
Форумчанин
Регистрация: 03.05.2007
Сообщений: 247
|
в том то и дело, что номера из года в год повторяются. именно в определенный год небыло повторения номера акта, например:
2006 -1,2,3,4,5..... 2007 -1,2,3,4,5..... dakta-datatime (поле дата акта) nakt-numeric (вот здесь нумерация с 1 января по 31 декабря) idakt-int (индексное поле) |
06.03.2008, 23:32 | #5 |
Старожил
Регистрация: 22.05.2007
Сообщений: 9,085
|
как вариант триггер на вставку повесь. вырезай год из даты и смотри, есть ли номер договора на этот год такой уже. или вставку можно через хранимую процедуру делать, в которой проверять
|
07.03.2008, 05:41 | #6 |
Форумчанин
Регистрация: 20.06.2007
Сообщений: 270
|
Создайте уникальный индекс по этим полям.
Или попробуйте использовать Lookup перед сохранением. Если нашел записи с этими значениями - предупреждение. Если не нашел - сохранить.
-Кукушка, кукушка! Накукуй мне сто лет!
-А накукуй тебе столько? (с) Библия. Вольный перевод с древнееврейского. |
08.03.2008, 03:40 | #7 | |
Форумчанин
Регистрация: 03.05.2007
Сообщений: 247
|
Цитата:
еще забыл, на проверку организации по полю org (numeric) вторичный ключ проверка производится по году, организации и номеру Последний раз редактировалось ГОСЕАН; 08.03.2008 в 03:45. Причина: забыл момент |
|
08.03.2008, 03:44 | #8 |
Форумчанин
Регистрация: 03.05.2007
Сообщений: 247
|
еще забыл, на проверку организации по полю org (numeric) вторичный ключ
проверка производится по году, организации и номеру |
08.03.2008, 21:56 | #9 |
детский тренер
Форумчанин
Регистрация: 08.06.2007
Сообщений: 532
|
Я б делал бы тригер .... on insert
Либо создал бы поле varchar в которое б вставлял год и номер документа('2007-1')... И это поле сделал бы ключем.... Или уникальным сделал бы...
Я злой и страФный серррый воФк, и в пАрАсятах знаю толк - ppp ppp pp p pp pp
|
09.03.2008, 02:50 | #10 | |
Форумчанин
Регистрация: 03.05.2007
Сообщений: 247
|
Цитата:
Интересно, номер акта год-индекс организации-номер, 2007-1-1, так это новый год сердючки получается |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Задача на исключение строк в матрице | DRAG | Помощь студентам | 11 | 20.04.2011 21:31 |
Как обработать исключение? | XPAiN | БД в Delphi | 9 | 16.05.2008 15:09 |
Возникает исключение при TStream.Free | eks-s | Работа с сетью в Delphi | 16 | 10.03.2008 13:43 |
Исключение EIdReadTimeout | Pedro | Работа с сетью в Delphi | 1 | 22.09.2007 22:51 |
Неуловимое исключение в Apro компонентах | Slaveg123 | Работа с сетью в Delphi | 0 | 01.07.2007 00:28 |