Rambler's Top100
Форум: MS ACCESSVBVBA MS OfficeMS SQL server
Новые сообщения: 0000

Форум: MS ACCESS

Вопросы связанные с MS ACCESS

Обновить визитку
Участники «Online»
Все участники

 
 

Доброго времени суток, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Уникальность полей
 
 автор: ADFluke   (12.12.2008 в 12:06)   личное сообщение
 
 

Добрый день.
Интересует вопрос уникальности связки полей.
Имеется клиентская база - необходимо обезопасить себя от повторного введения фирм в базу (поток операторов большой). Сейчас сделана уникальность поля по "Названию организации", но это не совсем устраивает, потому что фирм с одинаковых названий много, также и адреса и телефоны повторяются.
Можно ли сделать уникальность записи по связке полей название+адрес+телефон ? И как это реализовать? (базу могу выложить)

  Ответить  
 
 автор: osmor   (12.12.2008 в 12:12)   личное сообщение
 
 

в конструкторе таблиц есть кнопочка "индексы"
там можно создать индекс по нескольким полям

  Ответить  
 
 автор: ADFluke   (15.12.2008 в 14:05)   личное сообщение
 
 

Сделал индекс по нескольким полям, но это немного не то ...теперь он проверяет уникальность каждого поля по отдельности, а надо именно связка Название+Телефон
(при совпадении одинакового Названия и Телефона - выдается ошибка, если телефон или название хоть как то отличается - то происходит запись)
Потому как и названия и телефоны могут у разных организаций повторяться :(

  Ответить  
 
 автор: Lukas   (15.12.2008 в 14:32)   личное сообщение
 
 

Прицепите скрин окошка индексов.

  Ответить  
 
 автор: ADFluke   (15.12.2008 в 14:49)   личное сообщение
11 Кб.
 
 

Телефон - также как и Название (нет-да-нет)

в конструкторе таблицы в характеристиках этих полей - поставил Обязательное поле -да, Индексированное поле - да (совпадения не допускаются)

  Ответить  
 
 автор: Lukas   (15.12.2008 в 15:06)   личное сообщение
27 Кб.
 
 

Хотелось так?:

  Ответить  
 
 автор: ADFluke   (15.12.2008 в 15:15)   личное сообщение
 
 

умм... ну я не Ас в акцессе - ну хотелось бы связку :)
т.е. фирма в городе и в области может зарегистрована под одним названием, на одном адресе могут располагаться несколько контор, на одном телефоне тоже - вот нужно какую то уникальность

видимо да - это то что вы показали.

п.с. попробовал как Вы показали - все ок! идет проверка полей по очереди (если одно из них отличается-то запись идет) - спасибо :)

скоро еще чего -нибудь спрошу

  Ответить  
 
 автор: ADFluke   (15.12.2008 в 17:04)   личное сообщение
35 Кб.
 
 

Уважаемые гуру :)
есть еще вопросик - Как сделать так, чтобы после нажатия кнопки - форма закрывалась?
т.е. есть заставка - после нажатия на кнопку одного из разделов - надо чтобы она закрывалась.

  Ответить  
 
 автор: osmor   (15.12.2008 в 17:43)   личное сообщение
 
 

docmd.close

  Ответить  
 
 автор: ADFluke   (15.12.2008 в 18:05)   личное сообщение
 
 

Спасибо :)

Еще интересует всплывающие слова, т.е. - если мы уже вводили город "Санкт-Петербург" - то в след раз оно высветилось.

  Ответить  
 
 автор: Lukas   (15.12.2008 в 18:21)   личное сообщение
 
 

...всплывающие слова...высветилось...
Ху из?

  Ответить  
 
 автор: osmor   (15.12.2008 в 18:24)   личное сообщение
 
 

поле со списком

  Ответить  
 
 автор: ADFluke   (15.12.2008 в 18:25)   личное сообщение
3 Кб.
 
 

не-не ...как в экселе допустим ...автозаполнение этакое

  Ответить  
 
 автор: Lukas   (15.12.2008 в 18:27)   личное сообщение
 
 

Да-да.
поле со списком

  Ответить  
 
 автор: ADFluke   (15.12.2008 в 18:29)   личное сообщение
 
 

Пользователю не позволено выбирать город из списка городов - он пишет его ручками :)
они теперь парят меня этим автозаполнением - чтобы 300-400 раз на дню не писать один и тот же город.

к сожалению руководство таково и хочет именно так

  Ответить  
 
 автор: Lukas   (15.12.2008 в 18:34)   личное сообщение
 
 

Что мешает пользователю писать ручками в поле со списком?
Почему пользователю запрещено выбирать из списка?

  Ответить  
 
 автор: ADFluke   (15.12.2008 в 18:40)   личное сообщение
 
 

Специфика руководства такова :( Сам по себе информационный отдел обладает свойством большой текучести кадров - вот руководство решило так чтобы все вбивали ручками, а я решил юзабилити заняться.

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

п.с. Всё - я кажется понял насчет поля со списком Все ок - Спасибо!

  Ответить  
 
 автор: Lukas   (15.12.2008 в 18:58)   личное сообщение
 
 

область, район, поселок
Для этого существуют иерархические справочники.
мало ли не то выберут
Вероятность значительно ниже, чем вбивали ручками

большой текучести кадров
А это напрямую связано с Специфика руководства.

Не парьтесь, велено ручками - значит ручками, велят ножками - будем ножками.

  Ответить  
 
 автор: ADFluke   (15.12.2008 в 19:11)   личное сообщение
 
 

мало ли не то выберут
Вероятность значительно ниже, чем вбивали ручками


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

  Ответить  
 
 автор: ADFluke   (16.12.2008 в 11:30)   личное сообщение
 
 

что то я запутался с этим полем со списком :(
я в конструкторе таблицы делаю из поля - поле со списком ...соотв. в форме тоже самое - правильно?
но что то забыл еще сделать для всплывания подсказок =(

  Ответить  
 
 автор: Lukas   (16.12.2008 в 13:45)   личное сообщение
 
 

Видимо, назначить источник строк полю со списком.

  Ответить  
 
 автор: ADFluke   (19.12.2008 в 13:15)   личное сообщение
 
 

с автозаполнением - все супер!

  Ответить  
 
 автор: ADFluke   (19.12.2008 в 13:16)   личное сообщение
 
 

Есть еще вопросик...
У меня есть поле "Дата последнего обращения" - 00.00.0000; Где народ вносит дату последнего обращения на СТО (база авто клиентов).
Дак вот запрос интересует по дате последнего обращения - месяц имеется в виду.
Т.е. я в поле Date_last_obr - написал [введите дату], но это надо ввести конкретную дату - можно ли и как сделать чтобы вносить только месяц (месяц+год) и соотв. в запросе выскакивали все записи этого месяца разных годов (все записи этого месяца этого года) ?
...как бы вот

  Ответить  
 
 автор: Lukas   (19.12.2008 в 18:35)   личное сообщение
 
 

1. Противоречие:
У меня есть поле "Дата последнего обращения" - 00.00.0000<>Т.е. я в поле Date_last_obr - написал [введите дату]
2. Выражайтесь яснее коллега:
в запросе выскакивали
3. Дату нужно хранить (вводить) целиком.
4. Необходимые наборы записей получаем применением в запросах условий по полю даты с применением функций, например FORMAT.

  Ответить  
 
 автор: ADFluke   (22.12.2008 в 16:12)   личное сообщение
 
 

Усё ..нашли компромисс с отчетом этим :)
решили отказаться от него вовсе.

  Ответить  
 
 автор: Lukas   (22.12.2008 в 16:52)   личное сообщение
 
 

Сегодня решили отказаться, а завтра снова понадобится.
Такие задачи встречаются часто.
Нужно научиться их решать, в последствии пригодится.

  Ответить  
 
 автор: ADFluke   (25.12.2008 в 09:48)   личное сообщение
 
 

Доброе утро!
Проблемка такова.... при распечатки отчета на печать выводится чистый лист - лист с инфой - чистый лист - лист с инфой и тд. Вообщем получается что после каждого печатного листа выходит еще чистый лист - что само по себе не есть хорошо :(
записей порядком 600, на лист выводится по 30 записей и в итоге получается что оператору потом сидеть еще и вытаскивать чистые бамажки ...
http://slil.ru/26480301 -собственно одна из них

  Ответить  
 
 автор: ГлазастыйМышь   (25.12.2008 в 11:33)   личное сообщение
 
 

проверь поля отчета
Похоже отчет слишком широкий и справа остается свободное место. Вот он на одну страницу по ширине и не влазит, соответственно печатается на второй, но информации там нет.

  Ответить  
 
 автор: ADFluke   (25.12.2008 в 11:37)   личное сообщение
 
 

тьфу ты блин ....вот ж я.... =))
все ок - действительно поля широкие =)

Спасибо!

  Ответить  
HiProg.com - Технологии программирования
Rambler's Top100 TopList