Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.77/13: Рейтинг темы: голосов - 13, средняя оценка - 4.77
0 / 0 / 0
Регистрация: 01.06.2015
Сообщений: 4
MySQL

CheckListBox

11.12.2016, 07:21. Показов 2768. Ответов 4

Студворк — интернет-сервис помощи студентам
Здравствуйте, есть три таблицы treatment (tid, tName) , manipulation (mid, mName), Manipulation_treatment (tid, mid)

при создании формы заполняю CheckListBox

Delphi
1
2
3
4
5
6
7
Checklistbox.clear;
  Qtreatment.First;
  while not Qtreatment.Eof do
  begin
    Checklistbox.items.AddObject(Qtreatment.FieldByName('treatment_name').AsString,
tobject(Qtreatment.fieldbyname('treatment_id').asinteger));
    Qtreatment.Next;
как записать в treatment_manipulation выбранные варианты?

Delphi
1
2
3
4
for i := 0 to CheckListBox.Items.Count - 1 do
  begin
    if CheckListBox.Checked[i] = True then
    begin

SQL
1
2
3
SELECT * FROM Manipulation M
INNER JOIN Manipulation_treatment  MT ON MT.mid = M.mid
WHERE MT.tid IN (@tid)

и всё, кончился, помогите люди добрые (и не очень) не соображаю
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
11.12.2016, 07:21
Ответы с готовыми решениями:

checklistbox
Есть checklistbox2.items.add(DBGrid1.DataSource.DataSet.FieldByName('Фамилия').AsString); Как вместо одного значения одного столбца...

checklistbox
Здравствуйте!)) У меня такая проблема, есть две таблицы Разделы и Документы связаны по полю код раздела(kmr). У каждого раздела есть по...

CheckListBox
Народ мне так и не удалось доделать прогу! у меня есть программа для просмотра DB там только строки и колонки нужно добавить компонент...

4
1076 / 989 / 340
Регистрация: 07.08.2012
Сообщений: 2,790
11.12.2016, 08:57
Автор пишет:
Цитата Сообщение от PAGODASEMIDNEI Посмотреть сообщение
treatment (tid, tName)
читаем:
...FieldByName('treatment_name'), ...fieldbyname('treatment_id')
Что за чудесные метаморфозы с наименованиями полей? Где истина?

Опять же, как можно записать то чего нет: в чекбоксе данные только по таблице treatment, а по таблице manipulation где данные?
1
0 / 0 / 0
Регистрация: 01.06.2015
Сообщений: 4
11.12.2016, 15:22  [ТС]
Засыпал уже mid - manipulation_id, tid - treatment_id, mt - manipulation_treatment

Цитата Сообщение от Скандербег Посмотреть сообщение
Опять же, как можно записать то чего нет: в чекбоксе данные только по таблице treatment, а по таблице manipulation где данные?
Если я правильно понял, беру с предыдущей формы получаю manipualtion_id
создаю два параметра к запросу :mid , :tid;
если :mid с предыдущей формы, то остается получить :tid из checklistbox'а

Только как их получить?
0
1076 / 989 / 340
Регистрация: 07.08.2012
Сообщений: 2,790
11.12.2016, 15:53
Лучший ответ Сообщение было отмечено PAGODASEMIDNEI как решение

Решение

Цитата Сообщение от PAGODASEMIDNEI Посмотреть сообщение
остается получить :tid из checklistbox'а
А если отмечены больше одного пункта в чекбоксе? Нужно записывать столько строк в Manipulation_treatment сколько отмечено?
Задачку более конкретно обозначить бы надо.

А одно значение id из чекбокса выбирается простым преобразованием:
Delphi
1
  Integer(Checklistbox.Items.Objects[i]))
1
0 / 0 / 0
Регистрация: 01.06.2015
Сообщений: 4
18.12.2016, 00:38  [ТС]
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
var
      i: integer;
    begin
      Query.sql.text :='insert into Manipulation_treatment (manipulation_id, treatment_id) values (:mid, :tid)';
      Query.Parameters.ParamByName('mid').value := m;
       for i := 0 to CheckListBox2.items.Count - 1 do
        begin
          if CheckListBox2.Checked[i] = true then
            begin
              Query.Parameters.ParamByName('tid').value := integer
                (CheckListBox2.items.Objects[i]);
              Query.ExecSQL;
разобрался
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
18.12.2016, 00:38
Помогаю со студенческими работами здесь

ADOQuery + CheckListBox
В CheckListBoxField вытягивая название полей из таблицы... FormMain.ADOQuery_DataBase.Close; FormMain.ADOQuery_DataBase.Open; ...

Работа с БД и CheckListBox
Есть такая ситуацыя. У меня есть на форме CheckListBox1 который заполняется данными из поля "Услуга", таблицы Услуги. Как...

Заполнение CheckListBox
Всем доброго времени суток! Возникла проблема - нужно заполнить CheckListBox.Items с данной таблицы DBGrid или же c ADOTable, подскажите...

DBGrid И CheckListBox
народ пишу программу она открывает базы данных но мне надо что бы из дбгрида пересылалось в чеклистбокс там отмечались нужные мне полю и...

Поиск по CheckListBox
Всем доброго времени суток. Работаю в Delphi XE6, БД FireBird. Необходимо выполнить поиск по таблице, в которой есть поле God типа...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru