| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Firebird, Interbase > Помогите написать триггер или UDF |
| Автор: Urvin 11.2.2008, 19:15 |
| Если честно, даже не знаю в какую сторону смотреть.... Суть: заказы в базе данных помимо собственного ID имеют более гуманный "номер", составляющийся из цифр текущего года, месяца и порядкового номера заказа в этом месяце вида ММГГ-ННН. т.е. Например, за последние два месяца заказы могут выглядеть так: 0108-001 // январь 0108-002 0108-003 0108-004 0208-001 // февраль пошел 0208-002 0208-003 ... Хотелось бы, чтобы при добавлении нового заказа автоматически на стороне СУБД генерировался не только ID, но и этот номер заказа. Подскажите, как реализовать данную хотелку? На дельфях функцию NextNumber(PreviousNumber: string) реализовал. |
| Автор: Urvin 11.2.2008, 22:19 | ||||||||
Я сделал библиотечку на Delphi:
Cкомпилировал в v_number.dll, которую кинул её в .../firebird_2_0/UDF В базу добавил так:
и даже написал триггер:
К сожалению, оно даже не работает с запросом
Где я наврал? |
| Автор: Urvin 11.2.2008, 23:44 | ||||
простите, был напуган |
| Автор: Akella 12.2.2008, 01:42 |
| почитай про extract и про Copy Добавлено через 13 минут и 55 секунд сеглдня лень тебе написать процедуру, напомни завтра в PM, постараюсь дать код |