Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Delphi: Базы данных и репортинг > EhLib создание строк в DbGridEh |
Автор: FishBon 11.4.2013, 17:28 | ||
Здравствуйте. Помогите пожалуйста в решении проблемы. Есть БД Access: две таблицы сотрудники и время. Использую связку AdoConnection-AdoDataDriverEhGrid-MemTableEh-DataSource-DbgridEh в таблице время отображается время и дата когда сотрудник отпрашивался с работы, и когда отработал (рис.1): ![]() Естественно заполняться она будет не в каждый день, а помере как сотрудники отпрашиваются или отрабатывают, соответственно числа будут не по порядку. В dbgrideh хочу выводить данные, по каждому дню текущего месяца, такого вида (рис.2): ![]() чтобы пользователь работающий с программой проставлял время прямо в DbgriEh, но физически в БД данные идут не по числам (рис. 1) Пробовал через вычисляемое поле, его сделал в MemTableEh и в событии OnCalcFields пишу:
Подскажите как можно это сделать? |
Автор: FishBon 17.4.2013, 10:23 |
неужели ни кто не подскажет? |
Автор: Akella 17.4.2013, 10:57 |
Нужно вникнуть в твой вопрос вначале ![]() Ты уверн, что именно так хочешь сделать? Добавлено через 30 секунд Ещё раз. Что ИМЕННО? |
Автор: FishBon 17.4.2013, 11:38 |
В БД числа будут идти не по порядку, так как на каждого сотрудника будет вестись запись по числам когда он брал отгул. Это будет выглядеть в БД, как например (рис. 1): сотрудник под номером 5 (Id_Sotrud) брал отгул 09 и 11 числа на определенное время. А пользователю (который будет вести учет) необходимо на форме в dbgrideh отображать по порядку все числа текущего, соотвественно с 01 по 30 (рис. 2), в строках которых будет записи где были отгулы, а остальные пустые. Если я вывожу инфу запросом из БД, оно мне показывает естественно только числа где есть записи. А как сделать чтобы отображались все строки месяца? |
Автор: Isaev 3.4.2014, 05:07 |
Не буду плодить лишние темы Используя такую же связку: AdoConnection-AdoDataDriverEhGrid-MemTableEh-DataSource-DbgridEh Как можно ли программно создать таблицу? |
Автор: Akella 3.4.2014, 12:03 |
Видимо, SQL-запросом. Пиши в соответствующий раздел по используемой СУБД. |
Автор: Isaev 3.4.2014, 12:12 |
Это то как раз ясно, проблема в том, с помощью каких методов какого компонента он передаются Создал базу данных пустую, накидал компоненты, связал их, подключился А наполнить её надо бы программно |
Автор: Akella 5.4.2014, 10:26 |
Это написано в любой книге типа Delphi + Базы данных для начинающих или можно поискать уроки типа Базы данных в Delphi. |
Автор: Isaev 5.4.2014, 20:10 | ||
Обычно в книгах не описывают работу с коммерческими компонентами по крайней мере я ни разу не видел ни в одной |
Автор: Akella 7.4.2014, 09:07 |
Принцип выполнения SQL запросов у всех одинаковый. Мало того, компоненты ADO не считаются коммерческими, т.к. идут в "комплекте" с Delphi. Добавлено через 1 минуту и 24 секунды если тебе лень придумать запрос, то вот: https://www.google.com/search?q=sql+create+table&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:ru:official&client=firefox-a&channel=fflb |
Автор: DYUMON 7.4.2014, 14:51 |
ни фига не понял суть вопроса, но что то тут не так ![]() |
Автор: Isaev 7.4.2014, 16:39 | ||
Читаете хоть вопрос то? Я же написал, используется связка: AdoConnection-AdoDataDriverEhGrid-MemTableEh-DataSource-DbgridEh EhLib - коммерческий компонент что с составлением запроса нет проблемм я тоже написал, sql знаю проблема в том, какой метод какого компонента из этой EhLib отвечает за передачу этого SQL запроса И всего лишь... Если с ним не работали и не можете ответить, зачем писать бред? Если можете, напишите ответ одной строкой |
Автор: superVad 8.4.2014, 11:43 |
Isaev, берешь TADOQuery и исполняешь в нем любые запросы. Или тебе обязательно в гамаке и стоя? |
Автор: Akella 8.4.2014, 16:41 | ||
При чем здесь эта связка? Добавлено @ 16:43
Библиотека EhLib тут при чём? EhLib - это не один компонент, а цела библиотека, где живут несколько разных компонент. |
Автор: Akella 9.4.2014, 08:52 |
Как раз бред пишешь ты |