Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Access
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.01.2011, 11:52   #21
mortal2010
Пользователь
 
Регистрация: 20.01.2011
Сообщений: 18
По умолчанию

Teslenko_EA,

Ваш вариант подсчета итогов работает!!!
Несмотря на то,что я до конца еще не въехал в синтаксис VBA - ввел код функции, сделал запрос и все красиво)
Огромное спасибо!))
Есть еще просьба: при заполнении месяца (выбор месяца из выпадающего списка и нажатие кнопки "Заполнить месяц") появляется окно VBA "Введите параметр в" (нужно ввести букву "в" - выходные) и тогда происходит автоматическое заполнение выходных дней. Дак вот вопрос - как избавиться от этого??
И еще если можно сделать проверку на дублирование записей в таблице tabel (пробовал два ключевых поля, но что-то не работает), может можно программно??
Заранее спасибо!


P.S. Делал все в MS Access 2007 в формате 2002-2003 .mdb
Вложения
Тип файла: rar табель2007.rar (223.5 Кб, 14 просмотров)
mortal2010 вне форума Ответить с цитированием
Старый 28.01.2011, 22:29   #22
Teslenko_EA
Участник клуба
 
Регистрация: 10.08.2009
Сообщений: 1,796
По умолчанию

Здравствуйте mortal2010.
"..сделать проверку на дублирование записей в таблице tabel (пробовал два ключевых поля ." - в Вашем случае ключевые поля не панацея.
"..может можно программно?.." - тоже не выход, проще использовать возможности SQL создать в таблице уникальный индекс, это можно сделать с помощью подобной конструкции:
CREATE UNIQUE INDEX NAME_UNIC ON tabel ( ID_USER, ID_MON, ID_YEAR )
После её выполнения в таблице будет создан индекс NAME_UNIC не позволяющий создать две записи с одинаковым значением полей ID_USER, ID_MONI и ID_YEAR.
Если Вы не отказались от идеи "горизонтального" табеля, рекомендую внести некоторые изменения благодаря которым перспективы использования Вашей БД увеличатся.
1. избавиться от таблицы tMon хранить названия месяцев бесполезное занятие в любой момент их можно получить : Format(Date(), "mmmm"), не стоит создавать объекты для хранения подобных "справочных" данных.
2. таблица tUser нуждается в расширении, рекомендую добавить поле Дата_увольнения/перевода и несколько полей позволяющих правильно идентифицировать запись, например табельный номер, дата рождения, телефон... Поверьте, в перспективе эти изменения пригодятся.

Успехов Вам.
Евгений.

P.S. свои сообщения я подписываю в надежде, что обращаться ко мне будут по имени.
Teslenko_EA вне форума Ответить с цитированием
Старый 31.01.2011, 10:55   #23
mortal2010
Пользователь
 
Регистрация: 20.01.2011
Сообщений: 18
По умолчанию

Здравствуйте, Евгений.
Цитата:
Сообщение от Teslenko_EA Посмотреть сообщение
проще использовать возможности SQL создать в таблице уникальный индекс, это можно сделать с помощью подобной конструкции:
CREATE UNIQUE INDEX NAME_UNIC ON tabel ( ID_USER, ID_MON, ID_YEAR )
Круто, то что надо! Остальное позже. Спасибо.
mortal2010 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как обновить столбец одной таблицы из другой таблицы kairat_tuyakbaev Microsoft Office Access 2 24.09.2010 12:46
Как обновить столбец одной таблицы из другой таблицы kairat_tuyakbaev SQL, базы данных 0 23.09.2010 23:42
Столбец таблицы с 2 типами данных FroL25 Общие вопросы C/C++ 1 08.07.2010 16:02
авт. перенос данных из нескольких столбцов одной таблицы в один столбец другой таблицы A_ALL Microsoft Office Access 7 24.08.2009 21:13
транспонирование строки таблицы в столбец kate158 БД в Delphi 15 18.05.2009 12:51