Хранилища Subversion OpenInventory

Редакция

Авторство | Последнее изменение | Открыть журнал | Скачать | RSS

#include "raportform.h"
///#include "mainwindowimpl.h"

#define ENTER cursor->insertBlock();
// place your code here
/////raportForm::raportForm( QWidget * parent, Qt::WFlags f)
/////   : QMainWindow(parent, f)
raportForm::raportForm()
/////   : QMainWindow(parent, f)
        : QMainWindow()
        {
                setupUi(this);
                connect(printAction, SIGNAL(triggered()), this, SLOT(on_print_raport()));
                connect(printPdfAction, SIGNAL(triggered()), this, SLOT(on_print_raport_to_pdf()));
     
     
     
        }
       
       
       
raportForm::~raportForm()
{
       
}

void raportForm::create_raport()
{
               
//      raportForm::textEdit.setText('1');
//      textEdit.setText("hello!");

}






void raportForm::on_pushButton_clicked()
{
/*
        textEdit->setText(tr("Ñèáãèïðîñåëüõîçìàø"));
                document = textEdit->document();
                cursor = new QTextCursor(document);
                cursor->movePosition(QTextCursor::Start);
     QTextCharFormat format(cursor->charFormat());
     //format.setFontFamily("Courier");
     format.setFontFamily("Arial");
     //format.setFontItalic(false);

     format.setFontWeight(QFont::Normal);
     QTextCharFormat boldFormat = format;
     boldFormat.setFontWeight(QFont::Bold);
     //boldFormat.setFontItalic(true);
////     cursor->insertText(tr("Ì1"), boldFormat);
////     cursor->insertBlock();
////     cursor->insertText(tr("Þøêîâ"), format);
     ENTER
     
int fieldName, fieldID;
//      QTreeWidgetItem *otdelItem;
        bool ok;
        //ok= pdb->isOpen();
        QSqlQuery q;
        ok = q.prepare(tr("select * from otdeli"));// ïîëó÷àåì ñïèñîê îòäåëîâ
        QString otdel, otdel_id, user_name;
        ok = q.exec();
        fieldName = q.record().indexOf(tr("Íàçâàíèå"));
        fieldID = q.record().indexOf(tr("Èäåíòèôèêàòîð"));
        while (q.next()){
                otdel = q.value(fieldName).toString();
                otdel_id = q.value(fieldID).toString();
                cursor->insertText(otdel, format);
                ENTER
       
//              otdelItem = new QTreeWidgetItem(addmemoryForm::treeWidget);
//              otdelItem->setText(0, otdel);
//              addmemoryForm::SotrydnikiOtdela(otdel_id, otdelItem);
                }
//              print_raport();
//              print_raport_to_pdf();
                QList<TOtdel>  otdel_list_local;

                otdel_list_local = get_otdel_list();
                QString otdel_name;

                for (int i = 0; i < otdel_list_local.size(); ++i) {
                        otdel_name = otdel_list_local.at(i).name;
                        cursor->insertText(otdel_name, format);
                        ENTER
                        otdel_id = otdel_list_local.at(i).ID;
                        cursor->insertText(otdel_id, format);
                        ENTER
                }
*/

                bild_raport();
               
               
               

}



void raportForm::print_raport()
{
        QTextDocument *document = textEdit->document();
     QPrinter printer;

     QPrintDialog *dlg = new QPrintDialog(&printer, this);
     if (dlg->exec() != QDialog::Accepted)
         return;

     document->print(&printer);
}

void raportForm::print_raport_to_pdf()
{
       
          QString fileName = QFileDialog::getSaveFileName(this, "Export PDF",
                                                     QString(), "*.pdf");
     if (!fileName.isEmpty()) {
         if (QFileInfo(fileName).suffix().isEmpty())
             fileName.append(".pdf");
         QPrinter printer(QPrinter::HighResolution);
         printer.setOutputFormat(QPrinter::PdfFormat);
         printer.setOutputFileName(fileName);
         textEdit->document()->print(&printer);
     }
}


/*
QStringList raportForm::get_otgel_list()
{

        struct otdel otdel_tmp;
        int fieldName, fieldID;
        QString int_otdel_id;
        QStringList tmp;
//      QTreeWidgetItem *otdelItem;
        QSqlQuery q(tr("select * from Îòäåëû"));// ïîëó÷àåì ñïèñîê îòäåëîâ
        QString otdel, otdel_id;
        fieldName = q.record().indexOf(tr("Íàçâàíèå"));
        fieldID = q.record().indexOf(tr("Èäåíòèôèêàòîð"));
        otdel_list.clear(); //î÷èùàåì ñïèñîê
        while (q.next()){
                otdel = q.value(fieldName).toString();
                tmp.append(otdel);
                int_otdel_id = q.value(fieldID).toString();
                otdel_tmp.name = otdel;
                otdel_tmp.ID = int_otdel_id;
                otdel_list.append(otdel_tmp);
//              otdel_id = q.value(fieldID).toString();
//              otdelItem = new QTreeWidgetItem(addmemoryForm::treeWidget);
//              otdelItem->setText(0, otdel);
//              addmemoryForm::SotrydnikiOtdela(otdel_id, otdelItem);

                }
                return tmp;
}
*/



TSibgipro raportForm::get_sibgipro(){
//      TOtdel otdel_tmp;
        TSibgipro sibgipro_tmp;
//      int fieldName, fieldID;
//      QVariant int_otdel_id;
//      QStringList tmp;
//      bool ok;
          //ok= pdb->isOpen();
//      QSqlQuery q;
//      ok = q.prepare(tr("select * from Îòäåëû"));// ïîëó÷àåì ñïèñîê îòäåëîâ
//      QString otdel, otdel_id;
//      ok = q.exec();
//      if (!ok) {
//                              QMessageBox::critical( // Äèàëîã ñ ñîîáùåíèåì îá îøèáêå.
//                                                                              this,                      // Ðîäèòåëüñêèé âèäæåò.
//                                                                              QObject::tr("Database Error"),   // Çàãîëîâîê.  
//                                                                              pdb->lastError().text());          // Òåêñò ñîîáùåíèÿ.
//                       }
//      fieldName = q.record().indexOf(tr("Íàçâàíèå"));
//      fieldID = q.record().indexOf(tr("Èäåíòèôèêàòîð"));
//      while (q.next()){
//              otdel = q.value(fieldName).toString();
//              otdel_id = q.value(fieldID).toString();
//              int_otdel_id = q.value(fieldID);
//              otdel_tmp.name = otdel;
//              otdel_tmp.ID = int_otdel_id;
//              sibgipro_tmp.otdel_list.append(otdel_tmp);
//              }
        sibgipro_tmp.otdel_list = get_otdel_list();
        return sibgipro_tmp;
}

QList<TOtdel> raportForm::get_otdel_list(){
        TOtdel otdel_tmp;
        QList<TOtdel> otdel_list_rtrn;
        int fieldName, fieldID;
        QString int_otdel_id;
        QStringList tmp;
        bool ok;
       
       
         
        //ok= pdb->isOpen();
        QSqlQuery q;
        ok = q.prepare(tr("select * from otdeli"));// ïîëó÷àåì ñïèñîê îòäåëîâ
        QString otdel, otdel_id;
        ok = q.exec();
       
        if (!ok) {
                                QMessageBox::critical( // Äèàëîã ñ ñîîáùåíèåì îá îøèáêå.
                                                                                this,                      // Ðîäèòåëüñêèé âèäæåò.
                                                                                QObject::tr("Database Error"),   // Çàãîëîâîê.  
                                                                                pdb->lastError().text());          // Òåêñò ñîîáùåíèÿ.
                         }

        fieldName = q.record().indexOf(tr("Íàçâàíèå"));
        fieldID = q.record().indexOf(tr("Èäåíòèôèêàòîð"));

        while (q.next()){
                otdel = q.value(fieldName).toString();
                otdel_id = q.value(fieldID).toString();
                int_otdel_id = q.value(fieldID).toString();
                otdel_tmp.name = otdel;
                otdel_tmp.ID = int_otdel_id;
                otdel_tmp.user_list = get_user_list(int_otdel_id);
                otdel_list_rtrn.append(otdel_tmp);
                }
       
        return otdel_list_rtrn;
}

QList<TUser> raportForm::get_user_list(QString otdel_ID)
{
        TUser user_tmp;
        QList<TUser> user_list_rtrn;
       
        int field_fio_sotrydnika, field_id_sotrydnika;
        QString fio_sotrydnika_otdela, id_sotrydnika_otdela, oboryd;
        QSqlQuery qsotrydnikiOtdela;
        QString sqlQueryString;
        QTreeWidgetItem *treeItem_sotrydnika;
        sqlQueryString = tr("select Èäåíòèôèêàòîð, ÔÈÎ from sotrydniki where Èäåíòèôèêàòîð_îòäåëà=");
        sqlQueryString.append(otdel_ID);
        qsotrydnikiOtdela.prepare(sqlQueryString);
        qsotrydnikiOtdela.exec();
        field_fio_sotrydnika = qsotrydnikiOtdela.record().indexOf(tr("ÔÈÎ"));
        field_id_sotrydnika = qsotrydnikiOtdela.record().indexOf(tr("Èäåíòèôèêàòîð"));
        while (qsotrydnikiOtdela.next())
        {
                QList <TSystemBlock> sys_block_list_tmp;
                QString id_user;
//              fio_sotrydnika_otdela = qsotrydnikiOtdela.value(field_fio_sotrydnika).toString();
//              id_sotrydnika_otdela = qsotrydnikiOtdela.value(field_id_sotrydnika).toString();
                user_tmp.name = qsotrydnikiOtdela.value(field_fio_sotrydnika).toString();
                id_user = qsotrydnikiOtdela.value(field_id_sotrydnika).toString();
                user_tmp.ID = id_user;
        //      user_list_rtrn.append(user_tmp);
                sys_block_list_tmp = get_sys_block_list(id_user);
                user_tmp.system_block_list = sys_block_list_tmp;
//              treeItem_sotrydnika = new QTreeWidgetItem(itemOtdela);
//              treeItem_sotrydnika->setText(1, fio_sotrydnika_otdela );
                user_list_rtrn.append(user_tmp);
        }
        return  user_list_rtrn;
}


void raportForm::bild_raport(){
        TSibgipro sgshm;
                QList <TOtdel> sgshm_otdel_list;
                QString otdel_name, otdel_id, user_name;
                document = textEdit->document();
                cursor = new QTextCursor(document);
                cursor->movePosition(QTextCursor::Start);
     QTextCharFormat format(cursor->charFormat());
     //format.setFontFamily("Courier");
     format.setFontFamily("Arial");
     //format.setFontItalic(false);

     format.setFontWeight(QFont::Normal);
     QTextCharFormat boldFormat = format;
     boldFormat.setFontWeight(QFont::Bold);

        QTextCharFormat italicFormat = format;
     //format.setFontFamily("Courier");
//     format.setFontFamily("Arial");
     italicFormat.setFontItalic(true);



                sgshm = get_sibgipro();
                sgshm_otdel_list = sgshm.otdel_list;


                for (int i = 0; i < sgshm_otdel_list.size(); ++i) {
                        otdel_name = sgshm_otdel_list.at(i).name;
                       
/////                   cursor->insertText(otdel_name, boldFormat);
/////                   ENTER
                        otdel_id = sgshm_otdel_list.at(i).ID;
/////                   cursor->insertText(otdel_id, format);
/////                   ENTER

                                for (int m = 0; m < sgshm_otdel_list.at(i).user_list.size(); ++m)
                                {
                                        QString sys_id, sys_inv_num, sys_ser_num;
//                                      int k_tmp;
                                        user_name = sgshm_otdel_list.at(i).user_list.at(m).name;
                                        cursor->insertText(otdel_name, format);
                                        ENTER
                                        cursor->insertText(user_name, boldFormat);
                                        ENTER
//                                      k_tmp = ;
                                        for (int k = 0; k < sgshm_otdel_list.at(i).user_list.at(m).system_block_list.size(); ++k)
                                        {
                                               
                                        sys_id = sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).ID;
                                        sys_inv_num = sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).inv_num;
                                        sys_ser_num = sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).ser_num;
                                        cursor->insertText(tr("Ñèñòåìíûé áëîê:"), format);
//                                      ENTER
                                        cursor->insertText(tr("  èíâ. íîìåð: "), italicFormat);
                                        cursor->insertText(sys_inv_num, format);
                                        cursor->insertText(tr("  ñåð. íîìåð: "), italicFormat);
                                        cursor->insertText(sys_ser_num, format);
                                       
                                        ENTER
                                                for (int l = 0; l < sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).mb_list.size(); ++l)
                                                {
                                                        QString mb_proizvoditel, mb_model;
                                                        mb_proizvoditel = sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).mb_list.at(l).proizvoditel;
                                                        mb_model = sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).mb_list.at(l).model;
                                                        cursor->insertText(tr("   Ìàòåðèíñêàÿ ïëàòà: "), format);
                                                        cursor->insertText(mb_proizvoditel, format);
                                                        cursor->insertText(tr(" "), format);
                                                        cursor->insertText(mb_model, format);
                                                        ENTER
                                                }
                                               
                                                for (int l = 0; l < sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).cpu_list.size(); ++l)
                                                {
                                                        QString cpu_proizvoditel, cpu_model, cpu_fqr;
                                                        cpu_proizvoditel = sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).cpu_list.at(l).proizvoditel;
                                                        cpu_model = sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).cpu_list.at(l).model;
                                                        cpu_fqr = sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).cpu_list.at(l).fqr;
                                                        cursor->insertText(tr("   Ïðîöåññîð: "), format);
                                                        cursor->insertText(cpu_proizvoditel, format);
                                                        cursor->insertText(tr(" "), format);
                                                        cursor->insertText(cpu_model, format);
                                                        cursor->insertText(tr(" "), format);
                                                        cursor->insertText(cpu_fqr, format);
                                                        cursor->insertText(tr(" ÌÃö"), format);
                                                        ENTER
                                                }
                                               
                                               
                                                for (int l = 0; l < sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).memory_list.size(); ++l)
                                                {
                                                        QString memory_proizvoditel, memory_tip, memory_obem;
                                                        memory_proizvoditel = sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).memory_list.at(l).proizvoditel;
                                                        memory_tip = sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).memory_list.at(l).tip;
                                                        memory_obem = sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).memory_list.at(l).obem;
                                                        cursor->insertText(tr("   Ìîäóëü ïàìÿòè: "), format);
                                                        cursor->insertText(memory_proizvoditel, format);
                                                        cursor->insertText(tr(" "), format);
                                                        cursor->insertText(memory_tip, format);
                                                        cursor->insertText(tr(" "), format);
                                                        cursor->insertText(memory_obem, format);
                                                        cursor->insertText(tr(" ÌÁ"), format);
                                                        ENTER
                                                }
                                               
                                                for (int l = 0; l < sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).harddisc_list.size(); ++l)
                                                {
                                                        QString hdd_proizvoditel, hdd_model, hdd_obem;
                                                        hdd_proizvoditel = sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).harddisc_list.at(l).proizvoditel;
                                                        hdd_model = sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).harddisc_list.at(l).model;
                                                        hdd_obem = sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).harddisc_list.at(l).obem;
                                                        cursor->insertText(tr("   Æåñòêèé äèñê: "), format);
                                                        cursor->insertText(hdd_proizvoditel, format);
                                                        cursor->insertText(tr(" "), format);
                                                        cursor->insertText(hdd_model, format);
                                                        cursor->insertText(tr(" "), format);
                                                        cursor->insertText(hdd_obem, format);
                                                        cursor->insertText(tr(" ÃÁ"), format);
                                                        ENTER
                                                }
                                               
                                                for (int l = 0; l < sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).privod_list.size(); ++l)
                                                {
                                                        QString privod_proizvoditel, privod_model, privod_ID, privod_speed, privod_inv_num, privod_ser_num, privod_tip;
                                                        privod_proizvoditel = sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).privod_list.at(l).proizvoditel;
                                                        privod_model = sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).privod_list.at(l).model;
                                                        privod_speed = sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).privod_list.at(l).speed;
                                                        privod_tip = sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).privod_list.at(l).tip;
                                                        cursor->insertText(tr("   Ïðèâîä: "), format);
                                                        cursor->insertText(privod_tip, format);
                                                        cursor->insertText(tr(" "), format);
                                                        cursor->insertText(privod_proizvoditel, format);
                                                        cursor->insertText(tr(" "), format);
                                                        cursor->insertText(privod_model, format);
                                                        cursor->insertText(tr(" "), format);
                                                        cursor->insertText(privod_speed, format);
                                                        //cursor->insertText(tr(" ÃÁ"), format);
                                                        ENTER
                                                }
                                       
                                                for (int l = 0; l < sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).videocard_list.size(); ++l)
                                                {
                                                        QString videocard_proizvoditel, videocard_model, videocard_ID, videocard_ram_size, videocard_inv_num, videocard_ser_num, videocard_interfeis;
                                                        videocard_proizvoditel = sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).videocard_list.at(l).proizvoditel;
                                                        videocard_model = sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).videocard_list.at(l).model;
                                                        videocard_ram_size = sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).videocard_list.at(l).memory_value;
                                                        videocard_inv_num = sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).videocard_list.at(l).inv_num;
                                                        videocard_ser_num = sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).videocard_list.at(l).ser_num;
                                                        videocard_interfeis =  sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).videocard_list.at(l).interfeis;
                                                        cursor->insertText(tr("   Âèäåîàäàïòåð: "), format);
                                                        cursor->insertText(videocard_interfeis, format);
                                                        cursor->insertText(tr(" "), format);
                                                        cursor->insertText(videocard_proizvoditel, format);
                                                        cursor->insertText(tr(" "), format);
                                                        cursor->insertText(videocard_model, format);
                                                        cursor->insertText(tr(" "), format);
                                                        cursor->insertText(videocard_ram_size, format);
                                                        cursor->insertText(tr(" "), format);
//                                                      cursor->insertText(privod_speed, format);
                                                        cursor->insertText(tr(" MÁ"), format);
                                                        ENTER
                                                }
                                               
                                                for (int l = 0; l < sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).soundcard_list.size(); ++l)
                                                {
                                                        QString soundcard_proizvoditel, soundcard_model, soundcard_ID, soundcard_ram_size, soundcard_inv_num, soundcard_ser_num, soundcard_interfeis;
                                                        soundcard_proizvoditel = sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).soundcard_list.at(l).proizvoditel;
                                                        soundcard_model = sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).soundcard_list.at(l).model;
//                                                      soundcard_ram_size = sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).videocard_list.at(l).memory_value;
                                                        soundcard_inv_num = sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).soundcard_list.at(l).inv_num;
                                                        soundcard_ser_num = sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).soundcard_list.at(l).ser_num;
//                                                      soundcard_interfeis =  sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).videocard_list.at(l).interfeis;
                                                        cursor->insertText(tr("   Çâóêîâàÿ êàðòà: "), format);
                                                        cursor->insertText(soundcard_proizvoditel, format);
                                                        cursor->insertText(tr(" "), format);
//                                                      cursor->insertText(videocard_proizvoditel, format);
//                                                      cursor->insertText(tr(" "), format);
                                                        cursor->insertText(soundcard_model, format);
                                                        cursor->insertText(tr(" "), format);
//                                                      cursor->insertText(videocard_ram_size, format);
//                                                      cursor->insertText(tr(" "), format);
//                                                      cursor->insertText(privod_speed, format);
//                                                      cursor->insertText(tr(" MÁ"), format);
                                                        ENTER
                                                }
                                               
                                                for (int l = 0; l < sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).lancard_list.size(); ++l)
                                                {
                                                        QString lancard_proizvoditel, lancard_model, lancard_ID, lancard_ram_size, lancard_inv_num, lancard_ser_num, landcard_interfeis;
                                                        lancard_proizvoditel = sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).lancard_list.at(l).proizvoditel;
                                                        lancard_model = sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).lancard_list.at(l).model;
//                                                      soundcard_ram_size = sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).videocard_list.at(l).memory_value;
                                                        lancard_inv_num = sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).lancard_list.at(l).inv_num;
                                                        lancard_ser_num = sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).lancard_list.at(l).ser_num;
//                                                      soundcard_interfeis =  sgshm_otdel_list.at(i).user_list.at(m).system_block_list.at(k).videocard_list.at(l).interfeis;
                                                        cursor->insertText(tr("   Ñåòåâàÿ êàðòà: "), format);
                                                        cursor->insertText(lancard_proizvoditel, format);
                                                        cursor->insertText(tr(" "), format);
//                                                      cursor->insertText(videocard_proizvoditel, format);
//                                                      cursor->insertText(tr(" "), format);
                                                        cursor->insertText(lancard_model, format);
                                                        cursor->insertText(tr(" "), format);
//                                                      cursor->insertText(videocard_ram_size, format);
//                                                      cursor->insertText(tr(" "), format);
//                                                      cursor->insertText(privod_speed, format);
//                                                      cursor->insertText(tr(" MÁ"), format);
                                                        ENTER
                                                }
                                               
                                               
                                               
                                       
                                        }

                                        ENTER
                                        ENTER
                                       
                                       
                                }
                                                                                               
                       
                        ENTER
                }
}


QList<TSystemBlock> raportForm::get_sys_block_list(QString id_otv_lica)
{
        QList<TSystemBlock> sys_block_list_rtrn;
        TSystemBlock sys_block_tmp;
        QString result, prResult;
        QVariant data_tmp;
        QString sqlQueryText;
        QString serial_num, inventar_num, proizvoditel, model, system_block_id;
        QSqlQuery quer;
        QString MB_information, Memory_information, CPU_information, HDD_information, CD_DVD_information, Vidio_information;
        QString Sound_card_information, Lan_card_information;
        int field_serialNum, field_inventarNum, field_proizvoditel, field_model, field_system_block_id, field_data_pokypki;
//      QSqlQuery qns(tr("SET NAMES utf8"));// ïîëó÷àåì ñïèñîê îòäåëîâ
        QTreeWidgetItem *itemSysBlock;
//      sqlQueryText.reserve(300);
        sqlQueryText = tr("select system_blocks.Ñåðèéíûé_íîìåð, system_blocks.Èíâåíòàðíûé_íîìåð, system_blocks.Äàòà_ïîêóïêè, system_blocks.Èäåíòèôèêàòîð"
        " from system_blocks"
        " where system_blocks.Èäåíòèôèêàòîð_îòâåòñòâåííîãî_ëèöà =");
        sqlQueryText.append(id_otv_lica);
//      sqlQueryText.append(tr(" AND Ìàòåðèíñêèå_ïëàòû.Èäåíòèôèêàòîð_ñèñòåìíîãî_áëîêà = Ñèñòåìíûå_áëîêè.Èäåíòèôèêàòîð"));
        quer.prepare(sqlQueryText);
//      quer.prepare(tr("select Ñèñòåìíûå_áëîêè.Ñåðèéíûé_íîìåð, Ñèñòåìíûå_áëîêè.Èíâåíòàðíûé_íîìåð,Ìàòåðèíñêèå_ïëàòû.Ïðîèçâîäèòåëü, Ìàòåðèíñêèå_ïëàòû.Ìîäåëü from Ñèñòåìíûå_áëîêè,Ìàòåðèíñêèå_ïëàòû where Ñèñòåìíûå_áëîêè.Èäåíòèôèêàòîð_îòâåòñòâåííîãî_ëèöà = 4 AND Ìàòåðèíñêèå_ïëàòû.Èäåíòèôèêàòîð_ñèñòåìíîãî_áëîêà = Ñèñòåìíûå_áëîêè.Èäåíòèôèêàòîð;"));
        quer.exec();
        field_serialNum = quer.record().indexOf(tr("Ñåðèéíûé_íîìåð"));
        field_inventarNum = quer.record().indexOf(tr("Èíâåíòàðíûé_íîìåð"));
        field_system_block_id = quer.record().indexOf(tr("Èäåíòèôèêàòîð"));
//      field_proizvoditel = quer.record().indexOf(tr("Ïðîèçâîäèòåëü"));
//      field_model = quer.record().indexOf(tr("Ìîäåëü"));
        while(quer.next()){
        QList <TMatheboard> mb_list_tmp;
        QList <TMemory> memory_list_tmp;
        QList<TCpu> cpu_list_tmp;
        QList<THarddisc> harddisc_list_tmp;
        QList<TPrivod> privod_list_tmp;
        QList<TVideocard> videocard_list_tmp;
        QList<TSoundcard> soundcard_list_tmp;
        QList<TLancard> lancard_list_tmp;
        system_block_id = quer.value(field_system_block_id).toString();                                 //èäåíòèôèêàòîð ñèñòåìíîãî áëîêà
        sys_block_tmp.ID = system_block_id;
        prResult = ""; 
        serial_num = quer.value(field_serialNum).toString();
        sys_block_tmp.ser_num = serial_num;
        inventar_num = quer.value(field_inventarNum).toString();
        sys_block_tmp.inv_num = inventar_num;
        mb_list_tmp = get_matheboard_list(system_block_id);
        sys_block_tmp.mb_list = mb_list_tmp;
        memory_list_tmp = get_memory_list(system_block_id);
        sys_block_tmp.memory_list = memory_list_tmp;
        cpu_list_tmp = get_cpu_list(system_block_id);
        sys_block_tmp.cpu_list = cpu_list_tmp;
        harddisc_list_tmp = get_harddisc_list(system_block_id);
        sys_block_tmp.harddisc_list =   harddisc_list_tmp;
        privod_list_tmp = get_privod_list(system_block_id);
        sys_block_tmp.privod_list = privod_list_tmp;
        videocard_list_tmp = get_videocard_list(system_block_id);
        sys_block_tmp.videocard_list = videocard_list_tmp;
        soundcard_list_tmp = get_soundcard_list(system_block_id);
        sys_block_tmp.soundcard_list = soundcard_list_tmp;
        lancard_list_tmp = get_lancard_list(system_block_id);
        sys_block_tmp.lancard_list = lancard_list_tmp;
       
        sys_block_list_rtrn.append(sys_block_tmp);
        }
        return sys_block_list_rtrn;
}


QList<TMatheboard> raportForm::get_matheboard_list(QString id_system_block)
{
        TMatheboard matheboard_tmp;
        QList<TMatheboard> mb_list_rtrn;
        QString result, tmp;
        QString MB_proizvoditel, MB_model, MB_identifikator, MB_serial_num, MB_inventar_num;
        QString MatheBoardSqlQueryText;
        QSqlQuery MatheBoardQuery;
        int field_proizvoditel, field_model, field_identifikator, field_serial_num, field_inventar_num;
        QTreeWidgetItem *itemMB, *itmMB_block;
        MatheBoardSqlQueryText = tr("select * "
        " from matheboards where matheboards.Èäåíòèôèêàòîð_ñèñòåìíîãî_áëîêà = "
        );
        MatheBoardSqlQueryText.append(id_system_block);
        MatheBoardQuery.prepare(MatheBoardSqlQueryText);
        MatheBoardQuery.exec();
        field_identifikator = MatheBoardQuery.record().indexOf(tr("Èäåíòèôèêàòîð"));
        field_proizvoditel = MatheBoardQuery.record().indexOf(tr("Ïðîèçâîäèòåëü"));
        field_model = MatheBoardQuery.record().indexOf(tr("Ìîäåëü"));
        field_serial_num = MatheBoardQuery.record().indexOf(tr("Ñåðèéíûé_íîìåð"));
        field_inventar_num = MatheBoardQuery.record().indexOf(tr("Èíâåíòàðíûé_íîìåð"));
       
               
        while(MatheBoardQuery.next()){
                tmp = "";
                MB_identifikator = MatheBoardQuery.value(field_identifikator).toString();
                MB_proizvoditel = MatheBoardQuery.value(field_proizvoditel).toString();
                MB_model = MatheBoardQuery.value(field_model).toString();
                MB_serial_num = MatheBoardQuery.value(field_serial_num).toString();
                MB_inventar_num = MatheBoardQuery.value(field_inventar_num).toString();
               
                matheboard_tmp.ID = MB_identifikator;
                matheboard_tmp.proizvoditel = MB_proizvoditel;
                matheboard_tmp.model = MB_model;
                matheboard_tmp.ser_num = MB_serial_num;
                matheboard_tmp.inv_num = MB_inventar_num;
               
                mb_list_rtrn.append(matheboard_tmp);
               
/*      if (MB_proizvoditel != "") {
//              tmp.append(tr("MB: "));
                tmp.append(MB_proizvoditel);
                }
        if (MB_model != "") {tmp.append(tr(" "));
        tmp.append(MB_model);
        tmp.append(tr(" "));}
        result.append(tmp);
       
        itemMB = new QTreeWidgetItem(itemSysBlock);
        itemMB->setIcon(4, matheboard_icon);
        itemMB->setText(4, tmp);
        itemMB->setText(12, MB_identifikator);
        itemMB->setText(13, id_systemBlock);
        itemMB->setText(14, id_otvetstvennogo_lica);
        itemMB->setText(2, tr("Ìàòåðèíñêàÿ ïëàòà"));
        itemMB->setText(3, MB_inventar_num);
        if (id_systemBlock !="1") itemSysBlock->setText(5, tmp);
*/
     
                }
        return mb_list_rtrn;
}

QList<TMemory> raportForm::get_memory_list(QString id_system_block)
{
        TMemory memory_tmp;
        QList <TMemory> memory_list_rtrn;
        QString result, tmp;
        QString Memiry_id, Memory_proizvoditel, Memory_type, Memory_obem, Memory_inventar_num, Memory_serial_num;
        QString MemorySqlQueryText;
        QSqlQuery MemoryQuery;
        int field_proizvoditel, field_type, field_obem, field_id, field_inventar_num, field_sereal_num;
//      QTreeWidgetItem *itemMemory, *itemMemory_block;
        MemorySqlQueryText = tr("select memory.* "
        " from memory where memory.Èäåíòèôèêàòîð_ñèñòåìíîãî_áëîêà = "
        );
        MemorySqlQueryText.append(id_system_block);
        MemoryQuery.prepare(MemorySqlQueryText);
        MemoryQuery.exec();
        field_id = MemoryQuery.record().indexOf(tr("Èäåíòèôèêàòîð"));
        field_proizvoditel = MemoryQuery.record().indexOf(tr("Ïðîèçâîäèòåëü"));
        field_type = MemoryQuery.record().indexOf(tr("Òèï"));
        field_obem = MemoryQuery.record().indexOf(tr("Îáúåì"));
        field_inventar_num = MemoryQuery.record().indexOf(tr("Èíâåíòàðíûé_íîìåð"));
        field_sereal_num = MemoryQuery.record().indexOf(tr("Ñåðèéíûé_íîìåð"));
       
        while(MemoryQuery.next()){
//              tmp = tr("RAM: ");
                tmp = tr("");
                Memiry_id = MemoryQuery.value(field_id).toString();
                Memory_proizvoditel = MemoryQuery.value(field_proizvoditel).toString();
                Memory_type = MemoryQuery.value(field_type).toString();
                Memory_obem = MemoryQuery.value(field_obem).toString();
                Memory_inventar_num = MemoryQuery.value(field_inventar_num).toString();
                Memory_serial_num = MemoryQuery.value(field_sereal_num).toString();
                memory_tmp.ID = Memiry_id;
                memory_tmp.proizvoditel = Memory_proizvoditel;
                memory_tmp.obem = Memory_obem;
                memory_tmp.tip = Memory_type;
                memory_tmp.inv_num = Memory_inventar_num;
                memory_tmp.ser_num = Memory_serial_num;
////    if (Memory_proizvoditel != "") {
////            tmp.append(Memory_proizvoditel);}
/*
        if (Memory_type != "") {tmp.append(tr(" "));
        tmp.append(Memory_type);
        tmp.append(tr(" "));}
        if (Memory_obem != "") {tmp.append(tr(" "));
        tmp.append(Memory_obem);
        tmp.append(tr("MB; "));}
        result.append(tmp);
*/
     
                memory_list_rtrn.append(memory_tmp);
                }
        return memory_list_rtrn;
}


QList<TCpu> raportForm::get_cpu_list(QString id_system_block)
{
        TCpu cpu_tmp;
        QList <TCpu> cpu_list_rtrn;
        QString CPU_id, CPU_proizvoditel, CPU_slot, CPU_fqr, CPU_inventar_num, CPU_serial_num, CPU_model;
        QString CpuSqlQueryText;
        QSqlQuery CpuQuery;
        int field_id, field_proizvoditel, field_slot, field_fqr, field_inventar_num, field_serial_num, field_model;
        CpuSqlQueryText = tr("select processors.* "
        " from processors where processors.Èäåíòèôèêàòîð_ñèñòåìíîãî_áëîêà = "
        );
        CpuSqlQueryText.append(id_system_block);
        CpuQuery.prepare(CpuSqlQueryText);
        CpuQuery.exec();
        field_id = CpuQuery.record().indexOf(tr("Èäåíòèôèêàòîð"));
        field_proizvoditel = CpuQuery.record().indexOf(tr("Ïðîèçâîäèòåëü"));
        field_slot = CpuQuery.record().indexOf(tr("Ñëîò"));
        field_fqr = CpuQuery.record().indexOf(tr("×àñòîòà"));
        field_inventar_num = CpuQuery.record().indexOf(tr("Èíâåíòàðíûé_íîìåð"));
        field_serial_num = CpuQuery.record().indexOf(tr("Ñåðèéíûé_íîìåð"));
        field_model = CpuQuery.record().indexOf(tr("Ìîäåëü"));

        while(CpuQuery.next()){
                CPU_id = CpuQuery.value(field_id).toString();
                CPU_proizvoditel = CpuQuery.value(field_proizvoditel).toString();
                CPU_slot = CpuQuery.value(field_slot).toString();
                CPU_fqr = CpuQuery.value(field_fqr).toString();
                CPU_inventar_num =  CpuQuery.value(field_inventar_num).toString();
                CPU_serial_num = CpuQuery.value(field_serial_num).toString();
                CPU_model = CpuQuery.value(field_model).toString();
               
                cpu_tmp.ID = CPU_id;
                cpu_tmp.proizvoditel = CPU_proizvoditel;
                cpu_tmp.slot = CPU_slot;
                cpu_tmp.fqr = CPU_fqr;
                cpu_tmp.inv_num = CPU_inventar_num;
                cpu_tmp.ser_num = CPU_serial_num;
                cpu_tmp.model = CPU_model;
                cpu_list_rtrn.append(cpu_tmp);
                }
        return cpu_list_rtrn;
}

QList<THarddisc> raportForm::get_harddisc_list(QString id_system_block)
{
        QList<THarddisc> harddisc_list_rtrn;
        THarddisc harddisc_tmp;
        QString result, tmp;
        QString HDD_id, HDD_proizvoditel, HDD_interfeis, HDD_obem, HDD_inventar_num, HDD_serial_num;
        QString HDDSqlQueryText;
        QSqlQuery HDDQuery;
        int field_id, field_proizvoditel, field_interfeis, field_obem, field_inventar_num, field_serial_num;
        HDDSqlQueryText = tr("select harddiscs.* "
        " from harddiscs where harddiscs.Èäåíòèôèêàòîð_ñèñòåìíîãî_áëîêà = "
        );
        HDDSqlQueryText.append(id_system_block);
        HDDQuery.prepare(HDDSqlQueryText);
        HDDQuery.exec();
        field_id = HDDQuery.record().indexOf(tr("Èäåíòèôèêàòîð"));
        field_proizvoditel = HDDQuery.record().indexOf(tr("Ïðîèçâîäèòåëü"));
        field_interfeis = HDDQuery.record().indexOf(tr("Èíòåðôåéñ"));
        field_obem = HDDQuery.record().indexOf(tr("Îáúåì"));
        field_inventar_num = HDDQuery.record().indexOf(tr("Èíâåíòàðíûé_íîìåð"));
        field_serial_num = HDDQuery.record().indexOf(tr("Ñåðèéíûé_íîìåð"));
       
        while(HDDQuery.next()){
//              tmp = tr("HDD: ");
                tmp = tr("");
                HDD_id = HDDQuery.value(field_id).toString();
                HDD_proizvoditel = HDDQuery.value(field_proizvoditel).toString();
                HDD_interfeis = HDDQuery.value(field_interfeis).toString();
                HDD_obem = HDDQuery.value(field_obem).toString();
                HDD_inventar_num =  HDDQuery.value(field_inventar_num).toString();
                HDD_serial_num = HDDQuery.value(field_serial_num).toString();
                harddisc_tmp.ID = HDD_id;
                harddisc_tmp.proizvoditel = HDD_proizvoditel;
                harddisc_tmp.interfeis = HDD_interfeis;
                harddisc_tmp.obem = HDD_obem;
                harddisc_tmp.inv_num =  HDD_inventar_num;
                harddisc_tmp.ser_num = HDD_serial_num;
                harddisc_list_rtrn.append(harddisc_tmp);
                }

//      if (result!="") itemSysBlock->setIcon(7, hdd_icon);
//      if (id_systemBlock !="1") itemSysBlock->setText(7, result);
        return harddisc_list_rtrn;

}


QList<TPrivod> raportForm::get_privod_list(QString id_system_block)
{
        TPrivod privod_tmp;
        QList<TPrivod> privod_list_rtrn;
        QString result, tmp;
        QString CD_DVD_id, CD_DVD_proizvoditel, CD_DVD_type, CD_DVD_speed, CD_DVD_serial_num, CD_DVD_inventar_num;
        QString CD_DVD_SqlQueryText;
        QSqlQuery CD_DVD_Query;
        int field_id, field_proizvoditel, field_type, field_speed, field_serial_num, field_inventar_num;
        QTreeWidgetItem *item_CD_DVD;
        QTreeWidgetItem *item_CD_DVD_block;
        CD_DVD_SqlQueryText = tr("select cd_dvd.* "
        " from cd_dvd where cd_dvd.Èäåíòèôèêàòîð_ñèñòåìíîãî_áëîêà = "
        );
        CD_DVD_SqlQueryText.append(id_system_block);
        CD_DVD_Query.prepare(CD_DVD_SqlQueryText);
        CD_DVD_Query.exec();
        field_id = CD_DVD_Query.record().indexOf(tr("Èäåíòèôèêàòîð"));
        field_proizvoditel = CD_DVD_Query.record().indexOf(tr("Ïðîèçâîäèòåëü"));
        field_type = CD_DVD_Query.record().indexOf(tr("Òèï"));
        field_speed = CD_DVD_Query.record().indexOf(tr("Ñêîðîñòü"));
        field_inventar_num = CD_DVD_Query.record().indexOf(tr("Èíâåíòàðíûé_íîìåð"));
        field_serial_num = CD_DVD_Query.record().indexOf(tr("Ñåðèéíûé_íîìåð"));

/*
        if (id_otvetstvennogo_lica == "1" && id_systemBlock == "1"){
                item_CD_DVD_block = new QTreeWidgetItem(itemSysBlock);
                item_CD_DVD_block->setText(2, tr("ÏÐÈÂÎÄÛ"));
                item_CD_DVD_block->setText(14, id_otvetstvennogo_lica);
        }
*/


        while(CD_DVD_Query.next()){
//              tmp = tr("CD/DVD: ");
        tmp = tr("");
                CD_DVD_id = CD_DVD_Query.value(field_id).toString();
                CD_DVD_proizvoditel = CD_DVD_Query.value(field_proizvoditel).toString();
                CD_DVD_type = CD_DVD_Query.value(field_type).toString();
                CD_DVD_speed = CD_DVD_Query.value(field_speed).toString();
                CD_DVD_serial_num = CD_DVD_Query.value(field_serial_num).toString();
                CD_DVD_inventar_num = CD_DVD_Query.value(field_inventar_num).toString();
               
                privod_tmp.ID = CD_DVD_id;
                privod_tmp.proizvoditel = CD_DVD_proizvoditel;
                privod_tmp.tip = CD_DVD_type;
                privod_tmp.speed = CD_DVD_speed;
                privod_tmp.inv_num = CD_DVD_inventar_num;
                privod_tmp.ser_num = CD_DVD_serial_num;
                privod_list_rtrn.append(privod_tmp);
/*             
               
        if (CD_DVD_type != "") {
                tmp.append(CD_DVD_type);}
        if (CD_DVD_proizvoditel != "") {tmp.append(tr(" "));
        tmp.append(CD_DVD_proizvoditel);
        tmp.append(tr(" "));}
        if (CD_DVD_speed != "") {tmp.append(tr(" "));
        tmp.append(CD_DVD_speed);
        tmp.append(tr(" "));}
        result.append(tmp);
       
if (id_otvetstvennogo_lica == "1" && id_systemBlock == "1"){
                item_CD_DVD  = new QTreeWidgetItem(item_CD_DVD_block);
        }
        else item_CD_DVD = new QTreeWidgetItem(itemSysBlock);
       
        item_CD_DVD->setText(2, tr("Ïðèâîä"));
        item_CD_DVD->setText(12, CD_DVD_id);
        item_CD_DVD->setText(13, id_systemBlock);
        item_CD_DVD->setText(14, id_otvetstvennogo_lica);
        item_CD_DVD->setIcon(4, cd_dvd_icon);
        item_CD_DVD->setText(4, tmp);
        item_CD_DVD->setText(3, CD_DVD_inventar_num);
*/

                }
       
//      if (id_systemBlock !="1") itemSysBlock->setText(8, result);
        return privod_list_rtrn;
       
}


QList<TVideocard> raportForm::get_videocard_list(QString id_system_block)
{
        QList<TVideocard> videocard_list_rtrn;
        TVideocard videocard_tmp;
        QString result, tmp;
        QString Vidio_id, Vidio_proizvoditel, Vidio_model, Vidio_interfeis, Vidio_ram, Vidio_inventar_num, Vidio_sereal_num;
        QString Vidio_SqlQueryText;
        QSqlQuery Vidio_Query;
        int field_id, field_proizvoditel, field_model, field_interfeis, field_ram, field_inventar_num, field_sereal_num;
        QTreeWidgetItem *item_Vidio, *item_Vidio_block;
        Vidio_SqlQueryText = tr("select videocards.* "
        " from videocards where videocards.Èäåíòèôèêàòîð_ñèñòåìíîãî_áëîêà = "
        );
        Vidio_SqlQueryText.append(id_system_block);
        Vidio_Query.prepare(Vidio_SqlQueryText);
        Vidio_Query.exec();
        field_id = Vidio_Query.record().indexOf(tr("Èäåíòèôèêàòîð"));
        field_proizvoditel = Vidio_Query.record().indexOf(tr("Ïðîèçâîäèòåëü"));
        field_model = Vidio_Query.record().indexOf(tr("Ìîäåëü"));
        field_interfeis  = Vidio_Query.record().indexOf(tr("Èíòåðôåéñ"));
        field_ram = Vidio_Query.record().indexOf(tr("Ïàìÿòü"));
        field_inventar_num = Vidio_Query.record().indexOf(tr("Èíâåíòàðíûé_íîìåð"));
        field_sereal_num = Vidio_Query.record().indexOf(tr("Ñåðèéíûé_íîìåð"));

       
/*
        if (id_otvetstvennogo_lica == "1" && id_systemBlock == "1"){
                item_Vidio_block = new QTreeWidgetItem(itemSysBlock);
                item_Vidio_block->setText(2, tr("ÂÈÄÅÎÊÀÐÒÛ"));
                item_Vidio_block->setText(14, id_otvetstvennogo_lica);
        }
*/



        while(Vidio_Query.next()){
//              tmp = tr("CD/DVD: ");
        tmp = tr("");
                Vidio_id = Vidio_Query.value(field_id).toString();
                Vidio_proizvoditel = Vidio_Query.value(field_proizvoditel).toString();
                Vidio_model = Vidio_Query.value(field_model).toString();
                Vidio_interfeis = Vidio_Query.value(field_interfeis).toString();
                Vidio_ram = Vidio_Query.value(field_ram).toString();
                Vidio_inventar_num = Vidio_Query.value(field_inventar_num).toString();
                Vidio_sereal_num =  Vidio_Query.value(field_sereal_num).toString();


                videocard_tmp.ID = Vidio_id;
                videocard_tmp.proizvoditel = Vidio_proizvoditel;
                videocard_tmp.interfeis = Vidio_interfeis;
                videocard_tmp.model = Vidio_model;
                videocard_tmp.memory_value = Vidio_ram;
                videocard_tmp.inv_num = Vidio_inventar_num;
                videocard_tmp.ser_num = Vidio_sereal_num;
               
                videocard_list_rtrn.append(videocard_tmp);
               
/*
        if (Vidio_interfeis != "") {tmp.append(tr(" "));
        tmp.append(Vidio_interfeis);}
        if (Vidio_proizvoditel != "") {tmp.append(tr(" "));
        tmp.append(Vidio_proizvoditel);}
        if (Vidio_model != "") {tmp.append(tr(" "));
                tmp.append(Vidio_model);}
       
        if (Vidio_ram !=""){tmp.append(tr(" "));
        tmp.append(Vidio_ram);
        tmp.append(tr(" Mb"));
               
        }
        result.append(tmp);
       
        if (id_otvetstvennogo_lica == "1" && id_systemBlock == "1"){
                item_Vidio  = new QTreeWidgetItem(item_Vidio_block);
        }
        else item_Vidio = new QTreeWidgetItem(itemSysBlock);


//      item_Vidio = new QTreeWidgetItem(itemSysBlock);

        item_Vidio->setText(2, tr("Âèäåîêàðòà"));
        item_Vidio->setText(12, Vidio_id);
        item_Vidio->setText(13, id_systemBlock);
        item_Vidio->setText(14, id_otvetstvennogo_lica);
        item_Vidio->setIcon(4, vidio_card_icon);
        item_Vidio->setText(4, tmp);
        item_Vidio->setText(3, Vidio_inventar_num);
*/

                }
//      if (id_systemBlock !="1") itemSysBlock->setText(9, result);
        return videocard_list_rtrn;
}

QList<TSoundcard> raportForm::get_soundcard_list(QString id_system_block)
{
        TSoundcard soundcard_tmp;
        QList<TSoundcard> soundcard_list_rtrn;
        QString result, tmp;
        QString Sound_card_id, Sound_card_proizvoditel, Sound_card_model, Sound_card_inventar_num, Sound_card_serial_num;
        QString Sound_card_SqlQueryText;
        QSqlQuery Sound_card_Query;
        int field_id, field_proizvoditel, field_model, field_inventar_num, field_serial_num;
        QTreeWidgetItem *item_Sound_card, *item_Sound_card_block;
        Sound_card_SqlQueryText = tr("select soundcards.* "
        " from soundcards where soundcards.Èäåíòèôèêàòîð_ñèñòåìíîãî_áëîêà = "
        );
        Sound_card_SqlQueryText.append(id_system_block);
        Sound_card_Query.prepare(Sound_card_SqlQueryText);
        Sound_card_Query.exec();
        field_id = Sound_card_Query.record().indexOf(tr("Èäåíòèôèêàòîð"));
        field_proizvoditel = Sound_card_Query.record().indexOf(tr("Ïðîèçâîäèòåëü"));
        field_model = Sound_card_Query.record().indexOf(tr("Ìîäåëü"));
        field_inventar_num =  Sound_card_Query.record().indexOf(tr("Èíâåíòàðíûé_íîìåð"));
        field_serial_num = Sound_card_Query.record().indexOf(tr("Ñåðèéíûé_íîìåð"));
       
/*
        if (id_otvetstvennogo_lica == "1" && id_systemBlock == "1"){
                item_Sound_card_block = new QTreeWidgetItem(itemSysBlock);
                item_Sound_card_block->setText(2, tr("ÇÂÓÊÎÂÛÅ ÊÀÐÒÛ"));
                item_Sound_card_block->setText(14, id_otvetstvennogo_lica);
        }
*/

        while(Sound_card_Query.next()){
//              tmp = tr("CD/DVD: ");
        tmp = tr("");
                Sound_card_id = Sound_card_Query.value(field_id).toString();
                Sound_card_proizvoditel = Sound_card_Query.value(field_proizvoditel).toString();
                Sound_card_model = Sound_card_Query.value(field_model).toString();
                Sound_card_inventar_num = Sound_card_Query.value(field_inventar_num).toString();
                Sound_card_serial_num = Sound_card_Query.value(field_serial_num).toString();
               
                soundcard_tmp.ID = Sound_card_id;
                soundcard_tmp.proizvoditel = Sound_card_proizvoditel;
                soundcard_tmp.model = Sound_card_model;
                soundcard_tmp.inv_num = Sound_card_inventar_num;
                soundcard_tmp.ser_num = Sound_card_serial_num;
               
                soundcard_list_rtrn.append(soundcard_tmp);
//              Vidio_interfeis = Vidio_Query.value(field_interfeis).toString();
//              Vidio_ram = Vidio_Query.value(field_ram).toString();

/*
        if (Sound_card_proizvoditel != "") {tmp.append(tr(" "));
        tmp.append(Sound_card_proizvoditel);}

        if (Sound_card_model != "") {tmp.append(tr(" "));
                tmp.append(Sound_card_model);}
       
///     if (Vidio_ram !=""){tmp.append(tr(" "));
///     tmp.append(Vidio_ram);
///     tmp.append(tr(" Mb"));
               
///     }
        result.append(tmp);
       
        if (id_otvetstvennogo_lica == "1" && id_systemBlock == "1"){
                item_Sound_card  = new QTreeWidgetItem(item_Sound_card_block);
        }
        else item_Sound_card = new QTreeWidgetItem(itemSysBlock);

       
//      item_Sound_card = new QTreeWidgetItem(itemSysBlock);
       
       
        item_Sound_card->setText(2, tr("Çâóêîâàÿ êàðòà"));
        item_Sound_card->setText(12, Sound_card_id);
        item_Sound_card->setText(13, id_systemBlock);
        item_Sound_card->setText(14, id_otvetstvennogo_lica);
        item_Sound_card->setIcon(4, sound_card_icon);
        item_Sound_card->setText(4, tmp);
        item_Sound_card->setText(3, Sound_card_inventar_num);
*/

                }
//      if (id_systemBlock !="1") itemSysBlock->setText(10, result);
        return soundcard_list_rtrn;    

}

QList<TLancard> raportForm::get_lancard_list(QString id_system_block)
{
       
        TLancard lancard_tmp;
        QList<TLancard> lancard_list_rtrn;
        QString result, tmp;
        QString Lan_card_id, Lan_card_proizvoditel, Lan_card_model, Lan_speed, Lan_inventar_num, Lan_serial_num;
        QString Lan_card_SqlQueryText;
        QSqlQuery Lan_card_Query;
        int field_id, field_proizvoditel, field_model, field_speed, field_serial_num, field_inventar_num;
        QTreeWidgetItem *item_Lan_card, *item_Lan_card_block;
        Lan_card_SqlQueryText = tr("select lancards.* "
        " from lancards where lancards.Èäåíòèôèêàòîð_ñèñòåìíîãî_áëîêà = "
        );
        Lan_card_SqlQueryText.append(id_system_block);
        Lan_card_Query.prepare(Lan_card_SqlQueryText);
        Lan_card_Query.exec();
        field_id = Lan_card_Query.record().indexOf(tr("Èäåíòèôèêàòîð"));
        field_proizvoditel = Lan_card_Query.record().indexOf(tr("Ïðîèçâîäèòåëü"));
        field_model = Lan_card_Query.record().indexOf(tr("Ìîäåëü"));
        field_speed = Lan_card_Query.record().indexOf(tr("Ñêîðîñòü_ïåðåäà÷è_äàííûõ"));
        field_serial_num = Lan_card_Query.record().indexOf(tr("Ñåðèéíûé_íîìåð"));
        field_inventar_num = Lan_card_Query.record().indexOf(tr("Èíâåíòàðíûé_íîìåð"));
       
/*     
        if (id_otvetstvennogo_lica == "1" && id_systemBlock == "1"){
                item_Lan_card_block = new QTreeWidgetItem(itemSysBlock);
                item_Lan_card_block->setText(2, tr("ÑÅÒÅÂÛÅ ÊÀÐÒÛ"));
                item_Lan_card_block->setText(14, id_otvetstvennogo_lica);
        }
*/

        while(Lan_card_Query.next()){
//              tmp = tr("CD/DVD: ");
        tmp = tr("");
                Lan_card_id = Lan_card_Query.value(field_id).toString();
                Lan_card_proizvoditel = Lan_card_Query.value(field_proizvoditel).toString();
                Lan_card_model = Lan_card_Query.value(field_model).toString();
                Lan_speed = Lan_card_Query.value(field_speed).toString();
                Lan_inventar_num =  Lan_card_Query.value(field_inventar_num).toString();
                Lan_serial_num = Lan_card_Query.value(field_serial_num).toString();
               
                lancard_tmp.ID = Lan_card_id;
                lancard_tmp.proizvoditel = Lan_card_proizvoditel;
                lancard_tmp.model = Lan_card_model;
                lancard_tmp.speed = Lan_speed;
                lancard_tmp.ser_num = Lan_serial_num;
                lancard_tmp.inv_num = Lan_inventar_num;
               
                lancard_list_rtrn.append(lancard_tmp);
//              Vidio_interfeis = Vidio_Query.value(field_interfeis).toString();
//              Vidio_ram = Vidio_Query.value(field_ram).toString();

/*
        if (Lan_card_proizvoditel != "") {tmp.append(tr(" "));
        tmp.append(Lan_card_proizvoditel);}

        if (Lan_card_model != "") {tmp.append(tr(" "));
                tmp.append(Lan_card_model);}
               
        if (Lan_speed != "") {tmp.append(tr(" "));
                tmp.append(Lan_speed);
                tmp.append(tr(" Mbit"));}


///     if (Vidio_ram !=""){tmp.append(tr(" "));
///     tmp.append(Vidio_ram);
///     tmp.append(tr(" Mb"));
               
///     }
        result.append(tmp);
       
        if (id_otvetstvennogo_lica == "1" && id_systemBlock == "1"){
                item_Lan_card  = new QTreeWidgetItem(item_Lan_card_block);
        }
        else item_Lan_card = new QTreeWidgetItem(itemSysBlock);
       
//      item_Lan_card = new QTreeWidgetItem(itemSysBlock);
       
       
        item_Lan_card->setText(2, tr("Ñåòåâàÿ êàðòà"));
        item_Lan_card->setText(12, Lan_card_id);
        item_Lan_card->setText(13, id_systemBlock);
        item_Lan_card->setText(14, id_otvetstvennogo_lica);
        item_Lan_card->setIcon(4, lan_card_icon);
        item_Lan_card->setText(4, tmp);
        item_Lan_card->setText(3, Lan_inventar_num);
*/

                }
//      if (id_systemBlock !="1") itemSysBlock->setText(11, result);
        return lancard_list_rtrn;      
       
}

void raportForm::on_print_raport()
{
        print_raport();
}

void raportForm::on_print_raport_to_pdf()
{
        print_raport_to_pdf();
}