Редакция 222 | Редакция 224 | К новейшей редакции | Весь файл | Учитывать пробелы | Содержимое файла | Авторство | Последнее изменение | Открыть журнал | RSS
Редакция 222 | Редакция 223 | ||
---|---|---|---|
Строка 201... | Строка 201... | ||
201 | QString classID; // èäåíòèôèêàòîð êëàññà |
201 | QString classID; // èäåíòèôèêàòîð êëàññà |
202 | QString parentClassID; // èäåíòèôèêàòîð ðîäèòåëüñêîãî êëàññà |
202 | QString parentClassID; // èäåíòèôèêàòîð ðîäèòåëüñêîãî êëàññà |
203 | QString pointerField; // èìÿ ïîëÿ-óêàçàòåëÿ íà ðîäèòåëüñêèé êëàññ |
203 | QString pointerField; // èìÿ ïîëÿ-óêàçàòåëÿ íà ðîäèòåëüñêèé êëàññ |
204 | QString inctance; // èìÿ òàáëèöû, õðàíèëèùà |
204 | QString inctance; // èìÿ òàáëèöû, õðàíèëèùà |
205 | QString className; // èìÿ êëàññà |
205 | QString className; // èìÿ êëàññà |
- | 206 | QString modelID; // èäåíòèôèêàòîð ìîäåëè |
|
- | 207 | QString add_filtr; // äîïîëíèòåëüíûé ôèëüòð |
|
206 | int field_ID; |
208 | int field_ID; |
207 | int icon_field_index; |
209 | int icon_field_index; |
208 | bool filtr_empty; |
210 | bool filtr_empty; |
209 | bool ok; |
211 | bool ok; |
210 | QSqlQuery q;
|
212 | QSqlQuery q;
|
Строка 214... | Строка 216... | ||
214 | QFont font;
|
216 | QFont font;
|
215 | QIcon icon;
|
217 | QIcon icon;
|
216 | // font.setWeight(40);
|
218 | // font.setWeight(40);
|
217 | font.setBold(true); |
219 | font.setBold(true); |
218 | filtr_empty = filtr.isEmpty(); |
220 | filtr_empty = filtr.isEmpty(); |
- | 221 | ||
219 | classID = model_item->text(1); |
222 | classID = model_item->text(1); |
- | 223 | modelID = model_item->text(6); |
|
- | 224 | add_filtr = MainWindow::getFiltrString(modelID, classID); |
|
- | 225 | ||
220 | 226 | ||
221 | icon = model_item->icon(0); |
227 | icon = model_item->icon(0); |
222 | 228 | ||
223 | parentClassID = model_item->parent()->text(1); |
229 | parentClassID = model_item->parent()->text(1); |
224 | 230 | ||
Строка 234... | Строка 240... | ||
234 | title_item->setText(0, className); |
240 | title_item->setText(0, className); |
235 | title_item->setText(1, tr("class")); |
241 | title_item->setText(1, tr("class")); |
236 | title_item->setText(2, classID); |
242 | title_item->setText(2, classID); |
237 | title_item->setText(3, inctance); |
243 | title_item->setText(3, inctance); |
238 | title_item->setText(4, pointerField); |
244 | title_item->setText(4, pointerField); |
- | 245 | title_item->setText(5, add_filtr); // çàïîìíèì ôèëüòð äëÿ êëàññà â äåðåâå ñ äàííûìè |
|
239 | title_item->setTextColor(0, Qt::darkBlue); |
246 | title_item->setTextColor(0, Qt::darkBlue); |
240 | 247 | ||
241 | title_item->setIcon(0, icon); |
248 | title_item->setIcon(0, icon); |
242 | 249 | ||
243 | 250 | ||
244 | sql_str = tr("select * " |
251 | sql_str = tr("select * " |
245 | " from " //íàõîäèì âñå îáúåêòû êëàññà â òàáëèöå - õðàíèëèùå îáúåêòîâ êëàññà |
252 | " from " //íàõîäèì âñå îáúåêòû êëàññà â òàáëèöå - õðàíèëèùå îáúåêòîâ êëàññà |
246 | ); |
253 | ); |
247 | sql_str.append(inctance); |
254 | sql_str.append(inctance); |
- | 255 | ||
- | 256 | ||
- | 257 | if (filtr.isEmpty() && (!add_filtr.isEmpty())) // ôèëüòð ïóñòîé, äîïîëíèòåëüíûé ôèëüòð íå ïóñòîé |
|
- | 258 | {
|
|
- | 259 | filtr.append(tr ("where ")); |
|
- | 260 | filtr.append(add_filtr); |
|
- | 261 | }
|
|
- | 262 | ||
- | 263 | ||
248 | if (!filtr.isEmpty()) { // åñëè ôèëüòð íå ïóñòîé |
264 | if (!filtr.isEmpty()) { // åñëè ôèëüòð íå ïóñòîé |
249 | sql_str.append(tr(" ")); |
265 | sql_str.append(tr(" ")); |
250 | sql_str.append(filtr); // äîáàâëÿåì â çàïðîñ ôèëüòð |
266 | sql_str.append(filtr); // äîáàâëÿåì â çàïðîñ ôèëüòð |
251 | }
|
267 | }
|
252 | 268 | ||
Строка 513... | Строка 529... | ||
513 | if (item_type == tr("class")) |
529 | if (item_type == tr("class")) |
514 | {
|
530 | {
|
515 | QString parent_object_id; // èäåíòèôèêàòîð ðîäèòåëüñêîãî îáúåêòà |
531 | QString parent_object_id; // èäåíòèôèêàòîð ðîäèòåëüñêîãî îáúåêòà |
516 | 532 | ||
517 | QString parent_class_inctance;
|
533 | QString parent_class_inctance;
|
- | 534 | QString class_filter;
|
|
518 | 535 | ||
519 | 536 | ||
520 | ui->pushButton->setEnabled(true); |
537 | ui->pushButton->setEnabled(true); |
521 | ui->pushButton_2->setEnabled(true); |
538 | ui->pushButton_2->setEnabled(true); |
522 | 539 | ||
Строка 524... | Строка 541... | ||
524 | 541 | ||
525 | parentObject_id = parent_item->text(2); |
542 | parentObject_id = parent_item->text(2); |
526 | 543 | ||
527 | class_id = item->text(2); |
544 | class_id = item->text(2); |
528 | inctance = item->text(3); |
545 | inctance = item->text(3); |
- | 546 | class_filter = item->text(5); |
|
529 | 547 | ||
530 | pointer_name = item->text(4); |
548 | pointer_name = item->text(4); |
531 | delete sql_mogel; |
549 | delete sql_mogel; |
532 | 550 | ||
533 | sql_mogel = new MyModel(); |
551 | sql_mogel = new MyModel(); |
Строка 544... | Строка 562... | ||
544 | filtr_tmp.append(tr("`")); |
562 | filtr_tmp.append(tr("`")); |
545 | filtr_tmp.append(tr(" = '")); |
563 | filtr_tmp.append(tr(" = '")); |
546 | filtr_tmp.append(parent_object_id); |
564 | filtr_tmp.append(parent_object_id); |
547 | filtr_tmp.append(tr("'")); |
565 | filtr_tmp.append(tr("'")); |
548 | 566 | ||
- | 567 | ||
- | 568 | if (!class_filter.isEmpty()) // åñëè ôèëüòð äëÿ êëàññà íå ïóñòîé |
|
- | 569 | {
|
|
- | 570 | filtr_tmp.append(tr(" and ")); |
|
- | 571 | filtr_tmp.append(class_filter); // äîáàâèì è ôèëüòð äëÿ êëàññà (êîòîðûé óêàçûâàëè â äåðåâå ìîäåëåé) |
|
- | 572 | ||
549 | }
|
573 | }
|
550 | 574 | ||
551 | 575 | ||
- | 576 | ||
- | 577 | ||
- | 578 | }
|
|
- | 579 | else if(!class_filter.isEmpty()) // åñëè ôèëüòð äëÿ êëàññà íå ïóñòîé) |
|
- | 580 | {
|
|
- | 581 | filtr_tmp.append(class_filter); // äîáàâèì è ôèëüòð äëÿ êëàññà (êîòîðûé óêàçûâàëè â äåðåâå ìîäåëåé) |
|
- | 582 | }
|
|
- | 583 | ||
552 | }
|
584 | }
|
553 | 585 | ||
554 | 586 | ||
555 | 587 | ||
556 | pointersList = getPointersList(class_id); // ïîëó÷àåì ñïèñîê ïîëåé-óêàçàòåëåé |
588 | pointersList = getPointersList(class_id); // ïîëó÷àåì ñïèñîê ïîëåé-óêàçàòåëåé |
Строка 867... | Строка 899... | ||
867 | MainWindow::getDatabaseData(); |
899 | MainWindow::getDatabaseData(); |
868 | }
|
900 | }
|
869 | 901 | ||
870 | void MainWindow::on_pushButton_12_clicked()// íàæàòèå êíîïêè "Ñáðîñèòü èçìåíåíèÿ" (íà âêëàäêå ôèëüòðîâ) |
902 | void MainWindow::on_pushButton_12_clicked()// íàæàòèå êíîïêè "Ñáðîñèòü èçìåíåíèÿ" (íà âêëàäêå ôèëüòðîâ) |
871 | {
|
903 | {
|
- | 904 | ui->tableView_3->setModel(filter_model); |
|
872 | filter_model->select(); |
905 | filter_model->select(); |
- | 906 | ||
873 | ui->pushButton_11->setEnabled(false); |
907 | ui->pushButton_11->setEnabled(false); |
874 | ui->pushButton_12->setEnabled(false); |
908 | ui->pushButton_12->setEnabled(false); |
875 | }
|
909 | }
|
876 | 910 | ||
877 | 911 | ||
Строка 1413... | Строка 1447... | ||
1413 | ValueForComparison = q.record().value(6).toString(); |
1447 | ValueForComparison = q.record().value(6).toString(); |
1414 | PostCondition = q.record().value(7).toString(); |
1448 | PostCondition = q.record().value(7).toString(); |
1415 | 1449 | ||
1416 | 1450 | ||
1417 | result_str.append(Condition); |
1451 | result_str.append(Condition); |
1418 | result_str.append(tr(" ")); |
1452 | result_str.append(tr(" `")); |
1419 | result_str.append(FieldName); |
1453 | result_str.append(FieldName); |
1420 | result_str.append(tr(" ")); |
1454 | result_str.append(tr("`")); |
1421 | result_str.append(ConditionalSymbol); |
1455 | result_str.append(ConditionalSymbol); |
1422 | result_str.append(tr(" ")); |
1456 | result_str.append(tr("'")); |
1423 | result_str.append(ValueForComparison); |
1457 | result_str.append(ValueForComparison); |
1424 | result_str.append(tr(" ")); |
1458 | result_str.append(tr("' ")); |
1425 | result_str.append(PostCondition); |
1459 | result_str.append(PostCondition); |
1426 | 1460 | ||
1427 | 1461 | ||
1428 | }
|
1462 | }
|
1429 | 1463 |