ОСОБО НЕОПАСЕН Опубликовано 28 марта, 2011 Поделиться Опубликовано 28 марта, 2011 Обсуждаем различные языки программирования (делфи, паскаль...) и вопросы с ними связанные. -- Собственно первый вопрос задам я : Нужно было создать приложение работающее с Базой Данных, чтобы там был поиск по телефону (строка ввода и кнопка, при нажатии которой открывается новая форма с результатами поиска). Я создал, перепроверил - вроде бы всё правильно, ошибок не нашёл, но программа всё равно почему-то не хочет переходить на новую форму при нажатии на Кнопку поиска всплывает ошибка. Ошибка: Код кнопки поиска: procedure TForm1.Button1Click(Sender: TObject); begin telephone:=Edit1.Text; form1.adoQuery1.Active:=false; // делаем компонент запроса неактивным form1.adoQuery1.parameters.ParamByName('telephone').Value:=Edit1.Text; form1.adoQuery1.Active:=true; // делаем компонент активным Form2.ShowModal; //для отображения результата используем форму end; Форма: SQL: Имя Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Dmitrius Опубликовано 29 марта, 2011 Поделиться Опубликовано 29 марта, 2011 О боже! тему в топку! Дожились Такой теме здесь вообще не место. Люди на форуме приходят расслабляться, а не обсуждать вот эту херь. Уж извините за кипеж... Имя Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Psychonaut Опубликовано 29 марта, 2011 Поделиться Опубликовано 29 марта, 2011 Dmitrius Благодаря подобной фигне, скажу мягче, ты на этом форуме и расслабляешься. (только уже веб-программирование, ну неважно, суть-то понял, я думаю) Имя Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Lionell Опубликовано 30 марта, 2011 Поделиться Опубликовано 30 марта, 2011 Особо опасен, Обычно такая ошибка возникает когда ты обращаешься к чему то несуществующему (форма не так названа, а ты обращаешься к ней так..). Вполне возможно, что та форма которую ты вызываешь не прописана в uses у той формы с которой ты вызываешь её.. В архив проект засунь, посмотрим чего там у тебя не так. Ps: узнаю М.Фленова Имя Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
BlackTemplar Опубликовано 30 марта, 2011 Поделиться Опубликовано 30 марта, 2011 (изменено) А зачем открывать новую форму для результатов поиска? Фильтруй данные в имеющейся таблице. Исключение говорит о том, что проблема не форме, а в запросе. Ругается на параметры. При входе в Button1Click, как я понимаю, form1.adoQuery.SQL.text уже заполнен вон тем запросом? А почему столбец и таблица по-русски написаны - ты их так с русскими именами и создавал? Вообще это конечно извращение, лучше по-английски... А еще лучше юзать C# Изменено 30 марта, 2011 пользователем BlackTemplar Имя Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
ОСОБО НЕОПАСЕН Опубликовано 30 марта, 2011 Автор Поделиться Опубликовано 30 марта, 2011 когда ты обращаешься к чему то несуществующему (форма не так названа, а ты обращаешься к ней так..). Дело в том, что насклько я помню, если в конпке есть только код перехода на другую форму без запроса на поиск, то переход нормально осуществляется Вполне возможно, что та форма которую ты вызываешь не прописана в uses у той формы с которой ты вызываешь её.. В архив проект засунь, посмотрим чего там у тебя не так. ой, ну это всё то я должен был нормально сделать В архив проект засунь, посмотрим чего там у тебя не так. ВОт оно http://depositfiles.com/files/zorum93m7 Запускать project1. В архиве почему-то не работат, так что придётся распаковать) -- А зачем открывать новую форму для результатов поиска? Так сказано в задании , хотя действительно и так можно было сделать.)) Исключение говорит о том, что проблема не форме, а в запросе. Ругается на параметры. При входе в Button1Click, как я понимаю, form1.adoQuery.SQL.text уже заполнен вон тем запросом? А почему столбец и таблица по-русски написаны - ты их так с русскими именами и создавал? Вообще это конечно извращение, лучше по-английски... Ой, я в этом sql совсем не варю - программа что я написал не работает, но преподаватель сидел минут 15 и не смог разобраться в чём дело. Имя Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
BlackTemplar Опубликовано 30 марта, 2011 Поделиться Опубликовано 30 марта, 2011 Ща качнем, глянем Имя Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
BlackTemplar Опубликовано 30 марта, 2011 Поделиться Опубликовано 30 марта, 2011 (изменено) del Изменено 30 марта, 2011 пользователем BlackTemplar Имя Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Lionell Опубликовано 30 марта, 2011 Поделиться Опубликовано 30 марта, 2011 йпть, ты в запросе обращаешься к таблице Справочник, который пустой почти и не содержит ничего, а тебе надо обращаться к таблице "Таблица1". Т.е перепиши запрос таким образом: 'SELECT *FROM Таблица1 WHERE Телефон Like:telephone' Имя Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
BlackTemplar Опубликовано 30 марта, 2011 Поделиться Опубликовано 30 марта, 2011 (изменено) Справочник, который пустой почти и не содержит ничего Там всего одна строчка, а столбца "телефон" по которому мы ищем и вовсе нет - вот и получается эксепшен, что нет параметра, по которому сработает запрос в бд. Изменено 30 марта, 2011 пользователем BlackTemplar Имя Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Lionell Опубликовано 30 марта, 2011 Поделиться Опубликовано 30 марта, 2011 а вообще, вот так лучше написать, удали в AdoQuery текст запроса, и на баттон повесь этот код: procedure TForm1.Button1Click(Sender: TObject); begin telephone:=Edit1.Text; form1.adoQuery1.Active:=false; // делаем компонент запроса неактивным form1.ADOQuery1.SQL.Text:='SELECT *FROM Таблица1 WHERE Телефон Like:telephone'; form1.ADOQuery1.Parameters.CreateParameter('telephone',ftInteger,pdInput,0,0); form1.adoQuery1.parameters.ParamByName('teleрhone' ).Value:=Edit1.Text; form1.adoQuery1.Active:=true; // делаем компонент активным Form2.ShowModal; //для отображения результата используем форму почему то пробел вставляет тут: 'teleph one',ftInteger,pdInput,0,0);, его там не должно быть.. Имя Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
BlackTemplar Опубликовано 30 марта, 2011 Поделиться Опубликовано 30 марта, 2011 (изменено) а вообще, вот так лучше написать, удали в AdoQuery текст запроса, и на баттон повесь этот код: Из AdoQuery удаляем. Но запрос в SQL.Text прописывать и создавать параметр только один раз нужно, а в button1click по вышеприведенному коду это будет делаться каждый раз. Я бы сделал так: form1.ADOQuery1.Active:=False; form1.ADOQuery1.SQL.text:='Select * From Таблица1 Where Телефон Like :telephone'; form1.ADOQuery1.Parameters.ParseSQL(form1.ADOQuery1.SQL.text, true); Подготовка запроса отдельно, это должно выполняться только один раз. В обработчик события создания формы можно поместить, например. Ну и по нажатию кнопки: procedure TForm1.Button1Click(Sender: TObject); begin form1.adoQuery1.Active:=false; form1.adoQuery1.parameters.ParamByName('telephone').Value:='%' + Edit1.Text + '%'; form1.adoQuery1.Active:=true; end; Ну и затем выдергиваешь рез-ты запроса из этого adoQuery1 и делаешь с ними, что хочешь Изменено 30 марта, 2011 пользователем BlackTemplar Имя Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Goodnight Опубликовано 30 марта, 2011 Поделиться Опубликовано 30 марта, 2011 Юзайте Ассемблер, ага Мое отношение к программированию варьируется в течение года (в зависимости от близости сессии и наличия предметов в сетке расписания) от - "ну что, нужно позаниматься, полезно же!" и до - "какого черта я пошла на факультет информатики?!". На данный момент довольно сильно недолюбливаю веб-программирование, так как ни C#, ни даже Бейсику нас отдельно не учили, однако все методички по предмету написаны именно на них! И разбирайтесь, как хотите ^^ А еще Microsoft Visual Studio 10 конечно красивый, но дюже глючный. Извиняйте, что не совсем по теме вопроса, но зато по теме топика - наболело Имя Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Lionell Опубликовано 30 марта, 2011 Поделиться Опубликовано 30 марта, 2011 предлагаю отписаться, кто на чём кодит я и не подозревал, что у нас тут программеры водятся. Что касается меня, то знаю Delphi, Php, C# учу по-тихоньку Имя Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
BlackTemplar Опубликовано 30 марта, 2011 Поделиться Опубликовано 30 марта, 2011 На Delphi забил примерно на 2ом курсе, когда начали ООП. После этого в основном MS Visual C#. MS Visual C++, php редко - делали там какие-то лабы и все Ну и на Java приходилось писать несколько непростых програмок, но C# мне удобнее. Имя Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Kisyulya Опубликовано 30 марта, 2011 Поделиться Опубликовано 30 марта, 2011 4 года училась этой мутотени, наверное умею программировать, но старательно заставляю себя забыть это как страшный-перстрашный сон. Стандартный набор навыков - ассемблер, С/С++, php. Веб-программирование поинтереснее. Java - со скрипом, но что-то помню. Какое-то резюме, ей-богу. Имя Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
BlackTemplar Опубликовано 30 марта, 2011 Поделиться Опубликовано 30 марта, 2011 У нас вот самые важные и интересные вещи рассказали на 2 и 3 курсах. Сейчас на 4ом, и я солидарен с Kisyulya - что-то всякой мутотени сильно прибавилось Имя Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Vagabond Опубликовано 30 марта, 2011 Поделиться Опубликовано 30 марта, 2011 4 года училась этой мутотени, наверное умею программировать, но старательно заставляю себя забыть это как страшный-перстрашный сон. Стандартный набор навыков - ассемблер, С/С++, php. Веб-программирование поинтереснее. Java - со скрипом, но что-то помню. Какое-то резюме, ей-богу. На 20 тысяч в месяц может быть со скрипом и потянет В Нерезиновке. Имя Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Kisyulya Опубликовано 30 марта, 2011 Поделиться Опубликовано 30 марта, 2011 На 20 тысяч в месяц может быть со скрипом и потянет В Нерезиновке. Это предложение? Чтобы хорошо зарабатывать, будучи программистом, это надо блин либо уметь это делать быстро и не напрягаясь, либо иметь чугунную задницу и быть готовым тратить кучу времени на работу. Имя Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Vagabond Опубликовано 30 марта, 2011 Поделиться Опубликовано 30 марта, 2011 Это предложение? Чтобы хорошо зарабатывать, будучи программистом, это надо блин либо уметь это делать быстро и не напрягаясь, либо иметь чугунную задницу и быть готовым тратить кучу времени на работу. Чтобы хорошо зарабатывать будучи программистом, нужно хорошо программировать и не быть специалистом "обо всем и ни о чем":) Качественный java developer это 70 + тысяч, качественный web components developer - это 100+ тысяч рублей. Вполне себе средства, я щщитаю) Причем это если работать на дядю) Имя Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Kisyulya Опубликовано 30 марта, 2011 Поделиться Опубликовано 30 марта, 2011 Чтобы хорошо зарабатывать будучи программистом, нужно хорошо программировать и не быть специалистом "обо всем и ни о чем":) Качественный java developer это 70 + тысяч рублей, качественный web components developer - это 100+ тысяч рублей. Вполне себе средства, я щщитаю) Ога ога, только попробуйте даже с нужными навыками это место получить К тому же понятие качества девелопера весьма и весьма неопределенные. Существует еще такая штука как специфика предприятий, которые подобные вакансии выбрасывают и многое, многое другое. Став "качественным" специалистом на одном месте не факт, что на аналогичное устроишься на те же самые 70+ или 100+, а повышать зарплату сотрудникам в соответствии с повышением их квалификации вообще не в чести у наших руководителей. Я к тому, что все это не просто, а вообще чтобы зарабатывать нормальные средства в любой области надо быть хорошим специалистом не "обо всем и не о чем". зы Да, устройство на высокооплачеваемую должность программиста это мое больное место. Имя Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Денис Опубликовано 30 марта, 2011 Поделиться Опубликовано 30 марта, 2011 и быть готовым тратить кучу времени на работу. Как и на любую другую работу. Она такая. Имя Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Kisyulya Опубликовано 30 марта, 2011 Поделиться Опубликовано 30 марта, 2011 Как и на любую другую работу. Она такая. Мой опыт подсказывает, что ненормированность рабочего дня у программистов повышенная. Имя Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Денис Опубликовано 30 марта, 2011 Поделиться Опубликовано 30 марта, 2011 Мой опыт подсказывает, что ненормированность рабочего дня у программистов повышенная. Эммм... Чтобы хорошо зарабатывать, Любая работа становится ненормированной. Если "просто" зарабатывать, то возможно. Имя Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Kisyulya Опубликовано 30 марта, 2011 Поделиться Опубликовано 30 марта, 2011 Эммм... Любая работа становится ненормированной. Если "просто" зарабатывать, то возможно. Мы сейчас вроде исключительно про то, чтобы программировать и хорошо (не за нищебродскую зарплату) зарабатывать. Чтобы ХОРОШО зарабатывать, в смысле ездить на лехусе, это надо уже руководящие должности рассматривать, не совсем то. Имя Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.