providerslist.cpp

Go to the documentation of this file.
00001 /***************************************************************************
00002  *   Copyright (C) 2004 by J. M. Torres Rigo                               *
00003  *   joanmi@bulma.net                                                      *
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 <QLineEdit>
00022 #include <QMessageBox>
00023 #include <QCheckBox>
00024 #include <QFile>
00025 #include <QFileDialog>
00026 #include <QTextStream>
00027 
00028 #include "providerslist.h"
00029 #include "funcaux.h"
00030 #include "company.h"
00031 #include "provedit.h"
00032 #include "pgimportfiles.h"
00033 
00034 
00036 
00043 ProveedorList::ProveedorList(Company *comp, QWidget *parent, Qt::WFlags flag, edmode editmode)
00044         : Listado(comp, parent, flag, editmode), pgimportfiles(comp) {
00045     _depura("ProveedorList::ProveedorList", 0);
00046     setupUi(this);
00047     mui_list->setEmpresaBase(comp);
00048 
00050     int res = g_plugins->lanza("ProveedorList_ProveedorList", this);
00051     if (res != 0)
00052         return;
00053 
00054     setSubForm(mui_list);
00055     hideBusqueda();
00056     m_idprovider = "";
00057     m_cifprovider = "";
00058     m_nomprovider = "";
00059     if (modoEdicion()) {
00060         empresaBase()->meteWindow(windowTitle(), this);
00061     } else {
00062         setWindowTitle(tr("Selector de proveedores"));
00063         mui_editar->setHidden(TRUE);
00064         mui_crear->setHidden(TRUE);
00065         mui_borrar->setHidden(TRUE);
00066         mui_exportar->setHidden(TRUE);
00067         mui_importar->setHidden(TRUE);
00068         mui_imprimir->setHidden(TRUE);
00069     } // end if
00070     presentar();
00072     trataPermisos("proveedor");
00073     _depura("END ProveedorList::ProveedorList", 0);
00074 }
00075 
00076 
00078 
00080 ProveedorList::~ProveedorList() {
00081     _depura("ProveedorList::~ProveedorList", 0);
00082     _depura("END ProveedorList::~ProveedorList", 0);
00083 
00084 }
00085 
00086 
00088 
00091 QString ProveedorList::idprovider() {
00092     _depura("ProveedorList::idprovider", 0);
00093     _depura("END ProveedorList::idprovider", 0);
00094     return m_idprovider;
00095 }
00096 
00098 
00101 QString ProveedorList::cifprovider() {
00102     _depura("ProveedorList::cifprovider", 0);
00103     _depura("END ProveedorList::cifprovider", 0);
00104     return m_cifprovider;
00105 }
00106 
00107 
00109 
00112 QString ProveedorList::nomprovider() {
00113     _depura("ProveedorList::nomprovider", 0);
00114     _depura("END ProveedorList::nomprovider", 0);
00115     return m_nomprovider;
00116 }
00117 
00118 
00120 
00122 void ProveedorList::presentar() {
00123     _depura("ProveedorList::presentar", 0);
00124     mui_list->cargar("SELECT * FROM proveedor WHERE lower(nomproveedor) LIKE lower('%" + m_filtro->text() + "%')");
00125     _depura("END ProveedorList::presentar", 0);
00126 }
00127 
00128 
00130 
00132 void ProveedorList::crear() {
00133     _depura("ProveedorList::crear", 0);
00134         ProveedorView *prov = ((Company *)empresaBase())->newProveedorView();
00135     empresaBase()->m_pWorkspace->addWindow(prov);
00136     prov->show();
00137     _depura("END ProveedorList::crear", 0);
00138 }
00139 
00140 
00142 
00146 void ProveedorList::editar(int row) {
00147     _depura("ProveedorList::editar", 0);
00148     m_idprovider = mui_list->DBvalue(QString("idproveedor"), row);
00149     m_cifprovider = mui_list->DBvalue(QString("cifproveedor"), row);
00150     m_nomprovider = mui_list->DBvalue(QString("nomproveedor"), row);
00151     if (modoEdicion()) {
00152         ProveedorView *prov = ((Company *)empresaBase())->newProveedorView();
00153         if (prov->cargar(mui_list->DBvalue(QString("idproveedor"), row))) {
00154             delete prov;
00155             return;
00156         } // end if
00157         empresaBase()->m_pWorkspace->addWindow(prov);
00158         prov->show();
00159     } else {
00160         emit(selected(m_idprovider));
00161     } // end if
00162     _depura("END ProveedorList::editar", 0);
00163 }
00164 
00165 
00166 
00167 
00171 
00173 void ProveedorList::borrar() {
00174     _depura("ProveedorList::borrar", 0);
00175     try {
00176         QString idprov = mui_list->DBvalue(QString("idproveedor"));
00177         ProveedorView *prov = ((Company *)empresaBase())->newProveedorView();
00178         prov->cargar(idprov);
00179         prov->on_mui_borrar_clicked();
00180         delete prov;
00181         presentar();
00182     } catch (...) {
00183         mensajeInfo(tr("Error al borrar el proveedor"));
00184     } // end try
00185     _depura("END ProveedorList::borrar", 0);
00186 }
00187 
00188 
00190 
00192 void ProveedorList::imprimir() {
00193     _depura("ProveedorList::on_mui_imprimir_clicked", 0);
00194     mui_list->imprimirPDF(tr("Listado de Proveedores"));
00195     _depura("END ProveedorList::on_mui_imprimir_clicked", 0);
00196 }
00197 
00198 
00200 
00202 void ProveedorList::on_mui_exportar_clicked() {
00203     QFile filexml(QFileDialog::getSaveFileName(this,
00204                   tr("Seleccione el archivo"),
00205                   confpr->valor(CONF_DIR_USER),
00206                   tr("Proveedores (*.xml)")));
00207 
00208     if (filexml.open(QIODevice::WriteOnly)) {
00209         bulmafact2XML(filexml, IMPORT_PROVEEDORES);
00210         filexml.close();
00211     } else {
00212         _depura("ERROR AL ABRIR EL ARCHIVO\n", 2);
00213     } // end if
00214 }
00215 
00217 
00219 void ProveedorList::on_mui_importar_clicked() {
00220     QFile filexml(QFileDialog::getOpenFileName(this,
00221                   tr("Elija el archivo"),
00222                   confpr->valor(CONF_DIR_USER),
00223                   tr("Proveedores (*.xml)")));
00224 
00225     if (filexml.open(QIODevice::ReadOnly)) {
00226         XML2BulmaFact(filexml, IMPORT_PROVEEDORES);
00227         filexml.close();
00228         presentar();
00229     } else {
00230         _depura("ERROR AL ABRIR EL ARCHIVO\n", 2);
00231     } // end if
00232 }
00233 
00234 
00239 
00241 void ProveedorListSubform::cargar() {
00242     _depura("ProveedorListSubform::cargar", 0);
00243     QString SQLQuery = "SELECT * FROM proveedor";
00244     SubForm3::cargar(SQLQuery);
00245     _depura("END ProveedorListSubform::cargar", 0);
00246 }
00247 
00248 
00250 
00253 void ProveedorListSubform::cargar(QString a) {
00254     _depura("ProveedorListSubform::cargar", 0);
00255     SubForm3::cargar(a);
00256     _depura("END ProveedorListSubform::cargar", 0);
00257 }
00258 
00259 
00261 
00264 ProveedorListSubform::ProveedorListSubform(QWidget *parent) : SubForm2Bf(parent) {
00265     _depura("ProveedorListSubform::ProveedorListSubform", 0);
00266     setDBTableName("proveedor");
00267     setDBCampoId("idproveedor");
00268     addSHeader("idproveedor", DBCampo::DBint, DBCampo::DBNotNull | DBCampo::DBPrimaryKey, SHeader::DBNoView | SHeader::DBNoWrite, tr("ID proveedor"));
00269     addSHeader("codproveedor", DBCampo::DBvarchar, DBCampo::DBNoSave, SHeader::DBNone | SHeader::DBNoWrite, tr("Codigo"));
00270     addSHeader("cifproveedor", DBCampo::DBvarchar, DBCampo::DBNoSave, SHeader::DBNone | SHeader::DBNoWrite, tr("C.I.F."));
00271     addSHeader("nomproveedor", DBCampo::DBvarchar, DBCampo::DBNoSave, SHeader::DBNone | SHeader::DBNoWrite, tr("Nombre"));
00272     addSHeader("nomaltproveedor", DBCampo::DBvarchar, DBCampo::DBNoSave, SHeader::DBNone | SHeader::DBNoWrite, tr("Nombre alternativo"));
00273     addSHeader("codicliproveedor", DBCampo::DBvarchar, DBCampo::DBNoSave, SHeader::DBNone | SHeader::DBNoWrite, tr("Codigo"));
00274     addSHeader("cbancproveedor", DBCampo::DBvarchar, DBCampo::DBNoSave, SHeader::DBNone | SHeader::DBNoWrite, tr("Numero de cuenta corriente"));
00275     addSHeader("comentproveedor", DBCampo::DBvarchar, DBCampo::DBNoSave, SHeader::DBNone | SHeader::DBNoWrite, tr("Comentarios"));
00276     addSHeader("dirproveedor", DBCampo::DBvarchar, DBCampo::DBNoSave, SHeader::DBNone | SHeader::DBNoWrite, tr("Direccion"));
00277     addSHeader("poblproveedor", DBCampo::DBvarchar, DBCampo::DBNoSave, SHeader::DBNone | SHeader::DBNoWrite, tr("Poblacion"));
00278     addSHeader("cpproveedor", DBCampo::DBvarchar, DBCampo::DBNoSave, SHeader::DBNone | SHeader::DBNoWrite, tr("Codigo postal"));
00279     addSHeader("telproveedor", DBCampo::DBvarchar, DBCampo::DBNoSave, SHeader::DBNone | SHeader::DBNoWrite, tr("Numero de telefono"));
00280     addSHeader("faxproveedor", DBCampo::DBvarchar, DBCampo::DBNoSave, SHeader::DBNone | SHeader::DBNoWrite, tr("Numero de fax"));
00281     addSHeader("emailproveedor", DBCampo::DBvarchar, DBCampo::DBNoSave, SHeader::DBNone | SHeader::DBNoWrite, tr("Direccion de correo electronico"));
00282     addSHeader("urlproveedor", DBCampo::DBvarchar, DBCampo::DBNoSave, SHeader::DBNone | SHeader::DBNoWrite, tr("Direccion de URL"));
00283     addSHeader("clavewebproveedor", DBCampo::DBvarchar, DBCampo::DBNoSave, SHeader::DBNone | SHeader::DBNoWrite, tr("Clave de acceso a la web del proveedor"));
00284     setinsercion(FALSE);
00285     setDelete(FALSE);
00286     setSortingEnabled(TRUE);
00287     _depura("END ProveedorListSubform::ProveedorListSubform", 0);
00288 }
00289 

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