Мне интересно, можете ли вы мне помочь.
У меня есть 3 таблицы в базе данных Mysql, связанные друг с другом.
Стол с автомобильными деталями
Стол с ремонтом автомобилей
Стол с деталями ремонта автомобиля
В моей форме Windows у меня есть вид сетки данных, который отображает ремонт автомобилей. Чего я хочу добиться: я выбираю и щелкаю правой кнопкой мыши по записи и нажимаю «печать». что должно произойти, так это то, что я хочу, чтобы отображались данные из раздела «Ремонт автомобиля», «Сведения о ремонте автомобиля» и несколько дополнительных полей из «Сведения о машине», связанных с этим конкретным ремонтом.
До сих пор, когда вы нажимаете кнопку «Печать», открывается новая форма с представлением «Отчет», которое получает случайные данные из сетки. Я не могу заставить его отображать правильные данные или данные, которые я хотел бы.
См. Таблицы ниже, конфигурацию отчета, а также кнопку «Печать».
Таблица сведений об автомобиле:
nr_rej - это PK
+---------+-------+-------+-------------------+---------------+---------+---------------+----------+--------+----------+
| nr_rej | Marka | Model | Pojemnosc_Silnika | Rok_Produkcji | Nr_Ramy | Engine_Number | Przebieg | Imie | Nazwisko |
+---------+-------+-------+-------------------+---------------+---------+---------------+----------+--------+----------+
| AB12CDE | BMW | 7 | 3.0 | 2012 | 5678 | BCMS | 1000 | TEST | TEST |
| NA06ABC | Volvo | S40 | 2.0 | 2006 | 12345 | ABCD | 160000 | Robert | Test |
+---------+-------+-------+-------------------+---------------+---------+---------------+----------+--------+----------
Таблица по ремонту автомобилей: (ПОЖАЛУЙСТА, ИГНОРИРУЙТЕ поле opis_naprawy)
nr_naprawy - это PK
nr_rej - это FK из таблицы автомобилей
+------------+--------------+---------+----------+--------------+
| Nr_Naprawy | data_naprawy | nr_rej | Przebieg | opis_naprawy |
+------------+--------------+---------+----------+--------------+
| 10 | 2018-09-13 | NA06ABC | 130000 | NULL |
| 11 | 2018-09-13 | NA06ABC | 150000 | NULL |
| 13 | 2018-09-13 | AB12CDE | 22222 | NULL |
+------------+--------------+---------+----------+--------------+
Таблица сведений о ремонте автомобиля:
idopisynapraw является ПК
Nr_Naprawy - это FK из таблицы ремонта автомобилей с отношением «один ко многим».
+---------------+--------------+--------+------------+
| idopisynapraw | Opis_Naprawy | Cena | Nr_Naprawy |
+---------------+--------------+--------+------------+
| 10 | Brakes | 30.00 | 10 |
| 11 | Clutch | 200.00 | 10 |
| 12 | Oil | 50.00 | 11 |
| 13 | Oil | 50.00 | 11 |
| 14 | Coil | 2.00 | 13 |
| 15 | TEST | 33.00 | 13 |
+---------------+--------------+--------+------------+
Ниже моя выбранная кнопка "Печать", в которой не так много. Открывается форма с отчетом:
private void drukujToolStripMenuItem_Click(object sender, EventArgs e)
{
Nowy_Raport fDR = new Nowy_Raport();
fDR.Show();
}
Так что выше открывается новая форма с отчетом, который показан ниже.
Конфигурация отчета:
Так что сейчас, когда я выбираю запись в виде таблицы данных и нажимаю печать. отчет запускается, но кратко излагает детали, которые являются очень случайными, поскольку они не всегда детализируют ремонт, к которому следует обратиться
Пожалуйста, смотрите отчет ниже с текущей настройкой:
Как вы можете видеть выше, выбор Opisy Napraw очень случайный, так как он выбирает все, все из данных о ремонте, а не те, которые он должен делать для ремонта ядра. Также NR_Naprawy - это номер проводного соединения, так как он должен отображать номер автозапуска ПК.
Я не уверен, должна ли конфигурация выполняться с помощью кнопки «Печать» или самого отчета, чтобы я мог видеть отчет, который соответствует только выбранному ремонту.
Я надеюсь, что все имеет смысл относительно того, что я хочу достичь, но если вам нужны дополнительные детали, чтобы помочь мне, пожалуйста, дайте мне знать.
Большое спасибо заранее за то, что прочитали этот пост и попытались понять мои настройки и мою проблему. Также заранее спасибо за любые направления.
Пожалуйста, помните, что я начинающий программист.
С уважением
Роберт