예제 #1
0
/**
\param cuentaInicial
\param cuentaFinal
\param fechaInicial
\param fechaFinal
\param idCentroCoste
**/
void BalanceView::inicializa ( QString cuentaInicial, QString cuentaFinal, QString fechaInicial, QString fechaFinal, QString idCentroCoste )
{
    BL_FUNC_DEBUG
    mui_cuentaInicial->setText ( cuentaInicial );
    mui_cuentaFinal->setText ( cuentaFinal );
    mui_fechaInicial->setText ( blNormalizeDate ( fechaInicial ).toString ( "dd/MM/yyyy" ) );
    mui_fechaFinal->setText ( blNormalizeDate ( fechaFinal ).toString ( "dd/MM/yyyy" ) );
}
예제 #2
0
void BlDateSearch::s_searchFecha()
{
    BL_FUNC_DEBUG

    QDialog *diag = new QDialog ( 0 );
    diag->setModal ( true );
    QCalendarWidget *calend = new QCalendarWidget ( diag );
    /// Se pone el 1er dia del calendario a lunes.
    calend->setFirstDayOfWeek ( Qt::Monday );

    /// Evitar fechas demasiado antiguas
    calend->setMinimumDate( QDate ( 1900, 1, 1 ) );

    /// Si el campo estaba vacío, seleccionar una fecha imposible, pero mostrar el mes actual
    if ( m_textoFecha->text().isEmpty() ) {
        calend->setSelectedDate ( calend->minimumDate() );
        calend->setCurrentPage ( QDate::currentDate().year(), QDate::currentDate().month() );
    }

    /// Si ya hay una fecha en el campo, abrir el calendario con ese día seleccionado inicialmente
    else {
        calend->setSelectedDate ( blNormalizeDate ( m_textoFecha->text() ) );
    }

    connect ( calend, SIGNAL ( activated ( const QDate & ) ), diag, SLOT ( accept() ) );

    /// Creamos un layout donde estara el contenido de la ventana y la ajustamos al QDialog
    /// para que sea redimensionable y aparezca el titulo de la ventana.
    QHBoxLayout *layout = new QHBoxLayout;
    layout->addWidget ( calend );
    layout->setMargin ( 0 );
    layout->setSpacing ( 0 );
    diag->setLayout ( layout );
    diag->setWindowTitle ( _ ( "Seleccione fecha" ) );
    diag->exec();

    /// Si la fecha es imposible, significa que el usuario no ha seleccionado una fecha
    /// y su campo debe quedarse como estaba: vacío
    if ( calend->selectedDate() != QDate ( 1900, 1, 1 ) ) {
        m_textoFecha->setText ( calend->selectedDate().toString ( "dd/MM/yyyy" ) );
    }

    /// Liberamos la memoria
    delete layout;
    delete calend;
    delete diag;

    emit ( valueChanged ( m_textoFecha->text() ) );
    emit ( editingFinished () );

    
}
예제 #3
0
void DuplicarAsientoView::on_mui_aceptar_clicked()
{
    BL_FUNC_DEBUG
    QString asientoi = aoinicial->text();
    QString asientof = aofinal->text();
    QString query1, query2;
    QString textidasiento;

    QString idasiento;
    QString ordenasiento;

    QString textordeninicial;
    QDate fedinicial = blNormalizeDate ( fdinicial->text() );

    query1 = "SELECT * FROM asiento WHERE ordenasiento >= " + asientoi + " AND ordenasiento <= " + asientof + " AND EXTRACT (YEAR FROM fecha) = EXTRACT (YEAR FROM '" + fedinicial.toString ( "dd/MM/yyyy" ) + "'::date)";
    BlDbRecordSet *curasiento = mainCompany() ->loadQuery ( query1 );
    while ( !curasiento->eof() ) {

        query1 = "INSERT INTO asiento (descripcion, fecha, comentariosasiento) VALUES('" + curasiento->value( "descripcion" ) + "','" + fedinicial.toString ( "dd/MM/yyyy" ) + "','" + curasiento->value( "comentariosasiento" ) + "')";
        mainCompany() ->runQuery ( query1 );


        query1 = "SELECT * FROM asiento  ORDER BY idasiento DESC LIMIT 1";
        BlDbRecordSet *cursaux = mainCompany() ->loadQuery ( query1 );
        if ( !cursaux->eof() ) {
            idasiento = cursaux->value( "idasiento" );
            ordenasiento = cursaux->value( "ordenasiento" );
        } // end if
        delete cursaux;



        query2 = "SELECT * FROM borrador WHERE idasiento = " + curasiento->value( "idasiento" );
        BlDbRecordSet *curborrador = mainCompany() ->loadQuery ( query2 );

        while ( !curborrador->eof() ) {
            QString textiddiario = curborrador->value( "iddiario" );
            if ( textiddiario == "" ) {
                textiddiario = "NULL";
            } // end if
            QString textfecha = curborrador->value( "fecha" );
            textfecha = fedinicial.toString ( "dd/MM/yyyy" );
            QString textconceptocontable = curborrador->value( "conceptocontable" );
            QString textidcuenta = curborrador->value( "idcuenta" );
            if ( textidcuenta == "" ) {
                textidcuenta = "NULL";
            } // end if
            QString textdescripcion = curborrador->value( "descripcion" );
            QString textdebe = curborrador->value( "debe" );
            QString texthaber = curborrador->value( "haber" );
            QString textcontrapartida = curborrador->value( "contrapartida" );
            if ( textcontrapartida == "" ) {
                textcontrapartida = "NULL";
            } // end if
            QString textorden = curborrador->value( "ordenborrador" );
            if ( textorden == "" ) {
                textorden = "0";
            } // end if
            query2 = "INSERT INTO borrador (ordenborrador, idasiento, iddiario, fecha, conceptocontable, idcuenta, descripcion, debe, haber, contrapartida) VALUES (" + textorden + "," + idasiento + "," + textiddiario + ",'" + textfecha + "','" + textconceptocontable + "'," + textidcuenta + ",'" + textdescripcion + "'," + textdebe + "," + texthaber + "," + textcontrapartida + ")";
            mainCompany() ->runQuery ( query2 );
            curborrador->nextRecord();
        } // end while
        delete curborrador;
        query2 = "SELECT cierraasiento(" + idasiento + ")";
        BlDbRecordSet *cur = mainCompany() ->loadQuery ( query2 );
        delete cur;
        curasiento->nextRecord();
    } // end while
    delete curasiento;
    mainCompany() ->commit();
    done ( 1 );
    
}
예제 #4
0
/**
\param out
\param idcobro
\return
**/
QByteArray Q19View::cabeceraOrdenante ( QTextStream &out, QString idvencimientoc )
{
    BL_FUNC_DEBUG
    BlDbRecordSet *curcobro = mainCompany() ->loadQuery ( "SELECT * FROM vencimientoc LEFT JOIN factura ON vencimientoc.idfactura = factura.idfactura  WHERE vencimientoc.idvencimientoc = " + idvencimientoc );

    BlDbRecordSet *curbanco = mainCompany() -> loadQuery ( "SELECT * FROM banco WHERE idbanco = " + mui_idbanco->idbanco() );


    /// GENERAMOS LA CABECERA ORDENANTE
    /// REGISTRO DEL ORDENANTE
    QString cab_orden = "";
    /// Registro en Euros. Longitud: 2
    cab_orden.append ( "53" );
    /// Registro de codigo de dato: 80. Longitud: 2
    cab_orden.append ( "80" );

    /// Codigo de presentador (NIF + Sufijo alineado a la derecha y rellenado con ceros) Longitud: 12
    BlDbRecordSet *cur = mainCompany() ->loadQuery ( "SELECT * FROM configuracion WHERE nombre='CIF'" );
    QString nif = cur->value( "valor" );
    delete cur;
    QString sufijo = "000";
    QString codpresent = nif + sufijo;
    codpresent = codpresent.rightJustified ( 12, '0' );
    if ( codpresent.size() > 12 ) {
	BlDebug::blDebug ( Q_FUNC_INFO, 0, _("CIF demasiado largo.") );
    } // end if
    cab_orden.append ( codpresent.toAscii() );

    /// Fecha de emision del archivo
    QString fechaemfich = QDate::currentDate().toString ( "ddMMyy" );
    cab_orden.append ( fechaemfich.toAscii() );

    /// Fecha de cargo
    QString fechacargo = blNormalizeDate ( curcobro->value( "fechacobro" ) ).toString ( "ddMMyy" );
    cab_orden.append ( fechacargo.toAscii() );

    /// Nombre del cliente Ordenante Longitud: 40
    cur = mainCompany() ->loadQuery ( "SELECT * FROM configuracion WHERE nombre='NombreEmpresa'" );
    QString clientepresentador = cur->value( "valor" );
    delete cur;
    clientepresentador = clientepresentador.leftJustified ( 40, ' ' );
    if ( clientepresentador.size() > 40 ) {
	BlDebug::blDebug ( Q_FUNC_INFO, 0, _("Nombre de empresa demasiado largo.") );
    } // end if
    cab_orden.append ( clientepresentador.toAscii() );

    /// Entidad Receptora del fichero Longitud: 4
    QString ent_recept = curbanco->value( "codentidadbanco" ).leftJustified ( 4, '0' );
    if ( ent_recept.size() > 4 ) {
	BlDebug::blDebug ( Q_FUNC_INFO, 0, _("Entidad bancaria demasiado larga.") );
    } // end if
    cab_orden.append ( ent_recept.toAscii() );

    /// Oficina Receptora del fichero Longitud: 4
    QString ofi_recept = curbanco->value( "codagenciabanco" ).leftJustified ( 4, '0' );
    if ( ofi_recept.size() > 4 ) {
	BlDebug::blDebug ( Q_FUNC_INFO, 0, _("Oficina bancaria demasiado larga.") );
    } // end if
    cab_orden.append ( ofi_recept.toAscii() );

    /// DC Receptora del fichero Longitud: 2
    QString dc_recept = curbanco->value( "dcbanco" ).leftJustified ( 2, '0' );
    if ( dc_recept.size() > 4 ) {
	BlDebug::blDebug ( Q_FUNC_INFO, 0, _("Digito de control demasiado largo.") );
    } // end if
    cab_orden.append ( dc_recept.toAscii() );

    /// Oficina Receptora del fichero Longitud: 10
    QString cta_recept = curbanco->value( "numcuentabanco" ).leftJustified ( 10, '0' );
    if ( cta_recept.size() > 10 ) {
	BlDebug::blDebug ( Q_FUNC_INFO, 0, _("Cuenta bancaria demasiado larga.") );
    } // end if
    cab_orden.append ( cta_recept.toAscii() );

    /// Espacio libre Longitud: 8
    cab_orden.append ( QString ( 8, ' ' ) );

    /// Procedimiento de realizacion del adeudo (01 o 02) Longitud: 2
    cab_orden.append ( QString ( "01" ).toAscii() );

    /// Espacio libre Longitud: 10
    cab_orden.append ( QString ( 10, ' ' ) );

    /// Espacio libre Longitud: 40
    cab_orden.append ( QString ( 40, ' ' ) );

    /// Espacio libre Longitud: 14
    cab_orden.append ( QString ( 14, ' ' ) );
    out << cab_orden.toAscii()  << "\n";
    delete curcobro;
    delete curbanco;
    
    return cab_orden.toAscii();
}
예제 #5
0
/**
\param emp
\param parent
**/
ListRegistroIvaView::ListRegistroIvaView ( BcCompany * emp, QString, QWidget *parent )
        : QWidget ( parent )
{
    BL_FUNC_DEBUG
    setAttribute ( Qt::WA_DeleteOnClose );
    setupUi ( this );
    m_companyact = emp;
    finicial->setText ( blNormalizeDate ( "01/01" ).toString ( "dd/MM/yyyy" ) );
    ffinal->setText ( blNormalizeDate ( "31/12" ).toString ( "dd/MM/yyyy" ) );
    emp->insertWindow ( windowTitle(), this );

    /// DEFINICIONES PARA LA TABLA DE IVA Soportado.
    mui_tablasoportado->setMainCompany ( emp );
    mui_tablasoportado->setDbTableName ( "registroiva" );
    mui_tablasoportado->setDbFieldId ( "idregistroiva" );
    mui_tablasoportado->addSubFormHeader ( "idregistroiva", BlDbField::DbVarChar, BlDbField::DbNotNull, BlSubFormHeader::DbNoWrite, _ ( "Id" ) );
    mui_tablasoportado->addSubFormHeader ( "contrapartida", BlDbField::DbVarChar, BlDbField::DbNothing, BlSubFormHeader::DbNoWrite, _ ( "Concepto contable" ) );
    mui_tablasoportado->addSubFormHeader ( "baseimp", BlDbField::DbVarChar, BlDbField::DbNotNull, BlSubFormHeader::DbNoWrite | BlSubFormHeader::DbHideView, _ ( "idcuenta" ) );
    mui_tablasoportado->addSubFormHeader ( "iva", BlDbField::DbVarChar, BlDbField::DbNoSave, BlSubFormHeader::DbNoWrite, _ ( "IVA" ) );
    mui_tablasoportado->addSubFormHeader ( "ffactura", BlDbField::DbVarChar, BlDbField::DbNoSave, BlSubFormHeader::DbNoWrite, _ ( "Fecha de factura" ) );
    mui_tablasoportado->addSubFormHeader ( "femisionregistroiva", BlDbField::DbVarChar, BlDbField::DbNoSave, BlSubFormHeader::DbNoWrite, _ ( "descripcioncuenta" ) );
    mui_tablasoportado->addSubFormHeader ( "factura", BlDbField::DbVarChar, BlDbField::DbNothing, BlSubFormHeader::DbNoWrite, _ ( "descripcion" ) );
    mui_tablasoportado->addSubFormHeader ( "serieregistroiva", BlDbField::DbNumeric, BlDbField::DbNothing, BlSubFormHeader::DbNoWrite, _ ( "Debe" ) );
    mui_tablasoportado->addSubFormHeader ( "idborrador", BlDbField::DbNumeric, BlDbField::DbNothing, BlSubFormHeader::DbNoWrite, _ ( "Haber" ) );
    mui_tablasoportado->addSubFormHeader ( "incregistro", BlDbField::DbVarChar, BlDbField::DbNoSave, BlSubFormHeader::DbNoWrite, _ ( "Contrapartida" ) );
    mui_tablasoportado->addSubFormHeader ( "regularizacion", BlDbField::DbVarChar, BlDbField::DbNoSave, BlSubFormHeader::DbNoWrite, _ ( "Comentario" ) );
    mui_tablasoportado->addSubFormHeader ( "plan349", BlDbField::DbVarChar, BlDbField::DbNoSave, BlSubFormHeader::DbNoWrite, _ ( "ID Canal" ) );
    mui_tablasoportado->addSubFormHeader ( "numorden", BlDbField::DbVarChar, BlDbField::DbNoSave, BlSubFormHeader::DbNoWrite, _ ( "Conciliacion" ) );
    mui_tablasoportado->addSubFormHeader ( "cif", BlDbField::DbVarChar, BlDbField::DbNoSave, BlSubFormHeader::DbNoWrite, _ ( "idc_coste" ) );
    mui_tablasoportado->addSubFormHeader ( "idfpago", BlDbField::DbVarChar, BlDbField::DbNoSave, BlSubFormHeader::DbNoWrite, _ ( "idapunte" ) );
    mui_tablasoportado->addSubFormHeader ( "factemitida", BlDbField::DbVarChar, BlDbField::DbNoSave, BlSubFormHeader::DbNoWrite, _ ( "idtipoiva" ) );
    mui_tablasoportado->addSubFormHeader ( "rectificaaregistroiva", BlDbField::DbVarChar, BlDbField::DbNoSave, BlSubFormHeader::DbNoWrite, _ ( "orden" ) );
    mui_tablasoportado->addSubFormHeader ( "idasiento", BlDbField::DbVarChar, BlDbField::DbNoSave, BlSubFormHeader::DbNoWrite, _ ( "idasiento" ) );
    mui_tablasoportado->setInsert ( FALSE );

    /// DEFINICIONES PARA LA TABLA DE IVA Repercutido.
    mui_tablarepercutido->setMainCompany ( emp );
    mui_tablarepercutido->setDbTableName ( "registroiva" );
    mui_tablarepercutido->setDbFieldId ( "idregistroiva" );
    mui_tablarepercutido->addSubFormHeader ( "idregistroiva", BlDbField::DbVarChar, BlDbField::DbNotNull, BlSubFormHeader::DbNoWrite, _ ( "Id" ) );
    mui_tablarepercutido->addSubFormHeader ( "contrapartida", BlDbField::DbVarChar, BlDbField::DbNothing, BlSubFormHeader::DbNoWrite, _ ( "Concepto Contable" ) );
    mui_tablarepercutido->addSubFormHeader ( "baseimp", BlDbField::DbVarChar, BlDbField::DbNotNull, BlSubFormHeader::DbNoWrite | BlSubFormHeader::DbHideView, _ ( "idcuenta" ) );
    mui_tablarepercutido->addSubFormHeader ( "iva", BlDbField::DbVarChar, BlDbField::DbNoSave, BlSubFormHeader::DbNone, _ ( "codigo" ) );
    mui_tablarepercutido->addSubFormHeader ( "ffactura", BlDbField::DbVarChar, BlDbField::DbNoSave, BlSubFormHeader::DbNone, _ ( "tipocuenta" ) );
    mui_tablarepercutido->addSubFormHeader ( "femisionregistroiva", BlDbField::DbVarChar, BlDbField::DbNoSave, BlSubFormHeader::DbNone, _ ( "descripcioncuenta" ) );
    mui_tablarepercutido->addSubFormHeader ( "factura", BlDbField::DbVarChar, BlDbField::DbNothing, BlSubFormHeader::DbNone, _ ( "descripcion" ) );
    mui_tablarepercutido->addSubFormHeader ( "serieregistroiva", BlDbField::DbNumeric, BlDbField::DbNothing, BlSubFormHeader::DbNone, _ ( "Debe" ) );
    mui_tablarepercutido->addSubFormHeader ( "idborrador", BlDbField::DbNumeric, BlDbField::DbNothing, BlSubFormHeader::DbNone, _ ( "Haber" ) );
    mui_tablarepercutido->addSubFormHeader ( "incregistro", BlDbField::DbVarChar, BlDbField::DbNoSave, BlSubFormHeader::DbNone, _ ( "Contrapartida" ) );
    mui_tablarepercutido->addSubFormHeader ( "regularizacion", BlDbField::DbVarChar, BlDbField::DbNoSave, BlSubFormHeader::DbNone, _ ( "Comentario" ) );
    mui_tablarepercutido->addSubFormHeader ( "plan349", BlDbField::DbVarChar, BlDbField::DbNoSave, BlSubFormHeader::DbNone, _ ( "ID Canal" ) );
    mui_tablarepercutido->addSubFormHeader ( "numorden", BlDbField::DbVarChar, BlDbField::DbNoSave, BlSubFormHeader::DbNone, _ ( "Conciliacion" ) );
    mui_tablarepercutido->addSubFormHeader ( "cif", BlDbField::DbVarChar, BlDbField::DbNoSave, BlSubFormHeader::DbNone, _ ( "idc_coste" ) );
    mui_tablarepercutido->addSubFormHeader ( "idfpago", BlDbField::DbVarChar, BlDbField::DbNoSave, BlSubFormHeader::DbNone, _ ( "idapunte" ) );
    mui_tablarepercutido->addSubFormHeader ( "factemitida", BlDbField::DbVarChar, BlDbField::DbNoSave, BlSubFormHeader::DbNone, _ ( "idtipoiva" ) );
    mui_tablarepercutido->addSubFormHeader ( "rectificaaregistroiva", BlDbField::DbVarChar, BlDbField::DbNoSave, BlSubFormHeader::DbNone, _ ( "orden" ) );
    mui_tablarepercutido->addSubFormHeader ( "idasiento", BlDbField::DbVarChar, BlDbField::DbNoSave, BlSubFormHeader::DbNoWrite, _ ( "idasiento" ) );
    mui_tablarepercutido->setInsert ( FALSE );

    /// Definiciones para la tabla de repercutido
    mui_totalRepercutido->setMainCompany ( emp );
    mui_totalRepercutido->setDbTableName ( "" );
    mui_totalRepercutido->setDbFieldId ( "" );
    mui_totalRepercutido->addSubFormHeader ( "nombretipoiva", BlDbField::DbVarChar, BlDbField::DbNotNull, BlSubFormHeader::DbNoWrite, _ ( "nombretipoiva" ) );
    mui_totalRepercutido->addSubFormHeader ( "tivaiva", BlDbField::DbVarChar, BlDbField::DbNothing, BlSubFormHeader::DbNoWrite, _ ( "tivaiva" ) );
    mui_totalRepercutido->addSubFormHeader ( "tbaseiva", BlDbField::DbVarChar, BlDbField::DbNothing, BlSubFormHeader::DbNoWrite, _ ( "tbaseiva" ) );
    mui_totalRepercutido->setInsert ( FALSE );

    /// Definiciones para la tabla de soportado
    mui_totalSoportado->setMainCompany ( emp );
    mui_totalSoportado->setDbTableName ( "" );
    mui_totalSoportado->setDbFieldId ( "" );
    mui_totalSoportado->addSubFormHeader ( "nombretipoiva", BlDbField::DbVarChar, BlDbField::DbNotNull, BlSubFormHeader::DbNoWrite, _ ( "nombretipoiva" ) );
    mui_totalSoportado->addSubFormHeader ( "tivaiva", BlDbField::DbVarChar, BlDbField::DbNothing, BlSubFormHeader::DbNoWrite, _ ( "tivaiva" ) );
    mui_totalSoportado->addSubFormHeader ( "tbaseiva", BlDbField::DbVarChar, BlDbField::DbNothing, BlSubFormHeader::DbNoWrite, _ ( "tbaseiva" ) );
    mui_totalSoportado->setInsert ( FALSE );

    /// Fin de las definiciones para la tabla de IVA.
    
}