Subversion Repositories OpenInventory

Rev

Rev 222 | Rev 224 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 222 Rev 223
Line 201... Line 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;
Line 214... Line 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
Line 234... Line 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
Line 513... Line 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
Line 524... Line 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();
Line 544... Line 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
549
        }
-
 
550
567
-
 
568
            if (!class_filter.isEmpty()) // åñëè ôèëüòð äëÿ êëàññà íå ïóñòîé
-
 
569
                {
-
 
570
                    filtr_tmp.append(tr(" and "));
-
 
571
                    filtr_tmp.append(class_filter); // äîáàâèì è ôèëüòð äëÿ êëàññà (êîòîðûé óêàçûâàëè â äåðåâå ìîäåëåé)
-
 
572
-
 
573
                }
-
 
574
-
 
575
-
 
576
-
 
577
-
 
578
        }
-
 
579
        else if(!class_filter.isEmpty()) // åñëè ôèëüòð äëÿ êëàññà íå ïóñòîé)
-
 
580
            {
-
 
581
                 filtr_tmp.append(class_filter); // äîáàâèì è ôèëüòð äëÿ êëàññà (êîòîðûé óêàçûâàëè â äåðåâå ìîäåëåé)
-
 
582
            }
551
583
552
    }
584
    }
553
585
554
586
555
587
Line 867... Line 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
Line 1413... Line 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