cambiactaview.cpp

Go to the documentation of this file.
00001 /***************************************************************************
00002  *   Copyright (C) 2003 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  "cambiactaview.h"
00022 #include  "listcuentasview1.h"
00023 #include  "empresa.h"
00024 
00025 #define NUMDIGITOS   (Empresa *)empresaBase())->numdigitosempresa()
00026 
00027 
00029 
00034 CambiaCtaView::CambiaCtaView(Empresa *emp, QWidget *parent, Qt::WFlags flag)
00035         : QDialog(parent, flag), PEmpresaBase(emp) {
00036     _depura("CambiaCtaView::CambiaCtaView", 0);
00037     setupUi(this);
00038     mui_codigoorigen->setEmpresaBase(emp);
00039     mui_codigodestino->setEmpresaBase(emp);
00040     _depura("END CambiaCtaView::CambiaCtaView", 0);
00041 }
00042 
00043 
00045 
00047 CambiaCtaView::~CambiaCtaView() {
00048     _depura("CambiaCtaView::~CambiaCtaView", 0);
00049     _depura("END CambiaCtaView::~CambiaCtaView", 0);
00050 }
00051 
00052 
00054 
00056 void CambiaCtaView::accept() {
00057     _depura("CambiaCtaView::accept", 0);
00058     QString origen = mui_codigoorigen->text();
00059     QString destino = mui_codigodestino->text();
00060     QString ainicial = asientoinicial->text();
00061     QString afinal = asientofinal->text();
00062     QString finicial = fechainicial->text();
00063     QString ffinal = fechafinal->text();
00065     QString query = "UPDATE borrador SET idcuenta = id_cuenta('" + destino + "') WHERE idcuenta = id_cuenta('" + origen + "')";
00066     if (ainicial != "") {
00067         query = query + " AND idasiento IN (SELECT idasiento FROM asiento WHERE ordenasiento >= " + ainicial + ")";
00068     } // end if
00069     if (afinal != "") {
00070         query = query + " AND idasiento IN (SELECT idasiento FROM asiento WHERE ordenasiento <= " + afinal + ")";
00071     } // end if
00072     if (finicial != "") {
00073         query = query + " AND fecha >= '" + finicial + "'";
00074     } // end if
00075     if (ffinal != "") {
00076         query = query + " AND fecha <= '" + ffinal + "'";
00077     } // end if
00078 
00080     QString query2 = "UPDATE borrador SET contrapartida = id_cuenta('" + destino + "') WHERE contrapartida = id_cuenta('" + origen + "')";
00081     if (ainicial != "") {
00082         query2 = query2 + " AND idasiento IN (SELECT idasiento FROM asiento WHERE ordenasiento >= " + ainicial + ")";
00083     } // end if
00084     if (afinal != "") {
00085         query2 = query2 + " AND idasiento IN (SELECT idasiento FROM asiento WHERE ordenasiento <= " + afinal + ")";
00086     } // end if
00087     if (finicial != "") {
00088         query2 = query2 + " AND fecha >= '" + finicial + "'";
00089     } // end if
00090     if (ffinal != "") {
00091         query2 = query2 + " AND fecha <= '" + ffinal + "'";
00092     } // end if
00093 
00095     QString query1 = "UPDATE apunte SET idcuenta = id_cuenta('" + destino + "') WHERE idcuenta = id_cuenta('" + origen + "')";
00096     if (ainicial != "") {
00097         query1 = query1 + " AND idasiento IN (SELECT idasiento FROM asiento WHERE ordenasiento >= " + ainicial + ")";
00098     } // end if
00099     if (afinal != "") {
00100         query1 = query1 + " AND idasiento IN (SELECT idasiento FROM asiento WHERE ordenasiento <= " + afinal + ")";
00101     } // end if
00102     if (finicial != "") {
00103         query1 = query1 + " AND fecha >= '" + finicial + "'";
00104     } // end if
00105     if (ffinal != "") {
00106         query1 = query1 + " AND fecha <= '" + ffinal + "'";
00107     } // end if
00108 
00110     QString query3 = "UPDATE apunte SET contrapartida = id_cuenta('" + destino + "') WHERE contrapartida = id_cuenta('" + origen + "')";
00111     if (ainicial != "") {
00112         query3 = query3 + " AND idasiento IN (SELECT idasiento FROM asiento WHERE ordenasiento >= "+ainicial+")";
00113     } // end if
00114     if (afinal != "") {
00115         query3 = query3 + " AND idasiento IN (SELECT idasiento FROM asiento WHERE ordenasiento <= "+afinal+")";
00116     } // end if
00117     if (finicial != "") {
00118         query3 = query3 + " AND fecha >= '" + finicial + "'";
00119     } // end if
00120     if (ffinal != "") {
00121         query3 = query3 + " AND fecha <= '" + ffinal + "'";
00122     } // end if
00123 
00125     QString query4 = "UPDATE registroiva SET contrapartida = id_cuenta('" + destino + "') WHERE contrapartida = id_cuenta('" + origen + "')";
00126     if (ainicial != "") {
00127         query4 = query4 + " AND idborrador IN (SELECT idborrador FROM borrador,asiento WHERE ordenasiento >= " + ainicial + " AND borrador.idasiento = asiento.idasiento)";
00128     } // end if
00129     if (afinal != "") {
00130         query4 = query4 + " AND idborrador IN (SELECT idborrador FROM borrador,asiento WHERE ordenasiento <= " + afinal + " AND borrador.idasiento = asiento.idasiento)";
00131     } // end if
00132     if (finicial != "") {
00133         query4 = query4 + " AND ffactura >= '" + finicial + "'";
00134     } // end if
00135     if (ffinal != "") {
00136         query4 = query4 + " AND ffactura <= '" + ffinal + "'";
00137     } // end if
00138     empresaBase()->begin();
00139     empresaBase()->ejecuta(query);
00140     empresaBase()->ejecuta(query1);
00141     empresaBase()->ejecuta(query2);
00142     empresaBase()->ejecuta(query3);
00143     empresaBase()->ejecuta(query4);
00144     empresaBase()->commit();
00145     done(1);
00146     _depura("END CambiaCtaView::accept", 0);
00147 }
00148 

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