Subversion Repositories OpenInventory

Rev

Rev 94 | Rev 97 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 94 Rev 95
Line 19... Line 19...
19
    QTextStream out(&file_tmp);
19
    QTextStream out(&file_tmp);
20
    out << MainWindow::modelString;
20
    out << MainWindow::modelString;
21
    file_tmp.close();
21
    file_tmp.close();
22
22
23
    MainWindow::openDataBase();
23
    MainWindow::openDataBase();
-
 
24
    MainWindow::buildPreviewModel(tr("3"));
24
25
25
}
26
}
26
27
27
MainWindow::~MainWindow()
28
MainWindow::~MainWindow()
28
{
29
{
Line 279... Line 280...
279
280
280
281
281
bool MainWindow::buildPreviewModel(QString rootClassID){
282
bool MainWindow::buildPreviewModel(QString rootClassID){
282
QSqlQuery q;
283
QSqlQuery q;
283
QString sql_str;
284
QString sql_str;
-
 
285
QString field_name_str;
-
 
286
QString root_class_name;
-
 
287
bool ok;
284
int field_name;
288
int field_name;
-
 
289
-
 
290
//ui->treeWidget->clear();
-
 
291
-
 
292
root_class_name = MainWindow::ClassName(rootClassID); // îïðåäåëÿåì èìÿ êëàññà
-
 
293
-
 
294
rootItem1 = new  QTreeWidgetItem(ui->treeWidget);
-
 
295
 rootItem1->setText(0, root_class_name);
-
 
296
// rootItem2 = new  QTreeWidgetItem(rootItem1);
-
 
297
// rootItem2->setText(0, tr("óðîâåíü 2"));
-
 
298
 rootItem1->setCheckState(0,Qt::Checked);
-
 
299
-
 
300
-
 
301
-
 
302
285
sql_str = tr("select * "
303
sql_str = tr("select * "
286
             " from DescriptionOfClasses where  DescriptionOfClasses.ID = "
304
             " from DescriptionOfClasses where  DescriptionOfClasses.DefaultValue = '"       //îïðåäåëèì êëàññû, äëÿ êîòîðûõ êîðíåâîé ÿâëÿåòñÿ êîíòåéíåðîì
287
             );
305
             );
288
sql_str.append(rootClassID);
306
sql_str.append(rootClassID);
289
307
-
 
308
sql_str.append(tr("' and DescriptionOfClasses.FieldType = 'pointer' "));
-
 
309
-
 
310
q.prepare(sql_str);
-
 
311
-
 
312
ok = q.exec();
-
 
313
if (!ok) {
-
 
314
                        QMessageBox::critical( // Äèàëîã ñ ñîîáùåíèåì îá îøèáêå.
-
 
315
                                                                        this,                      // Ðîäèòåëüñêèé âèäæåò.
-
 
316
                                                                        QObject::tr("Database Error"),   // Çàãîëîâîê.
-
 
317
                                                                        q.lastError().text());          // Òåêñò ñîîáùåíèÿ.
-
 
318
                 }
-
 
319
field_name = q.record().indexOf(tr("FieldName"));
-
 
320
while(q.next()){
-
 
321
-
 
322
                field_name_str = q.value(field_name).toString();
-
 
323
-
 
324
                }
-
 
325
-
 
326
}
-
 
327
-
 
328
-
 
329
-
 
330
QString MainWindow::ClassName(QString class_id){ //âîçâðàùàåò èìÿ êëàññà ïî åãî ID
-
 
331
    QSqlQuery q;
-
 
332
    QString sql_str;
-
 
333
    QString class_name_str;
-
 
334
    bool ok;
-
 
335
    int field_class_name;
-
 
336
-
 
337
    sql_str = tr("select * "
-
 
338
                 " from ListOfClasses where ListOfClasses.ID = '"       //îïðåäåëèì êëàññû, äëÿ êîòîðûõ êîðíåâîé ÿâëÿåòñÿ êîíòåéíåðîì
-
 
339
                 );
-
 
340
-
 
341
    sql_str.append(class_id);
-
 
342
    sql_str.append(tr("' "));
-
 
343
-
 
344
    q.prepare(sql_str);
-
 
345
-
 
346
    ok = q.exec();
-
 
347
-
 
348
-
 
349
    if (!ok) {
-
 
350
                            QMessageBox::critical( // Äèàëîã ñ ñîîáùåíèåì îá îøèáêå.
-
 
351
                                                                            this,                      // Ðîäèòåëüñêèé âèäæåò.
-
 
352
                                                                            QObject::tr("Database Error"),   // Çàãîëîâîê.
-
 
353
                                                                            q.lastError().text());          // Òåêñò ñîîáùåíèÿ.
-
 
354
                     }
-
 
355
-
 
356
    field_class_name = q.record().indexOf(tr("ClassName"));
-
 
357
    while(q.next()){
-
 
358
-
 
359
                    class_name_str = q.value(field_class_name).toString();
-
 
360
-
 
361
                    }
-
 
362
-
 
363
    return class_name_str;
290
364
291
}
365
}