Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
 Аватар для dnbstudent
6 / 6 / 0
Регистрация: 08.05.2013
Сообщений: 55

Ошибка при выводе в DBgrid, ADO

14.10.2013, 15:31. Показов 1191. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
На форме стоит стоит два Dblookupcombobox`a со значением цех и станок, цех связан со станками мастерфилдом, тобишь при выборе цеха...в дблукапкомбобоксе отображаются станки ему соответствующие.

На форме установлен также дбгрид с таблицей номенклатура, номенклатура и станок опять же таки связаны собой мастерфилдом.

Но в случае когда станку не соответствует не одна номенклатура выпадает Exeption "it is not integer value", но оно то ясно попадаю на значение NULL!

Внимание вопрос: как мне сделать так чтобы выводились пустые строки в случае если номенклатура null?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
14.10.2013, 15:31
Ответы с готовыми решениями:

Ошибка при выводе в Word из DbGrid
Доброго времени суток. Приложение на Rad Studio 10 Seattle. Используются компоненты dbExpress. К сути - на одной форме код вывода в...

Установка DBGrid columns при выводе через запрос SQLquery (обычный вывод в editing DBGrid Columns все настраивается)
procedure TForm1.Button33Click(Sender: TObject); //Кнопка Все вывести begin sqlquery2.Active:=FALSE; ...

Проблемы при выводе в DBgrid
У меня в Table1, цена выводится со знаком вопроса: Как сделать нормальный вывод? В Database Desktop формат стоит - $(Money)

8
 Аватар для VladSharikov
25 / 25 / 7
Регистрация: 02.12.2010
Сообщений: 824
15.10.2013, 00:41
Цитата Сообщение от dnbstudent Посмотреть сообщение
как мне сделать так чтобы выводились пустые строки в случае если номенклатура null?
Как именно через Delphi сделать не скажу, но можно сделать это через представления в субд.
Сделайте представление, которое содержало бы пустые строки, если номенклатура null.
Возможно, это поможет.
0
 Аватар для dnbstudent
6 / 6 / 0
Регистрация: 08.05.2013
Сообщений: 55
15.10.2013, 00:56  [ТС]
В том то и косяк что привязка идет к числовому показателю, то есть таблица субд станки имеет вид:

<код цеха> для привязки цеха целочисленного типа
<станок> собственно марка станка
<код станка> счетчик

таблица субд номенклатура имеет вид

<код номенклатуры> счетчик
<номенклатура> текст
<кол-во> real параметр
<станок> целочисленный параметр

Тобишь я связываю два поля код станка и станок из двух таблиц, то есть когда я выбираю станок с кодом станка 1 мне запросом фильтруется вся номенклатура где <код станка>=<станок>, но в том случае когда коду станка не соответствует ни одна номенклатура получается что <код станка>=null что ни есть целочисленное значение, и естественно в проекте при событии ondrawcell выскакивает екзептион is not valid integer value!

Приподнимались мной попытки проверять поле isnull в событиях ongettext и ondrawcell и подменить его,но екзепшен назойливо посылал меня на хутор к бабочкам
0
 Аватар для VladSharikov
25 / 25 / 7
Регистрация: 02.12.2010
Сообщений: 824
15.10.2013, 01:03
В том dblookupcombobox, где выбираете станок, можно не выводить такие станки, у которых нет связанных записей в таблице номенклатура. Или обязательно показать все станки?
0
 Аватар для dnbstudent
6 / 6 / 0
Регистрация: 08.05.2013
Сообщений: 55
15.10.2013, 01:09  [ТС]
Естественно обязательно, в том и заключается юзер-френдли логическая цепочка...человек выбирает цех,затем станок,а затем смотрит наличие номенклатуры...то есть привязка скачет именно цех-станок иначе очень много позиций номенклатуры,который фиг поймешь к чему заказывали)
0
 Аватар для ZfoxAK
670 / 560 / 242
Регистрация: 26.11.2012
Сообщений: 2,191
15.10.2013, 07:40
Цитата Сообщение от dnbstudent Посмотреть сообщение
it is not integer value
есть ощущение что не в этом проблема
Цитата Сообщение от dnbstudent Посмотреть сообщение
<код станка>=null что ни есть целочисленное значение
Проверил на своей базе ... все ок выдет пустое значение

Добавлено через 22 минуты
хотя для проверки я использовал 1 DBLookupComboBox1 и два DBGrid в качестве Detail

Добавлено через 5 минут
Это косяк компоненты DBLookupComboBox необходимо после выбора значения устанавливать свойству KeyValue значение.

Добавлено через 13 минут
Пока не разобрался как с этим боротся... Если в место DBLookupComboBox2 поставить DBGrid проблемы не будет.
0
 Аватар для dnbstudent
6 / 6 / 0
Регистрация: 08.05.2013
Сообщений: 55
15.10.2013, 10:16  [ТС]
тобишь ты хочешь сказать что каждый раз когда я выбираю пункт, то Dblookupcombobox запрашивает кеyvalue? хехе...но в таком случае код DBLookupCombobox.keyvalue:=null тоже должен выдавать ошибку, а такого есесено не происходит)))
0
 Аватар для ZfoxAK
670 / 560 / 242
Регистрация: 26.11.2012
Сообщений: 2,191
15.10.2013, 11:56
Я обнаружил, что при отсутсвии записи в таблице, будет выдаватся пусто. А ошибки указаной нет. Значит проблема в связки компнент. Пробывал заменить Dblookupcombobox2 на DBGrid?

Добавлено через 30 минут
Хотя я могу и ошибатся, т.к. небыла указана СУБД, то я пробывал на FireBird и у меня указанной проблемы нет.
Но ошибки с двумя комбатами включеными master-detail возникают. При этом какое значение передается в качестве параметра в запрос - вот вопрос т.к. во втором комбате пусто.
0
 Аватар для dnbstudent
6 / 6 / 0
Регистрация: 08.05.2013
Сообщений: 55
15.10.2013, 12:32  [ТС]
может попробывать убрать мастер - детаил и повесить на событие oncloseup комбика фильтр да и не парится=)))

Добавлено через 28 минут
Все тему закрываю...нашел косяк....у меня стояла проверка на валидность...которая и давал ошибку! Всем спасибо!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
15.10.2013, 12:32
Помогаю со студенческими работами здесь

Баг при выводе в Excel из DBGrid
Всем привет. Нашел на просторах этого форума код (ссылка на тему, последний пост от Bit_Man:...

Кодировка при выводе в dbGrid из MySql
В базе данных к которой хочу приконнектиться через делфи 7 с помощью компонента uniDAC стоит кодировка cp1251_ukrainian_ci (пробовал utf8,...

Добавление текста в ячейки DBGrid при выводе
Добрый день. Подскажите пожалуйста, возможно ли сделать следующее? в Столбце DBGrid Технические средства значения следующие ...

Ошибка при выводе <<<
Добрый день! На второй строке выбивает мне ошибку. Почему? print &lt;&lt;&lt;_FORM_ &lt;form method=&quot;POST&quot;...

Ошибка при выводе из бд
Здравствуйте, есть сайт, нужно вывести меню сайта из базы данных, вот код &lt;?php $categories = mysql_query($connection, &quot;SELECT...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит: токи, напряжения и их 1 и 2 производные при t = 0;. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru