listlinasiento1view.cpp

Go to the documentation of this file.
00001 /***************************************************************************
00002  *   Copyright (C) 2005 by Tomeu Borras Riera                              *
00003  *   tborras@conetxia.com                                                  *
00004  *                                                                         *
00005  *   This program is free software; you can redistribute it and/or modify  *
00006  *   it under the terms of the GNU General Public License as published by  *
00007  *   the Free Software Foundation; either version 2 of the License, or     *
00008  *   (at your option) any later version.                                   *
00009  *                                                                         *
00010  *   This program is distributed in the hope that it will be useful,       *
00011  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
00012  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
00013  *   GNU General Public License for more details.                          *
00014  *                                                                         *
00015  *   You should have received a copy of the GNU General Public License     *
00016  *   along with this program; if not, write to the                         *
00017  *   Free Software Foundation, Inc.,                                       *
00018  *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
00019  ***************************************************************************/
00020 
00021 #include <QMenu>
00022 
00023 #include "listlinasiento1view.h"
00024 #include "plugins.h"
00025 #include "empresa.h"
00026 
00027 
00029 
00032 ListLinAsiento1View::ListLinAsiento1View(QWidget *parent, const char *)
00033         : SubForm2Bc(parent) {
00034     _depura("ListLinAsiento1View::ListLinAsiento1View", 0);
00035     setDBTableName("borrador");
00036     setFileConfig("asientotabla");
00037     setDBCampoId("idborrador");
00038     addSHeader("idapunte", DBCampo::DBvarchar, DBCampo::DBNoSave, SHeader::DBNoWrite | SHeader::DBNoView, tr("Id apunte"));
00039     addSHeader("fecha", DBCampo::DBvarchar, DBCampo::DBNotNull, SHeader::DBNone, tr("Fecha"));
00040     addSHeader("codigo", DBCampo::DBvarchar, DBCampo::DBNoSave, SHeader::DBNone, tr("Codigo"));
00041     addSHeader("descripcioncuenta", DBCampo::DBvarchar, DBCampo::DBNoSave, SHeader::DBNoWrite, tr("Nombre de la cuenta"));
00042     addSHeader("descripcion", DBCampo::DBvarchar, DBCampo::DBNothing, SHeader::DBNone, tr("Descripcion del apunte"));
00043     addSHeader("conceptocontable", DBCampo::DBvarchar, DBCampo::DBNothing, SHeader::DBNone, tr("Concepto contable"));
00044     addSHeader("debe", DBCampo::DBnumeric, DBCampo::DBNotNull, SHeader::DBNone, tr("Debe"));
00045     addSHeader("haber", DBCampo::DBnumeric, DBCampo::DBNotNull, SHeader::DBNone, tr("Haber"));
00046     addSHeader("contrapartida", DBCampo::DBvarchar, DBCampo::DBNoSave, SHeader::DBNoWrite | SHeader::DBNoView, tr("Contrapartida"));
00047     addSHeader("comentario", DBCampo::DBvarchar, DBCampo::DBNoSave, SHeader::DBNoWrite | SHeader::DBNoView, tr("Comentario"));
00048     addSHeader("idcanal", DBCampo::DBint, DBCampo::DBNothing, SHeader::DBNoWrite | SHeader::DBNoView, tr("ID Canal"));
00049     addSHeader("nomcanal", DBCampo::DBvarchar, DBCampo::DBNoSave, SHeader::DBNone, tr("Canal"));
00050     addSHeader("marcaconciliacion", DBCampo::DBvarchar, DBCampo::DBNoSave, SHeader::DBNoWrite | SHeader::DBNoView, tr("Conciliacion"));
00051     addSHeader("idc_coste", DBCampo::DBint, DBCampo::DBNothing, SHeader::DBNoWrite | SHeader::DBNoView, tr("Id centro de coste"));
00052     addSHeader("nomc_coste", DBCampo::DBvarchar, DBCampo::DBNoSave, SHeader::DBNone, tr("Centro de coste"));
00053     addSHeader("idtipoiva", DBCampo::DBvarchar, DBCampo::DBNoSave, SHeader::DBNoWrite | SHeader::DBNoView, tr("Id tipo de IVA"));
00054     addSHeader("orden", DBCampo::DBvarchar, DBCampo::DBNoSave, SHeader::DBNoWrite | SHeader::DBNoView, tr("Orden"));
00055     addSHeader("idborrador", DBCampo::DBint,  DBCampo::DBPrimaryKey, SHeader::DBNoWrite | SHeader::DBNoView, tr("Id borrador"));
00056     addSHeader("idasiento", DBCampo::DBvarchar, DBCampo::DBNotNull, SHeader::DBNoWrite | SHeader::DBNoView, tr("Id asiento"));
00057     addSHeader("idcuenta", DBCampo::DBint, DBCampo::DBNotNull, SHeader::DBNoWrite | SHeader::DBNoView, tr("Id cuenta"));
00058     addSHeader("tipocuenta", DBCampo::DBvarchar, DBCampo::DBNoSave, SHeader::DBNoWrite | SHeader::DBNoView, tr("Tipo de cuenta"));
00059     addSHeader("idregistroiva", DBCampo::DBvarchar, DBCampo::DBNoSave, SHeader::DBNoWrite | SHeader::DBNoView, tr("Id. Registro IVA"));
00060     addSHeader("factura", DBCampo::DBvarchar, DBCampo::DBNoSave, SHeader::DBNoWrite | SHeader::DBNoView, tr("Fecha Factura"));
00061     addSHeader("ffactura", DBCampo::DBvarchar, DBCampo::DBNoSave, SHeader::DBNoWrite | SHeader::DBNoView, tr("Num. Factura"));
00062     setinsercion(TRUE);
00063     setOrdenEnabled(FALSE);
00064     connect(this, SIGNAL(pintaMenu(QMenu *)), this, SLOT(s_pintaMenu(QMenu *)));
00065     connect(this, SIGNAL(trataMenu(QAction *)), this, SLOT(s_trataMenu(QAction *)));
00066     _depura("END ListLinAsiento1View::ListLinAsiento1View", 0);
00067 }
00068 
00069 
00071 
00073 ListLinAsiento1View::~ListLinAsiento1View() {
00074     _depura("ListLinAsiento1View::~ListLinAsiento1View", 0);
00075     _depura("END ListLinAsiento1View::~ListLinAsiento1View", 0);
00076 }
00077 
00078 
00080 
00083 void ListLinAsiento1View::s_pintaMenu(QMenu *menu) {
00084     _depura("ListLinAsiento1View::s_pintaMenu", 0);
00085     menu->addSeparator();
00086     menu->addAction(tr("Mostrar asiento"));
00087     menu->addSeparator();
00088     menu->addAction(tr("Mostrar extracto (dia)"));
00089     menu->addAction(tr("Mostrar extracto (mes)"));
00090     menu->addAction(tr("Mostrar extracto (ano)"));
00091     menu->addSeparator();
00092     menu->addAction(tr("Mostrar balance (dia)"));
00093     menu->addAction(tr("Mostrar balance (mes)"));
00094     menu->addAction(tr("Mostrar balance (ano)"));
00095     _depura("ListLinAsiento1View::s_pintaMenu", 0);
00096 }
00097 
00099 
00103 void ListLinAsiento1View::s_trataMenu(QAction *action) {
00104     _depura("ListLinAsiento1View::s_trataMenu", 0);
00105     if (!action) return;
00106     if (action->text() == tr("Mostrar asiento"))
00107         boton_asiento();
00108     if (action->text() == tr("Mostrar extracto (dia)"))
00109         boton_extracto1(0);
00110     if (action->text() == tr("Mostrar extracto (mes)"))
00111         boton_extracto1(1);
00112     if (action->text() == tr("Mostrar extracto (ano)"))
00113         boton_extracto1(2);
00114     if (action->text() == tr("Mostrar balance (dia)"))
00115         boton_balance1(0);
00116     if (action->text() == tr("Mostrar balance (mes)"))
00117         boton_balance1(1);
00118     if (action->text() == tr("Mostrar balance (ano)"))
00119         boton_balance1(2);
00120     _depura("END ListLinAsiento1View::s_trataMenu", 0);
00121 }
00122 
00124 
00127 void ListLinAsiento1View::cargar(QString idasiento) {
00128     _depura("AsientoSubForm::cargar", 0);
00129     QString SQLQuery = "SELECT * FROM borrador ";
00130     SQLQuery += " LEFT JOIN (SELECT codigo, descripcion AS descripcioncuenta, idcuenta, tipocuenta FROM cuenta) AS t1 ON t1.idcuenta = borrador.idcuenta ";
00131     SQLQuery += " LEFT JOIN (SELECT idcanal, nombre AS nomcanal, descripcion AS descanal FROM canal) AS t2 ON borrador.idcanal = t2.idcanal ";
00132     SQLQuery += " LEFT JOIN (SELECT idc_coste, nombre AS nomc_coste, descripcion AS descc_coste FROM c_coste) AS t3 ON borrador.idc_coste = t3.idc_coste ";
00133     SQLQuery += " LEFT JOIN (SELECT idregistroiva, factura, ffactura, idborrador AS idborriva FROM registroiva) AS t4 ON borrador.idborrador = t4.idborriva ";
00134     SQLQuery += "WHERE idasiento = " + idasiento + " ORDER BY orden";
00135     SubForm2Bc::cargar(SQLQuery);
00136     _depura("END AsientoSubForm::cargar", 0);
00137 }
00138 
00139 
00142 
00146 Fixed ListLinAsiento1View::totaldebe(QString idasiento) {
00147     _depura("ListLinAsiento1View::totaldebe", 0, idasiento);
00148     if (idasiento == "") return Fixed("0");
00149     QString SQLQuery = "SELECT sum(debe) FROM borrador LEFT JOIN (SELECT codigo, descripcion AS descripcioncuenta, idcuenta, tipocuenta FROM cuenta) AS t1 ON t1.idcuenta = borrador.idcuenta LEFT JOIN (SELECT idcanal, nombre AS nombrecanal, descripcion AS descripcioncanal FROM canal) AS t2 ON borrador.idcanal = t2.idcanal LEFT JOIN (SELECT idc_coste, nombre AS nombrec_coste, descripcion AS descripcionc_coste FROM c_coste) AS t3 ON borrador.idc_coste = t3.idc_coste LEFT JOIN (SELECT idregistroiva, factura, ffactura, idborrador FROM registroiva) AS t4 ON borrador.idborrador = t4.idborrador WHERE idasiento = " + idasiento;
00150     cursor2 *cur= empresaBase()->cargacursor(SQLQuery);
00151     if (!cur) return Fixed("0");
00152     QString resultado = cur->valor(0);
00153     delete cur;
00154     _depura("END ListLinAsiento1View::totaldebe", 0);
00155     return Fixed(resultado);
00156 }
00157 
00158 
00160 
00164 Fixed ListLinAsiento1View::totalhaber(QString idasiento) {
00165     _depura("ListLinAsiento1View::totalhaber", 0, idasiento);
00166     if (idasiento == "") return Fixed("0");
00167     QString SQLQuery = "SELECT sum(haber) FROM borrador LEFT JOIN (SELECT codigo, descripcion AS descripcioncuenta, idcuenta, tipocuenta FROM cuenta) AS t1 ON t1.idcuenta=borrador.idcuenta LEFT JOIN (SELECT idcanal, nombre AS nombrecanal, descripcion AS descripcioncanal FROM canal) AS t2 ON borrador.idcanal = t2.idcanal LEFT JOIN (SELECT idc_coste, nombre AS nombrec_coste, descripcion AS descripcionc_coste FROM c_coste) AS t3 ON borrador.idc_coste = t3.idc_coste LEFT JOIN (SELECT idregistroiva, factura, ffactura, idborrador FROM registroiva) AS t4 ON borrador.idborrador = t4.idborrador WHERE idasiento = " + idasiento;
00168     cursor2 *cur = empresaBase()->cargacursor(SQLQuery);
00169     if(!cur) return Fixed("0");
00170     QString resultado = cur->valor(0);
00171     delete cur;
00172     _depura("END ListLinAsiento1View::totalhaber", 0);
00173     return Fixed(resultado);
00174 }
00175 

Generated on Sat Dec 15 00:01:03 2007 for BulmaGes by  doxygen 1.5.1