Ejemplo n.º 1
0
int main(int argc, char *argv[] )
{
	QApplication app(argc, argv);
	
	NCReport report;

	//-------------------------------------------
	// TEST STRINGLIST DATASOURCE
	//-------------------------------------------
	QStringList list;
	list << "24\tRenate Moulding\tDesert Hot Springs,CA\t1\t2008-01-01";
	list << "78\tAlfred Muller\tMiami Beach, FL\t1\t2008-01-03";
	list << "140\tAngela Merkel\tMunchen, Germany\t1\t2008-01-07";
	list << "139\tBob Larson\tDallas, TX\t0\t2008-01-20";
	
	report.addStringList( list, "sl0" );

	QStringList list2;
	list2 << "0000000014|Abkrzung: 005|Ein -->>|Zeitgruppe|<<-- Karenzzeit|";
	list2 << "0000000015|Abkrzung: 010|Zwei -->>|Zeitgruppe|2254112|";
	list2 << "0000000016|Abkrzung: 015|Drei -->>|Zeitgruppe|6998714|";
	
	report.addStringList( list2, "sl1" );


	NCRTestForm window;
	window.setReport( &report );
	window.setReportFile( "../reports/stringlist_demo.xml");

    window.show();

    return app.exec();
}
Ejemplo n.º 2
0
void Widget::on_pushButton_clicked()
{
    QStringList list;

    list << "a;a;a;a;a;a"
         << "aa;aa;aa;aa;aa;aa"
         << "aaa;aaa;aaa;aaa;aaa;aaa"
         << "aaaa;aaaa;aaaa;aaaa;aaaa;aaaa"
         << "aaaaa;aaaaa;aaaaa;aaaaa;aaaaa;aaaaa"
         << "aaaaaa;aaaaaa;aaaaaa;aaaaaa;aaaaaa;aaaaaa";


    NCReport *report = new NCReport();

    report->setReportSource( NCReportSource::File );    
    report->setReportFile(":/reports/report.xml");
    report->addStringList(list, "model1");

    report->runReportToPreview();

    if (report->hasError()) {

        qDebug() << "ERROR:" << report->lastErrorMsg();

    } else {

        NCReportPreviewWindow *pv = new NCReportPreviewWindow();
        pv->setOutput( (NCReportPreviewOutput*)report->output() );
        pv->setWindowModality( Qt::ApplicationModal );
        pv->setAttribute( Qt::WA_DeleteOnClose );
        pv->show();
    }

    delete report;
}
Ejemplo n.º 3
0
void Form_listSTbyPhong::on_pushButton_2_clicked()
{
    NCReport *report = new NCReport();
    report->setReportSource( NCReportSource::File ); // set report source type
    //report->addItemModel(querymodel_room,"myModel");
    report->setReportFile("/home/xdien/ProjectsQT/qlsv_ktx/lietkeDSSV.ncr"); //set the report filename fullpath or relative to dir
    report->runReportToPreview(); // run to preview output
    // error handling
    if( report->hasError())
    {
        QMessageBox msgBox;
        msgBox.setText(QObject::tr("Report error: ") + report->lastErrorMsg());
        msgBox.exec();
    }
    else
    {
        // show preview
        NCReportPreviewWindow *pv = new NCReportPreviewWindow();    // create preview window
        pv->setOutput( (NCReportPreviewOutput*)report->output() );  // add output to the window
        pv->setReport(report);
        pv->setWindowModality(Qt::ApplicationModal );    // set modality
        pv->setAttribute( Qt::WA_DeleteOnClose );    // set attrib
        pv->exec();  // run like modal dialog
    }
    delete report;
}
Ejemplo n.º 4
0
int main(int argc, char *argv[] )
{
	QApplication app(argc, argv);
	
	NCReport report;
	
	//-------------------------------------------
	// SAMPLE ITEM RENDERING CLASS
	//-------------------------------------------
	Graph *graph = new Graph();
	graph->setID("graph01");
	report.addItemRenderingClass( graph );
	
	
	NCRTestForm window;
	window.setReport( &report );
	window.setReportFile( "../reports/graph_demo.xml");
    window.show();
    return app.exec();
}
Ejemplo n.º 5
0
int main(int argc, char *argv[] )
{
	QApplication app(argc, argv);
	
	NCReport report;

	//-------------------------------------------
	// TEST ITEM MODEL DATASOURCE
	//-------------------------------------------
	QStandardItemModel *model = new QStandardItemModel( 6, 4 );
	QStandardItem *item =0;
	
	// -----------------------------------	
	item = new QStandardItem();
	item->setData( 1, Qt::EditRole );
	model->setItem( 0, 0, item);
	
	item = new QStandardItem();
	item->setData( "Chai", Qt::EditRole );
	model->setItem( 0, 1, item);
	
	item = new QStandardItem();
	item->setData( 16.0, Qt::EditRole );
	model->setItem( 0, 2, item);
	
	item = new QStandardItem();
	item->setData( 1540.0, Qt::EditRole );
	model->setItem( 0, 3, item);

	// -----------------------------------	
	item = new QStandardItem();
	item->setData( 2, Qt::EditRole );
	model->setItem( 1, 0, item);
	
	item = new QStandardItem();
	item->setData( "Chef Anton's Cajun Seasoning", Qt::EditRole );
	model->setItem( 1, 1, item);
	
	item = new QStandardItem();
	item->setData( 20.0, Qt::EditRole );
	model->setItem( 1, 2, item);
	
	item = new QStandardItem();
	item->setData( 1230.0, Qt::EditRole );
	model->setItem( 1, 3, item);
	
	// -----------------------------------	
	item = new QStandardItem();
	item->setData( 3, Qt::EditRole );
	model->setItem( 2, 0, item);
	
	item = new QStandardItem();
	item->setData( "Grandma's Boysenberry Spread", Qt::EditRole );
	model->setItem( 2, 1, item);
	
	item = new QStandardItem();
	item->setData( 21.0, Qt::EditRole );
	model->setItem( 2, 2, item);
	
	item = new QStandardItem();
	item->setData( 520.2, Qt::EditRole );
	model->setItem( 2, 3, item);
	
	// -----------------------------------	
	item = new QStandardItem();
	item->setData( 4, Qt::EditRole );
	model->setItem( 3, 0, item);
	
	item = new QStandardItem();
	item->setData( "Uncle Bob's Organic Dried Pears", Qt::EditRole );
	model->setItem( 3, 1, item);
	
	item = new QStandardItem();
	item->setData( 25.6, Qt::EditRole );
	model->setItem( 3, 2, item);
	
	item = new QStandardItem();
	item->setData( 593.0, Qt::EditRole );
	model->setItem( 3, 3, item);
	
	// -----------------------------------	
	item = new QStandardItem();
	item->setData( 5, Qt::EditRole );
	model->setItem( 4, 0, item);
	
	item = new QStandardItem();
	item->setData( "Mishi Kobe Niku", Qt::EditRole );
	model->setItem( 4, 1, item);
	
	item = new QStandardItem();
	item->setData( 72.0, Qt::EditRole );
	model->setItem( 4, 2, item);
	
	item = new QStandardItem();
	item->setData( 130.0, Qt::EditRole );
	model->setItem( 4, 3, item);
		
	// -----------------------------------	
	item = new QStandardItem();
	item->setData( 6, Qt::EditRole );
	model->setItem( 5, 0, item);
	
	item = new QStandardItem();
	item->setData( "Queso Manchego La Pastora", Qt::EditRole );
	model->setItem( 5, 1, item);
	
	item = new QStandardItem();
	item->setData( 32.0, Qt::EditRole );
	model->setItem( 5, 2, item);
	
	item = new QStandardItem();
	item->setData( 985.5, Qt::EditRole );
	model->setItem( 5, 3, item);
	
	// -----------------------------------	
	item = new QStandardItem();
	item->setData( 7, Qt::EditRole );
	model->setItem( 6, 0, item);
	
	item = new QStandardItem();
	item->setData( "Genen Shouyu", Qt::EditRole );
	model->setItem( 6, 1, item);
	
	item = new QStandardItem();
	item->setData( 14.2, Qt::EditRole );
	model->setItem( 6, 2, item);
	
	item = new QStandardItem();
	item->setData( 1005.0, Qt::EditRole );
	model->setItem( 6, 3, item);
	
	report.addItemModel( model, "model1" );
	
	NCRTestForm window;
	window.setReport( &report );
	window.setReportFile( "../reports/itemmodel_demo.xml");

    window.show();

    return app.exec();
}
Ejemplo n.º 6
0
void ingresoBienes::guardar(){

    QMessageBox msgBox;
    msgBox.setText("Ingreso de Transacciones.");
    msgBox.setInformativeText("¿Desea guardar y terminar la transaccion?");
    msgBox.setStandardButtons(QMessageBox::Save | QMessageBox::Cancel);
    msgBox.setDefaultButton(QMessageBox::Save);
    int ret = msgBox.exec(), codigoIngreso=0;
    bool exitoTrans=true;

    switch (ret) {
        case QMessageBox::Save:{

                QDateTime HoraFecha=QDateTime::currentDateTime();
                Fecha *_fechaTran=new Fecha(HoraFecha.date().day(), HoraFecha.date().month(), HoraFecha.date().year());

                /*Variables del bien*/
                string nombreClase, cuentaAsignada;
                float valor=0.0;
                Fecha *fechaAdquisicion;
                QString fechaAq;
                QDate fAdquisicion;

                int inventarioAF=QVariant(m_ui->anioInventario->itemData(m_ui->anioInventario->currentIndex())).toInt();


                /**Variables Generales*/
                QString facturaProveedor, noCEF, fechaFactura, noCSU, fechaCSU, proveedor;
                QString fuentedeFondos, observaciones, tipoBien, Horatran, Fechatran, serie, marca, modelo, especifico, codigoBien, codCuenta, codIngreso;

                facturaProveedor=m_ui->noFactura->text();
                noCEF=m_ui->CEF->text();
                fechaFactura=m_ui->fechaFactura->date().toString(Qt::ISODate);
                noCSU=m_ui->numeroAcuerdoCSU->text();
                fechaCSU=m_ui->fechaAcuerdo->date().toString(Qt::ISODate);
                proveedor=m_ui->nombreProveedor->currentText();
                observaciones=m_ui->observaciones->text();
                tipoBien=QString("activofijo");
                Horatran=HoraFecha.time().toString(Qt::ISODate);
                Fechatran=HoraFecha.date().toString(Qt::ISODate);
                codIngreso=m_ui->numeroIngreso->text();

                int sector=0;

                //servicioPersistencia=new Persistencia(this->regBasico->getUnidad()->id);
                std::map<int, string> listaSectores=servicioPersistencia->cargarSectores();

                //servicioPersistencia->BEGIN();
                QSqlDatabase::database("sibcues").exec("begin");


                if(m_ui->fondoGeneral->isChecked())
                    fuentedeFondos="fondogeneral";
                if(m_ui->fondosPropios->isChecked())
                    fuentedeFondos="fondospropios";
                if(m_ui->donado->isChecked())
                    fuentedeFondos="donado";

                if(this->nuevoIngreso){
                 codigoIngreso=servicioPersistencia->guardarIngresoBienes(Fechatran, proveedor, noCEF, facturaProveedor, fechaFactura, noCSU , fechaCSU, fuentedeFondos, observaciones, tipoBien, Horatran, this->estadoIngreso, codIngreso );
                }
                else{
                  servicioPersistencia->actualizarIngresoBienes(this->idIngreso, proveedor, noCEF, facturaProveedor,  fechaFactura,  noCSU , fechaCSU,  fuentedeFondos,  observaciones,  estadoIngreso, codIngreso);
                  codigoIngreso=this->idIngreso;
                }


                /**Objeto Bien*/
                Bien *bien;
                int codBien;


                for(int i=0; i< m_ui->tablaBienes->rowCount(); i++)
                {

                    for
                    (
                            map<int, string>::iterator it = listaSectores.begin();
                            it != listaSectores.end();
                            ++it
                     ){
                                    if(m_ui->tablaBienes->item(i, 9)->data(0).toString()==QString::fromStdString(it->second))
                                        sector=it->first;
                    }

                    codCuenta=m_ui->tablaBienes->item(i, 0)->data(0).toString();
                    cuentaAsignada=QString(this->listaCodigosCuentas[m_ui->tablaBienes->item(i, 0)->data(0).toString().toStdString()].c_str() ).toStdString();
                    nombreClase=m_ui->tablaBienes->item(i, 1)->data(0).toString().toStdString();

                    especifico=m_ui->tablaBienes->item(i, 2)->data(0).toString();
                    valor=m_ui->tablaBienes->item(i, 8)->data(0).toString().toFloat();
                    fechaAq=m_ui->tablaBienes->item(i, 7)->data(0).toString();
                    fAdquisicion=m_ui->tablaBienes->item(i, 7)->data(0).toDate();

                    fechaAdquisicion=new Fecha(fAdquisicion.day(), fAdquisicion.month(), fAdquisicion.year() );

                    marca=m_ui->tablaBienes->item(i, 4)->data(0).toString();
                    modelo=m_ui->tablaBienes->item(i, 5)->data(0).toString();
                    serie=m_ui->tablaBienes->item(i, 6)->data(0).toString();

                    if(this->registroCatalogo->existeClase( nombreClase , cuentaAsignada))
                    {

                        moduloinventario::EspecificacionBien *espec=this->registroCatalogo->getEspecificacion(nombreClase , cuentaAsignada );
                        if(m_ui->tablaBienes->item(i, 10)->data(0).toInt()==0)
                            bien=this->inventario->crearBien(espec, valor, fechaAdquisicion, 1, true);
                        else
                            bien=this->inventario->crearBien(espec, valor, fechaAdquisicion, 1, false);

                        bien->setSerie(serie.toStdString());
                        bien->estadoBien=1;
                        bien->setSector(sector);

                        if(m_ui->tablaBienes->item(i, 10)->data(0).toInt()==0){
                            QList<QString> listaCorrelativos=servicioPersistencia->getListaCorelativosDisponiblesAF(espec->oid_especbien);
                            bien->correlativo=listaCorrelativos.takeFirst().toStdString();
                        }

                        QString codigUnidad=QString::fromStdString(this->regBasico->getUnidad()->codigoP1())+QString::fromStdString(this->regBasico->getUnidad()->codigoP2());
                        codigoBien=codCuenta+"-"+codigUnidad+"-"+QString::fromStdString(nombreClase)+"-"+QString::fromStdString(bien->correlativo)+"-"+especifico;

                        if(m_ui->tablaBienes->item(i, 10)->data(0).toInt()==0){
                            codBien=servicioPersistencia->guardarBien(espec, QString(bien->correlativo.c_str()), serie, valor, fechaAq, sector, modelo, marca, especifico, codigoBien, this->estadoBien, inventarioAF);
                            if(exitoTrans)
                                exitoTrans=servicioPersistencia->crearlineaIngresoAF(codBien, codigoIngreso );
                        }
                        else{
                            codBien=m_ui->tablaBienes->item(i, 10)->data(0).toInt();
                            servicioPersistencia->actualizarBien(codBien, espec, serie, valor, fechaAq, sector, modelo, marca, especifico, this->estadoBien);
                            if(exitoTrans)
                                exitoTrans=servicioPersistencia->crearlineaIngresoAF(codBien, codigoIngreso );
                        }
                        bien->oid=codBien;
                        bien->idModelo=servicioPersistencia->oidModelo(modelo);
                   }
                }

                if(exitoTrans){

                    QSqlDatabase::database("sibcues").commit();
                    QMessageBox msgBox;
                    msgBox.information(0,"Captura de Datos","    Ingresado con exito!.   ");

                    for(int i=m_ui->tablaBienes->rowCount() -1; i>=0; i--)
                    {
                        this->m_ui->tablaBienes->removeRow(i);
                    }
                    this->fila=0;
                    this->m_ui->finalizarTransaccion->setDisabled(true);
                    this->m_ui->btmGuardar->setDisabled(true);

                       servicioPersistencia->crearConexion();

                       NCReport *report = new NCReport();
                       report->reset(true);
                       report->setReportSource( NCReportSource::File  );
                       report->setReportFile("Reportes/ingresoBienesAF.xml");

                       report->addParameter( "idIngreso", QVariant(codigoIngreso) );

                       report->runReportToPreview();
                       QString error=report->lastErrorMsg();
                       std::cout<< error.toStdString();

                       if ( !report->hasError() ) {
                         NCReportPreviewWindow *pv = new NCReportPreviewWindow();
                         pv->setOutput( (NCReportPreviewOutput*)report->output() );
                         pv->setWindowModality( Qt::ApplicationModal );
                         //pv->setAttribute( Qt::WA_DeleteOnClose );
                         pv->show();
                       }
                 }

            }
            break;

      case QMessageBox::Cancel:{
                  QMessageBox msgBox;
                  msgBox.setText("    Puede continuar ingresando transacciones   ");
                  msgBox.exec();
            }
            break;
       default:
            break;
    }

}
Ejemplo n.º 7
0
void DescargoBienesMB::on_finalizarTransaccion_pressed(){
    QMessageBox msgBox;
    msgBox.setText("Descargo de Bienes");
    msgBox.setInformativeText("¿Desea guardar y terminar la transaccion?");
    msgBox.setStandardButtons(QMessageBox::Save | QMessageBox::Cancel);

    msgBox.setDefaultButton(QMessageBox::Save);

    int ret = msgBox.exec();

    switch (ret) {
        case QMessageBox::Save:{

            QDateTime HoraFecha=QDateTime::currentDateTime();

            QString Horatran, Fechatran, observaciones, motivo;

            Horatran=HoraFecha.time().toString(Qt::ISODate);
            Fechatran=HoraFecha.date().toString(Qt::ISODate);
            observaciones=m_ui->observaciones->text();
            motivo=m_ui->motivo->text();

            servicioPersistencia=new Persistencia(this->regBasico->getUnidad()->id);

            this->estadoDescargo="finalizado";

            int codDescargo=servicioPersistencia->guardarDescargoBienes(Fechatran, Horatran,   observaciones,  motivo, "matbibliografico", m_ui->codigoDescargo->text(), this->estadoDescargo);

            for
            (
               map<int, Bien*>::iterator it = listaBienes.begin();
               it != listaBienes.end();
                ++it
            ){
                 servicioPersistencia->cambiaEstadoDescargadoMB(it->second);
                 //it->second->setDescargadoMB();
                 servicioPersistencia->crearlineaDescargoMB(it->second->oid, codDescargo);
            }

                  QMessageBox msgBox;
                  msgBox.information(0,"Descargo de Bienes","Descargado con exito!. ");

                  for(int i=m_ui->tablaBienes->rowCount() -1; i>=0; i--)
                  {
                      this->m_ui->tablaBienes->removeRow(i);
                  }
                  this->fila=0;
                  this->m_ui->finalizarTransaccion->setDisabled(true);

                  //CARGAR EL INVENTARIO
                 //this->inventario->cargarInventario(this->registroCatalogo, this->regBasico->getUnidad()->idInventario);

                     NCReport *report = new NCReport();
                     report->reset(true);
                     report->setReportSource( NCReportSource::File  );
                     report->setReportFile("Reportes/descargoBienesBiblio.xml");
                     report->addParameter( "idDescargo", QVariant(codDescargo) );

                     report->runReportToPreview();
                     QString error=report->lastErrorMsg();
                     std::cout<< error.toStdString();

                     NCReportPreviewWindow *pv = new NCReportPreviewWindow();
                     pv->setReport( report );
                     pv->setOutput( (NCReportPreviewOutput*) report->output() );
                     pv->setWindowModality(Qt::ApplicationModal );
                     pv->setAttribute( Qt::WA_DeleteOnClose );
                     pv->show();
                     this->close();

            }
            break;

      case QMessageBox::Cancel:{
                  QMessageBox msgBox;
                  QMessageBox::information(this,"Descargo de Bienes del Inventario","Puede continuar ingresando transacciones", QMessageBox::Ok);

            }
            break;
       default:
            break;
    }

}
Ejemplo n.º 8
0
void BienesporSector::on_btnVerReporte_clicked()
{


     NCReport *report = new NCReport();
     report->reset(true);
     report->setReportSource( NCReportSource::File  );
     report->setReportFile("Reportes/listadoBienesAF.xml");
     report->addParameter( "idUnidad", QVariant(registroBasico->getUnidad()->id));

     if(ui->anioSelecc->currentText()==("<< Todos >>"))
         report->addParameter( "anioInventarioSelecc", QVariant("%"));
     else
         report->addParameter( "anioInventarioSelecc", QVariant(ui->anioSelecc->currentText()));

     if(ui->descripSector->currentText()==("<< Todos >>"))
         report->addParameter( "descripcionSectoSelecc",QVariant("%"));
     else
         report->addParameter( "descripcionSectoSelecc",QVariant(ui->descripSector->currentText()));


     report->runReportToPreview();
     QString error=report->lastErrorMsg();
     std::cout<< error.toStdString();

     if ( !report->hasError() ) {
       NCReportPreviewWindow *pv = new NCReportPreviewWindow();
       pv->setOutput( (NCReportPreviewOutput*)report->output() );
       pv->setWindowModality( Qt::ApplicationModal );
       pv->show();
     }

}