|
0 / 0 / 0
Регистрация: 08.09.2015
Сообщений: 27
|
|
Привязка BindingSource с разными фильтрами для соответствующих ComboBox30.07.2024, 13:15. Показов 1415. Ответов 29
Метки нет (Все метки)
Всем доброго дня. Сталкнулся с такой проблемой. Есть таблица ТехКарта(рецептура продукта), она содержит три поля КодП (код продукта), КодС (код сырья) и КолС (количество сырья). На форме я создаю ComdoBox (с CBox01 по CBox141) в них мне надо отобразить наименование сырья из табл.СпрСырья (справочник сырья) соответствующий КодС в таб. ТехКарта, эти таблицы связаны по коду сырья (отфильтрофать по коду сырья указанного в каждой строке табл. ТехКарта). Если CBox01 - CBox141 задавать источник записей СпрСырьяBindingSource то все комбобоксы принимают одинаковое значение, Приходится комбобоксы привязывать к разным BindingSource (СпрСырьяBindingSource0, СпрСырьяBindingSource1, СпрСырьяBindingSource2 и т.д.). Тогда вопрос как их привязывать в цикле к комбобоксам? А далее еще подобный случай, только следующие комбобоксы надо прииязать к третьей таблице СклСырья (склад сырья) которая связана с предыдущими таблицами по коду сырья, но в этих комбобоксах мне нужно вывести цену данного сырья которое имеется в наличии (установить фильтр где остаток сырья >0 и ограничивать его по коду сырья).
0
|
|
| 30.07.2024, 13:15 | |
|
Ответы с готовыми решениями:
29
Фильтрация разными фильтрами Реализовать фильтр для BindingSource через comboBox Фильтрация по уникальности строк, в привязки BindingSource для ComboBox |
|
0 / 0 / 0
Регистрация: 08.09.2015
Сообщений: 27
|
||
| 30.07.2024, 16:53 [ТС] | ||
|
0
|
||
|
0 / 0 / 0
Регистрация: 08.09.2015
Сообщений: 27
|
|
| 30.07.2024, 17:05 [ТС] | |
|
0
|
|
| 30.07.2024, 21:15 | |
|
Мне кажется, что проще будет применить контролы от DevExpress, там без лишних танцев с бубном можно реализовать нечто подобное основной таблице техкарты. Но эти инструменты платные, что снижает их привлекательность.
Ну, а в целом можно попробовать сделать на базе DataGridView. На пальцах подход выглядит так: к DGV привязывается техкарта, которая состоит из записей ингредиентов (отдельный класс); к колонкам привязываются ингредиенты, но в каждой из них показываются разные свойства; остальное простые элементы.
0
|
|
|
0 / 0 / 0
Регистрация: 08.09.2015
Сообщений: 27
|
|
| 31.07.2024, 07:55 [ТС] | |
|
Ну так я вроде так и делаю. С DGV у меня пока одна продлема, в колонке Цена список не ограничивается фильтром ОстСырья>0 и КодС который соответствует коду сырья в Техкарте
0
|
|
| 31.07.2024, 08:23 | |||
|
Не по теме: Без кода все эти разговоры контрпродуктивны.
0
|
|||
|
0 / 0 / 0
Регистрация: 08.09.2015
Сообщений: 27
|
||
| 31.07.2024, 09:10 [ТС] | ||
|
Поясняю. Если вопрос решать через DGV, то проблема с колонкой Цена, не знаю как установить на нее фильтр. В этом случае я пытаюсь это сделать через настройки DGV. Здесь все идет через BindingSourceы.
С комбобоксами я пробовал другой вариант как в Акцессе, создать 15 комбобоксов, 15 полей и т.д., каждые из которых являются как бы колонками в таблице, а 15 это как бы строки в таблице и спомощью циклов загонять в них данные из таблиц. Но тут проблема как задать в цикле BindingSource0, BindingSource1, BindingSource2 и т.д. и как вычленять из таблиц значения полей. Почему я и говорил что в Акцессе это просто и понятно через рекордсеты Добавлено через 3 минуты Добавлено через 11 минут CBox141 это не шт. Это нумерация комбобокса от 0-14 это строки, а потом идет нумерация столбцом от 0 до 5 Код я не могу предоставить так как в первом случае я этл делаю через настройки DGV, но думаю надо будет написать код для третьуй колонки Цена, правда пока не понимаю как это сделать. Во втором случае тоже не знаю как подступиться, с чего начать, за что зацепиться. Поэтому и обратился за помощью на форум. В первом случае надо как то ограничить список в комбобоксе колонки Цена остатком >0 и кодом сырья. Во втором случае не понимаю как VB.net перебирать записи в таблице и вычленять из них нужные данные и загонять все это в поля и комбобоксы. С помощью запросов можно попытаться сделать, но шипко не хочется, все равно остаются вроблемы.
0
|
||
|
|
||
| 31.07.2024, 09:17 | ||
|
Добавлено через 2 минуты ИПЛ, И редактировать данные в DGV считается плохой практикой, так как сложно соблюсти целостность данных. Что и показывает ваш случай...
0
|
||
| 31.07.2024, 09:31 | ||||||
|
Как вариант можно уйти от DGV и создать для каждой записи UserControl и тогда внутри него можно реализовать любую логику и это будет относительно просто. За каждым UserControl в этом случае должна быть своя модель данных. Добавлено через 5 минут Добавлено через 2 минуты
0
|
||||||
|
0 / 0 / 0
Регистрация: 08.09.2015
Сообщений: 27
|
|
| 31.07.2024, 09:36 [ТС] | |
|
Ну здорово!!! Бог мне в помощь.
0
|
|
| 31.07.2024, 09:56 | ||
|
Лично я сделал бы на UserControl-ах. Для такой разработки рекомендую почитать эту тему.
0
|
||
| 31.07.2024, 09:56 | |
|
Привязка BindingSource к ListBox Привязка ComboBox к DataContext для отображения простых справочников ComboBox + BindingSource
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства.
Родственных связей существует 8 ступеней, такие как:
p - отец
P - мать
q - муж
Q - жена
b - брат
B - сестра
s - сын
S - дочь
|
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире.
Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
|
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С.
Задача:
Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
|
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
|
|
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
|
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701
Купил два термопринтера QR701.
На сэлф-тесте написано:
Language: PC936 (GB18030).
Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
|
Создание формы заимствованного документа
Maks 03.08.2026
Задача:
Необходимо создать собственную форму заимствованного документа. На форме должен быть реквизит "Покупатель", а также
табличная часть со следующими реквизитами:
- Расчетный счет покупателя. . .
|
Задача предоставления скидок покупателям
Maks 03.08.2026
Задача:
В документе "Продажи" необходимо реализовать функционал предоставления скидок покупателям. Скидка должна автоматически рассчитываться и подставляться в соответствующее поле при выборе. . .
|