00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #include <QLineEdit>
00022 #include <QMessageBox>
00023 #include <QToolButton>
00024 #include <QWidget>
00025 #include <QComboBox>
00026 #include <QCloseEvent>
00027
00028 #include "clienteview.h"
00029 #include "company.h"
00030 #include "presupuestolist.h"
00031 #include "pedidosclientelist.h"
00032 #include "albaranclientelist.h"
00033 #include "cobroslist.h"
00034 #include "facturaslist.h"
00035 #include "busquedaprovincia.h"
00036 #include "funcaux.h"
00037 #include "plugins.h"
00038 #include "informereferencia.h"
00039
00040
00050 ClienteView::ClienteView(Company *comp, QWidget *parent)
00051 : FichaBf(comp, parent) {
00052 _depura("ClienteView::ClienteView", 0);
00053 setupUi(this);
00054 setAttribute(Qt::WA_DeleteOnClose);
00055 try {
00056
00057 setTitleName(tr("Cliente"));
00058 setDBTableName("cliente");
00059 setDBCampoId("idcliente");
00060 addDBCampo("idcliente", DBCampo::DBint, DBCampo::DBPrimaryKey, QApplication::translate("Cliente", "ID cliente"));
00061 addDBCampo("nomcliente", DBCampo::DBvarchar, DBCampo::DBNotNull, QApplication::translate("Cliente", "Nombre del cliente"));
00062 addDBCampo("nomaltcliente", DBCampo::DBvarchar, DBCampo::DBNothing, QApplication::translate("Cliente", "Nombre alternativo del cliente"));
00063 addDBCampo("cifcliente", DBCampo::DBvarchar, DBCampo::DBNotNull, QApplication::translate("Cliente", "C.I.F. del cliente"));
00064 addDBCampo("bancocliente", DBCampo::DBvarchar, DBCampo::DBNothing, QApplication::translate("Cliente", "Numero cuenta corriente"));
00065 addDBCampo("dircliente", DBCampo::DBvarchar, DBCampo::DBNothing, QApplication::translate("Cliente", "Direccion"));
00066 addDBCampo("poblcliente", DBCampo::DBvarchar, DBCampo::DBNothing, QApplication::translate("Cliente", "Poblacion"));
00067 addDBCampo("idprovincia", DBCampo::DBint, DBCampo::DBNothing, QApplication::translate("Cliente", "Provincia"));
00068 addDBCampo("cpcliente", DBCampo::DBvarchar, DBCampo::DBNothing, QApplication::translate("Cliente", "Codigo postal"));
00069 addDBCampo("telcliente", DBCampo::DBvarchar, DBCampo::DBNothing, QApplication::translate("Cliente", "Numero de telefono"));
00070 addDBCampo("teltrabcliente", DBCampo::DBvarchar, DBCampo::DBNothing, QApplication::translate("Cliente", "Numero de telefono en el trabajo"));
00071 addDBCampo("movilcliente", DBCampo::DBvarchar, DBCampo::DBNothing, QApplication::translate("Cliente", "Numero de telefono movil"));
00072 addDBCampo("faxcliente", DBCampo::DBvarchar, DBCampo::DBNothing, QApplication::translate("Cliente", "Numero de fax"));
00073 addDBCampo("mailcliente", DBCampo::DBvarchar, DBCampo::DBNothing, QApplication::translate("Cliente", "Direccion electronica"));
00074 addDBCampo("urlcliente", DBCampo::DBvarchar, DBCampo::DBNothing, QApplication::translate("Cliente", "Identificador de presupuesto"));
00075 addDBCampo("faltacliente", DBCampo::DBdate, DBCampo::DBNothing, QApplication::translate("Cliente", "Fecha de alta del cliente"));
00076 addDBCampo("fbajacliente", DBCampo::DBdate, DBCampo::DBNothing, QApplication::translate("Cliente", "Fecha de baja del cliente"));
00077 addDBCampo("comentcliente", DBCampo::DBvarchar, DBCampo::DBNothing, QApplication::translate("Cliente", "Comentarios"));
00078 addDBCampo("inactivocliente", DBCampo::DBvarchar, DBCampo::DBNothing, QApplication::translate("Cliente", "Cliente inactivo"));
00079 addDBCampo("regimenfiscalcliente", DBCampo::DBvarchar, DBCampo::DBNothing, QApplication::translate("Cliente", "Regimen fiscal"));
00080 addDBCampo("codcliente", DBCampo::DBvarchar, DBCampo::DBNothing, QApplication::translate("Cliente", "Codigo"));
00081 addDBCampo("corpcliente", DBCampo::DBvarchar, DBCampo::DBNothing, QApplication::translate("Cliente", "Empresa"));
00082 addDBCampo("idforma_pago", DBCampo::DBint, DBCampo::DBNothing, QApplication::translate("Cliente", "Forma de pago"));
00083 addDBCampo("recargoeqcliente", DBCampo::DBboolean, DBCampo::DBNothing, QApplication::translate("Cliente", "Recargo de Equivalencia"));
00084
00085
00087 int res = g_plugins->lanza("ClienteView_ClienteView", this);
00088 if (res != 0) {
00089 return;
00090 }
00091 mui_idprovincia->setEmpresaBase(empresaBase());
00092 mui_idprovincia->setIdProvincia("");
00093
00095 m_listpresupuestos->setEmpresaBase(empresaBase());
00096 m_listpedidos->setEmpresaBase(empresaBase());
00097 m_listalbaranes->setEmpresaBase(empresaBase());
00098 m_listfacturas->setEmpresaBase(empresaBase());
00099 m_listcobros->setEmpresaBase(empresaBase());
00100 mui_idforma_pago->setEmpresaBase(empresaBase());
00101 mui_idforma_pago->setidforma_pago("");
00102
00104 meteWindow(windowTitle(), this, FALSE);
00105 dialogChanges_cargaInicial();
00107 res = g_plugins->lanza("ClienteView_ClienteView_Post", this);
00108 } catch (...) {
00109 mensajeInfo(tr("Error al crear el cliente"));
00110 }
00111 _depura("END ClienteView::ClienteView", 0);
00112 }
00113
00114
00119 ClienteView::~ClienteView() {
00120 _depura("ClienteView::~ClienteView", 0);
00122 g_plugins->lanza("ClienteView_Des_ClienteView", this);
00123 empresaBase()->sacaWindow(this);
00124 _depura("END ClienteView::~ClienteView", 0);
00125 }
00126
00127
00144 int ClienteView::cargarPost(QString idcliente) {
00145 _depura("ClienteView::cargar", 0);
00146
00147
00149 m_listpresupuestos->setidcliente(idcliente);
00150 m_listpresupuestos->presentar();
00151 m_listpedidos->setidcliente(idcliente);
00152 m_listpedidos->presentar();
00153 m_listalbaranes->setidcliente(idcliente);
00154 m_listalbaranes->presentar();
00155 m_listfacturas->setidcliente(idcliente);
00156 m_listfacturas->presentar();
00157 m_listcobros->setidcliente(idcliente);
00158 m_listcobros->presentar();
00159
00160
00161 _depura("ClienteView::cargar", 0);
00162 return 0;
00163 }
00164
00165
00171 void ClienteView::on_mui_informe_clicked() {
00172 _depura("ClienteView::on_mui_informe_clicked", 0);
00173 InformeCliente inf(empresaBase());
00174 inf.setCliente(DBvalue("idcliente"));
00175 inf.generarInforme();
00176 _depura("END ClienteView::on_mui_informe_clicked", 0);
00177 }
00178