Автор | Сообщение |
|
| постоянный участник
|
Пост N: 2766
Зарегистрирован: 12.09.06
|
|
Отправлено: 21.03.13 23:11. Заголовок: Как создать поле ID для рабочей базы ?
Всем привет. Потребовалось мне для своей (уже рабочей) базы сделать уникальный ID - числовое поле. В моей базе уже есть в принципе уникальный ID, состоящий только из 3 полей: Номер заявки ( N 8) - каждый месяц заявка начинается с номера 1, т.е. для первого месяца 101, для второго 102 и т.д. Номер заявки получается уникальным только в текущем году. Дата заявки (D 8) Время заявки (N 4) Как бы из этих полей получить уникальное число ? Подскажите пожалуйста как... Заранее спасибо.
|
|
|
Ответов - 17
[только новые]
|
|
|
| |
Пост N: 789
Зарегистрирован: 11.06.10
|
|
Отправлено: 22.03.13 00:26. Заголовок: Andrey пишет: Как б..
Andrey пишет: цитата: | Как бы из этих полей получить уникальное число ? |
|
Ладно, номер заявки начинается с 1 каждый месяц, а во что дату превращаете, что номер получается уникальным только в текущем году, или дату не используете? Используйте тогда номер заявки + тип поля @(; T,8; TimeStamp HB_FT_TIMESTAMP,8)
|
|
|
|
| постоянный участник
|
Пост N: 2767
Зарегистрирован: 12.09.06
|
|
Отправлено: 22.03.13 00:44. Заголовок: AlexMyr пишет: а во..
AlexMyr пишет: цитата: | а во что дату превращаете, что номер получается уникальным только в текущем году, или дату не используете? |
| Дату не превращаю ни во что, использую только месяц. Просто до этого не стояла задача сделать ID заявки. А вот сейчас потребовалось. AlexMyr пишет: цитата: | Используйте тогда номер заявки + тип поля @(; T,8; TimeStamp HB_FT_TIMESTAMP,8) |
| Не совсем понял как использовать ? Не желательно вводить новые поля в базу. Можно ли превратить дату в уникальное число ? cVal := LTRIM(STR(FIELD->NZA))+DTOS(FIELD->DATEZA)+PADL( LTRIM(STR(FIELD->TIMEZA)) ,4,"0") ------- Номер заявки ( N 8) + Дата заявки (D 8) + Время заявки (N 4) ? VAL(cVal) -> будет ли уникальным числом ?
|
|
|
|
| |
Пост N: 9
Зарегистрирован: 21.02.13
|
|
Отправлено: 22.03.13 00:57. Заголовок: YYYY<номер заявк..
YYYY<номер заявки>
|
|
|
|
| постоянный участник
|
Пост N: 180
Зарегистрирован: 17.02.12
|
|
Отправлено: 22.03.13 08:06. Заголовок: Andrey пишет:Не жела..
Andrey пишет: цитата: | Не желательно вводить новые поля в базу |
| Здорово, а у нас на законодательном уровне требуют наличие: 1. ID в течении года уникальное 2. Дату создания записи 3. Дату модификации записи 4. Дату удаления записи 5. Кто проводил операцию (User) Это основные параметры для проверяющих. Наличие ID на всех внешних распечатках.
|
|
|
|
| постоянный участник
|
Пост N: 106
Зарегистрирован: 29.05.10
|
|
Отправлено: 22.03.13 09:18. Заголовок: SergKis пишет: Можн..
Андрей пишет: цитата: | Можно ли превратить дату в уникальное число ? |
| Легким движением руки .... Например число дней прошедших со дня Великой Октябрьской Революции до этой даты! Можешь к этому добавить номер заявки :) P.S. Вот ,Вы как то интересовались - http://forums.fivetechsupport.com/viewtopic.php?f=3&t=25917&sid=4267b85fa549bc7c4e25a8eec73f992d и это значит ,что - On the server you are running a Harbour (+ FIveWeb) app and of course you can manage DBFs etc, as it is a Harbour app ( или MySQL ) и , как следствие , работает на iPad и т.д.
|
|
|
|
| |
Пост N: 791
Зарегистрирован: 11.06.10
|
|
Отправлено: 22.03.13 09:39. Заголовок: SergKis пишет: 4. Д..
SergKis пишет: Оффтоп: Это что и Pack не сделаешь, и ранее помеченную на удаление запись вновь не используешь?
|
|
|
|
| Администратор
|
Пост N: 2779
Зарегистрирован: 23.05.05
|
|
Отправлено: 22.03.13 09:40. Заголовок: ММК пишет: Легким д..
ММК пишет: цитата: | Легким движением руки .... Например число дней прошедших со дня Великой Октябрьской Революции до этой даты! |
| L2Bin(НомерЗаявки) + I2Bin(Дата-CTOD("07.11.1917")) + I2Bin(Время) В число переводить необязательно. Строка для ID сойдет
|
|
|
|
| |
Пост N: 91
Зарегистрирован: 19.05.05
|
|
Отправлено: 22.03.13 09:57. Заголовок: SadStar55 писал YYYY..
SadStar55 писал Обеспечивает уникальность без всяких вывертов
|
|
|
|
| постоянный участник
|
Пост N: 107
Зарегистрирован: 29.05.10
|
|
Отправлено: 22.03.13 10:08. Заголовок: Pasha пишет: В числ..
Pasha пишет: цитата: | В число переводить необязательно. Строка для ID сойдет |
| Жедание Андрея для меня превыше всего !!!! :)))) Андрей пишет: цитата: | Потребовалось мне для своей (уже рабочей) базы сделать уникальный ID - числовое поле. |
|
|
|
|
|
| постоянный участник
|
Пост N: 181
Зарегистрирован: 17.02.12
|
|
Отправлено: 22.03.13 10:45. Заголовок: AlexMyr пишет:Оффтоп..
AlexMyr пишет: цитата: | Оффтоп: Это что и Pack не сделаешь, и ранее помеченную на удаление запись вновь не используешь? |
| Если есть log файл, то можно pack, если нет ... . Это никому не интересно - выдать надо всю историю изменений, если просят.
|
|
|
|
| Администратор
|
Пост N: 2780
Зарегистрирован: 23.05.05
|
|
Отправлено: 22.03.13 10:55. Заголовок: SergKis пишет: Здор..
SergKis пишет: цитата: | Здорово, а у нас на законодательном уровне требуют наличие: |
| Сурово у вас в Европе. Но у нас, как я понимаю, такое еще впереди. Наши обезьяны обязательно скопируют передовой опыт :-) Но это, как я понимаю, касается расчетов с клиентами ?
|
|
|
|
|
| постоянный участник
|
Пост N: 2768
Зарегистрирован: 12.09.06
|
|
Отправлено: 22.03.13 11:48. Заголовок: Pasha пишет: L2Bin(..
Pasha пишет: цитата: | L2Bin(НомерЗаявки) + I2Bin(Дата-CTOD("07.11.1917")) + I2Bin(Время) В число переводить необязательно. Строка для ID сойдет |
| Нет, нужно число ! Если сделать VAL(этой строки), то число будет уникальным ?
|
|
|
|
| Администратор
|
Пост N: 2781
Зарегистрирован: 23.05.05
|
|
Отправлено: 22.03.13 12:05. Заголовок: Нет, двоичное предст..
Нет, двоичное представление числа нельзя передавать функции val nick_mi пишет: цитата: | SadStar55 писал цитата: YYYY<номер заявки> Обеспечивает уникальность без всяких вывертов |
| Чем не вариант ? Ведь номер заявки уникален в пределах года.
|
|
|
|
| постоянный участник
|
Пост N: 2769
Зарегистрирован: 12.09.06
|
|
Отправлено: 22.03.13 12:28. Заголовок: Pasha пишет: Чем не..
Pasha пишет: цитата: | Чем не вариант ? Ведь номер заявки уникален в пределах года. |
| Да уникален. Иногда простое не всегда увидишь и оценишь.... Спасибо БОЛЬШОЕ всем за помощь ! Буду делать тогда этот вариант...
|
|
|
|
| постоянный участник
|
Пост N: 182
Зарегистрирован: 17.02.12
|
|
Отправлено: 22.03.13 15:36. Заголовок: Pasha пишет:Но это, ..
Pasha пишет: цитата: | Но это, как я понимаю, касается расчетов с клиентами ? |
| Документооборот, связанный с налогами и все проводки баланса .
|
|
|
|
| |
Пост N: 792
Зарегистрирован: 11.06.10
|
|
Отправлено: 22.03.13 15:45. Заголовок: SergKis пишет: Доку..
SergKis пишет: цитата: | Документооборот, связанный с налогами и все проводки баланса . |
|
Как они это проверяют, можно ж доставить, исправить, ... в этих полях?
|
|
|
|
| постоянный участник
|
Пост N: 183
Зарегистрирован: 17.02.12
|
|
Отправлено: 22.03.13 17:19. Заголовок: AlexMyr пишет:Как он..
AlexMyr пишет: цитата: | Как они это проверяют, можно ж доставить, исправить, ... в этих полях? |
| Так документы все строгой отчетности (было время их надо было покупать, потом получать список номеров на организацию). Сейчас можно в Internete через спец. сайт кучу форм руками заполнить, или автоматизированно xml-ы загрузить в систему. На импорте xml есть контроль. Есть спец.сайт по клиентам LV и ES, при заключении договора с клиентом бухг. должен проверить данные о клиенте и если их нет - клиент левый ...
|
|
|
|