![]() |
|
|
![]()
|
|
| Teleport |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 557 Регистрация: 5.7.2008 Где: Прибалтика Репутация: 1 Всего: 6 |
Простой вопрос не могу решить.
Вобщем мой пример - простой органайзер. Ну или вообще записная книжка. На форме есть календарь, в котором отображен текущий месяц по дням. Там можно другие месяцы выбирать и другие года. При нажатии кнопки Сохранить на выбранную дату записыввается событие (из поля Edit) и сохраняется в базу данных. При нажатии кнопки Очистить - выбранное в DBGrid событие из бд удаляется. Думаю общий смысл объяснил. Теперь вопрос: Мне нужно чтобы в StringGrid отображались все дни, в которых есть сохраненные события, на текущем или другом выбранном месяце. Скидываю исходник. Там мало кода. Самое основное. Присоединённый файл ( Кол-во скачиваний: 8 )
na_forum_ADO.rar 14,00 Kb |
|||
|
||||
| Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 35 Всего: 130 |
"Class TCalendar not found".
Ну а вообще запрос мне пришёл в голову такой:
(выдираешь месяц из этого календаря и подставляешь вместо .05. ) -------------------- There's nothing left but silent epitaphs. |
|||
|
||||
| Teleport |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 557 Регистрация: 5.7.2008 Где: Прибалтика Репутация: 1 Всего: 6 |
как это не найден??
В ДЕлфи 7 на вкладке Samples !!! 6-ой слева! Вроде стандартный компонент... Никогда проблем не было с ним... хм... У меня же без проблем компилируется... А вот з запросом сложнее - я вообще два дня уже мучаюсь - не могу понять как этот запрос делается... С ADO только начал работать. |
|||
|
||||
| Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 35 Всего: 130 |
А, это там ещё TGauge должен быть? У меня этой вкладки нет, видимо, я её почему-то не поставил при инсталляции. Что конкретно? Запрос через AdoQuery делается, ищи примеры. Это сообщение отредактировал(а) Данкинг - 10.7.2008, 02:01 -------------------- There's nothing left but silent epitaphs. |
|||
|
||||
| Teleport |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 557 Регистрация: 5.7.2008 Где: Прибалтика Репутация: 1 Всего: 6 |
примеры находил с AdoQuery, но я чего-то не понимаю, все равно не получается. Несколько дней подряд. Конкретно нужно: В таблице есть поле с датами и поле с событиями. день месяц год - событие. например: 01.07.2008 - событие1 05.07.2008 - событие2 19.07.2008 - событие3 03.08.2008 - событие4 22.08.2008 - событие5 08.09.2008 - событие6 11.09.2008 - событие7 18.09.2008 - событие8 15.07.2008 - событие9 12.07.2008 - событие 10 В программе я ввожу значение месяца и года - и программа мне выдает список дней, в которых записаны события. Если я ввожу 08 месяц и 2008 год, то получаю список (в StrinGrid желательно): 03 22 А если ввожу 07 и 2008, то получаю 01 05 12 15 19 Думаю, что это очень просто, но вот засел и немогу. Это сообщение отредактировал(а) Teleport - 10.7.2008, 14:04 |
|||
|
||||
| 1Andrey1 |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 78 Регистрация: 8.9.2007 Репутация: 1 Всего: 4 |
ничего не понятно что тебе нужно...
добавляешь компонент TADOQuery(практически так же как и TADOTable, т.е. связываешь с datasource и dbgrid), у него есть свойство "SQL" вот туда вписываешь запрос и выставляешь active в true. На счет составления запроса читай доки по SQL. Например вот этот запрос "select * from 1t" покажет все записи из твоей таблицы, если надо не все, а какието определенные, то обычно используется конструкция where like (то, о чем тебе говорил Данкинг ) а вообще почитай любую книжку по работе с БД P.S. В ConnectionString лучше указывать не абсолютный путь к базе данных, а просто имя файла, тогда программа будет искать базу рядом с экзешником, где бы он не находился |
|||
|
||||
| Teleport |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 557 Регистрация: 5.7.2008 Где: Прибалтика Репутация: 1 Всего: 6 |
я уже не знаю как правильно объяснить, что мне нужно
вот кидаю исходник вместе с базой данных. Там есть Edit1 и Edit2 и кнопка Button. Также есть в папке рядом база данных в Access. А в базе данных есть таблица. В таблице есть два поля. Дата и Событие. Вот как заполнены эти поля: 01.07.2008 - событие1 05.07.2008 - событие2 19.07.2008 - событие3 03.08.2008 - событие4 22.08.2008 - событие5 08.09.2008 - событие6 11.09.2008 - событие7 18.09.2008 - событие8 15.07.2008 - событие9 12.07.2008 - событие 10 так вот в программе я ввожу в Edit1 месяц , а в Edit2 - год. И нажимаю Button. В итоге мне нужно, чтобы куда-нибудь на форме, хоть в DBGrid, хоть куда вывелся список дней, на которые записаны события. вот в 07 месяце и 2008 году 5 событий. А дни, в которые записаны события вот такие: 01, 05, 12, 15, 19. - это видно в таблице выше. ввожу в Edit1 07, а в Edit2 - 2008 - и мне должен быть выведен список 01, 05, 12, 15, 19 ввожу в Edit1 08, а в Edit2 - 2008 - и мне должен быть выведен список 03, 22 ввожу в Edit1 09, а в Edit2 - 2008 - и мне должен быть выведен список 11, 18. Присоединённый файл ( Кол-во скачиваний: 5 )
na_forum_ADO111.rar 13,76 Kb |
|||
|
||||
| 1Andrey1 |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 78 Регистрация: 8.9.2007 Репутация: 1 Всего: 4 |
вот лови
там единственное что может быть непонятно это вот это:
символ "%" в SQL запросе обозначает любое количество любых символов. То есть получается у нас запрос типа "показать все записи, поле "date" которых сдержит любые символы, плюс то что мы ввели в эдиты" Это сообщение отредактировал(а) 1Andrey1 - 11.7.2008, 23:01 Присоединённый файл ( Кол-во скачиваний: 7 )
adoquery.rar 9,67 Kb |
|||
|
||||
| Teleport |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 557 Регистрация: 5.7.2008 Где: Прибалтика Репутация: 1 Всего: 6 |
2 1Andrey1 - да!!! то что надо!! Спасибо огромное!!!
На четырех форумах спрашивал, никто не сказал как сделать Только вот еще пара вопросиков: 1) строка
не прокатывает. Пишет ошибку. [Error] Unit1.pas(55): Undeclared identifier: 'AsWideString' 2) а если использовать не AsWideString, а AsString , то вроде компилируется, но ListBox отображает одинаковые значения всегда: 01.07.2008 01.07.2008 01.07.2008 01.07.2008 01.07.2008 или 03.08.2008 03.08.2008 Можно чтобы разные показывал? вот так: 01.07.2008 05.07.2008 12.07.2008 15.07.2008 19.07.2008 чего еще написать, чтобы AsWideString компилировалась нормально? |
|||
|
||||
| 1Andrey1 |
|
||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 78 Регистрация: 8.9.2007 Репутация: 1 Всего: 4 |
Блин, точно... это я забыл... должно быть вот так:
а на счет WideString и String без разницы просто это моему 2007 delphi больше нравятся большие строки Это сообщение отредактировал(а) 1Andrey1 - 11.7.2008, 23:40 |
||||
|
|||||
| Teleport |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 557 Регистрация: 5.7.2008 Где: Прибалтика Репутация: 1 Всего: 6 |
Здорово!!!
Спасибо!!! Выручил офигительно просто. Все работает как надо! Теперь без проблем привяжу все к своей программке ))))))))))))) Еще раз - ОГРОМНОЕ СПАСИБО! |
|||
|
||||
![]()
|
| Правила форума "Delphi: Базы данных и репортинг" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Обязательно указание: 1. Базы данных (Paradox, Oracle и т.п.) 2. Способа доступа (ADO, BDE и т.д.)
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |