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 <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 }
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 }
00157 empresaBase()->m_pWorkspace->addWindow(prov);
00158 prov->show();
00159 } else {
00160 emit(selected(m_idprovider));
00161 }
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 }
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 }
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 }
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