#include <pedidoclienteview.h>
Inheritance diagram for PedidoClienteView:

Public Slots | |
| virtual void | s_pintaTotales () |
| virtual void | on_mui_verpresupuesto_clicked () |
| virtual void | on_mui_pasaraalbaran_clicked () |
| virtual void | on_mui_cobrar_clicked () |
| virtual void | on_m_descuentos_editFinish (int, int) |
| virtual void | on_subform3_editFinish (int, int) |
| virtual void | on_mui_idcliente_valueChanged (QString id) |
Public Member Functions | |
| PedidoClienteView (Company *, QWidget *parent=0) | |
| ~PedidoClienteView () | |
| virtual int | cargarPost (QString) |
| Esta funcion carga un PedidoCliente. | |
| virtual int | guardarPost () |
| Guardamos el pedido cliente. | |
| virtual int | borrarPre () |
| void | generarAlbaran () |
| void | inicializar () |
| void | pintatotales (Fixed iva, Fixed base, Fixed total, Fixed desc, Fixed, Fixed) |
Definition at line 44 of file pedidoclienteview.h.
| comp | ||
| parent |
Usurpamos la identidad de mlist y ponemos nuestro propio widget con sus cosillas.
Disparamos los plugins.
Definition at line 50 of file pedidoclienteview.cpp.
References _depura(), DBRecord::addDBCampo(), DBCampo::DBboolean, DBCampo::DBdate, DBCampo::DBint, DBCampo::DBNothing, DBCampo::DBNotNull, DBCampo::DBPrimaryKey, DBCampo::DBvarchar, FALSE, g_plugins, Plugins::lanza(), Ui_PedidoClienteBase::m_descuentos, mensajeInfo(), Ficha::meteWindow(), Ui_PedidoClienteBase::mui_idalmacen, Ui_PedidoClienteBase::mui_idcliente, Ui_PedidoClienteBase::mui_idforma_pago, Ui_PedidoClienteBase::mui_idtrabajador, Ui_PedidoClienteBase::mui_refpedidocliente, DBRecord::setDBCampoId(), Ficha::setDBTableName(), BusquedaAlmacen::setEmpresaBase(), PEmpresaBase::setEmpresaBase(), SubForm2Bf::setEmpresaBase(), BusquedaAlmacen::setidalmacen(), BusquedaFormaPago::setidforma_pago(), BusquedaTrabajador::setidtrabajador(), FichaBf::setListaDescuentos(), FichaBf::setListaLineas(), Ficha::setTitleName(), Ui_PedidoClienteBase::setupUi(), and Ui_PedidoClienteBase::subform3.
00051 : FichaBf(comp, parent) { 00052 _depura("PedidoClienteView::PedidoClienteView", 0); 00053 setAttribute(Qt::WA_DeleteOnClose); 00054 try { 00056 setupUi(this); 00057 00058 setTitleName(tr("Pedido Cliente")); 00059 setDBTableName("pedidocliente"); 00060 setDBCampoId("idpedidocliente"); 00061 addDBCampo("idpedidocliente", DBCampo::DBint, DBCampo::DBPrimaryKey, QApplication::translate("PedidoCliente", "Identificador")); 00062 addDBCampo("idcliente", DBCampo::DBint, DBCampo::DBNotNull, QApplication::translate("PedidoCliente", "Cliente")); 00063 addDBCampo("idalmacen", DBCampo::DBint, DBCampo::DBNotNull, QApplication::translate("PedidoCliente", "Almacen")); 00064 addDBCampo("numpedidocliente", DBCampo::DBint, DBCampo::DBNothing, QApplication::translate("PedidoCliente", "Numero pedido cliente")); 00065 addDBCampo("fechapedidocliente", DBCampo::DBdate, DBCampo::DBNothing, QApplication::translate("PedidoCliente", "Identificador presupuesto")); 00066 addDBCampo("descpedidocliente", DBCampo::DBvarchar, DBCampo::DBNothing, QApplication::translate("PedidoCliente", "Fecha")); 00067 addDBCampo("idforma_pago", DBCampo::DBint, DBCampo::DBNothing, QApplication::translate("PedidoCliente", "Forma pago")); 00068 addDBCampo("idtrabajador", DBCampo::DBint, DBCampo::DBNothing, QApplication::translate("PedidoCliente", "Trabajador")); 00069 addDBCampo("contactpedidocliente", DBCampo::DBvarchar, DBCampo::DBNothing, QApplication::translate("PedidoCliente", "Contacto")); 00070 addDBCampo("telpedidocliente", DBCampo::DBvarchar, DBCampo::DBNothing, QApplication::translate("PedidoCliente", "Telefono")); 00071 addDBCampo("comentpedidocliente", DBCampo::DBvarchar, DBCampo::DBNothing, QApplication::translate("PedidoCliente", "Comentarios")); 00072 addDBCampo("procesadopedidocliente", DBCampo::DBboolean, DBCampo::DBNothing, QApplication::translate("PedidoCliente", "Procesado")); 00073 addDBCampo("refpedidocliente", DBCampo::DBvarchar, DBCampo::DBNothing, QApplication::translate("PedidoCliente", "Referencia")); 00074 00075 00077 int res = g_plugins->lanza("PedidoClienteView_PedidoClienteView", this); 00078 if (res != 0) 00079 return; 00080 subform3->setEmpresaBase(comp); 00081 mui_idcliente->setEmpresaBase(comp); 00082 mui_idforma_pago->setEmpresaBase(comp); 00083 mui_idforma_pago->setidforma_pago(""); 00084 m_descuentos->setEmpresaBase(comp); 00085 mui_idalmacen->setEmpresaBase(comp); 00086 mui_idalmacen->setidalmacen(""); 00087 mui_idtrabajador->setEmpresaBase(comp); 00088 mui_idtrabajador->setidtrabajador(""); 00089 mui_refpedidocliente->setEmpresaBase(comp); 00090 setListaLineas(subform3); 00091 setListaDescuentos(m_descuentos); 00092 meteWindow(windowTitle(), this, FALSE); 00093 } catch (...) { 00094 mensajeInfo(tr("Error al crear el pedido cliente")); 00095 } // end try 00096 _depura("END PedidoClienteView::PedidoClienteView", 0); 00097 }
| PedidoClienteView::~PedidoClienteView | ( | ) |
Definition at line 103 of file pedidoclienteview.cpp.
References _depura(), FichaBf::empresaBase(), and Company::refreshPedidosCliente().
00103 { 00104 _depura("PedidoClienteView::~PedidoClienteView", 0); 00105 empresaBase()->refreshPedidosCliente(); 00106 _depura("END PedidoClienteView::~PedidoClienteView", 0); 00107 }
| int PedidoClienteView::cargarPost | ( | QString | idbudget | ) | [virtual] |
Esta funcion carga un PedidoCliente.
| idbudget |
Disparamos los plugins.
Reimplemented from Ficha.
Definition at line 300 of file pedidoclienteview.cpp.
References _depura(), FichaBf::calculaypintatotales(), SubForm2Bf::cargar(), g_plugins, Plugins::lanza(), FichaBf::m_listadescuentos, and FichaBf::m_listalineas.
00300 { 00301 _depura("PedidoClienteView::cargarPost", 0); 00302 00303 m_listalineas->cargar(idbudget); 00304 m_listadescuentos->cargar(idbudget); 00305 00307 g_plugins->lanza("PedidoClienteView_cargarPost_Post", this); 00308 00309 calculaypintatotales(); 00310 00311 _depura("END PedidoClienteView::cargar", 0); 00312 return 0; 00313 }
| int PedidoClienteView::guardarPost | ( | ) | [virtual] |
Guardamos el pedido cliente.
Reimplemented from Ficha.
Definition at line 320 of file pedidoclienteview.cpp.
References _depura(), DBRecord::DBvalue(), SubForm3::guardar(), FichaBf::m_listadescuentos, FichaBf::m_listalineas, and SubForm3::setColumnValue().
00320 { 00321 _depura("PedidoClienteView::guardar", 0); 00322 m_listalineas->setColumnValue("idpedidocliente", DBvalue("idpedidocliente")); 00323 m_listalineas->guardar(); 00324 m_listadescuentos->setColumnValue("idpedidocliente", DBvalue("idpedidocliente")); 00325 m_listadescuentos->guardar(); 00326 return 0; 00327 }
| int PedidoClienteView::borrarPre | ( | ) | [virtual] |
Reimplemented from Ficha.
Definition at line 286 of file pedidoclienteview.cpp.
References _depura(), SubForm3::borrar(), FichaBf::m_listadescuentos, and FichaBf::m_listalineas.
00286 { 00287 _depura("PedidoClienteView::borrar", 0); 00288 m_listalineas->borrar(); 00289 m_listadescuentos->borrar(); 00290 _depura("PedidoClienteView::borrar", 0); 00291 return 0; 00292 }
| void PedidoClienteView::generarAlbaran | ( | ) |
Comprobamos que existe el elemento, y en caso afirmativo lo mostramos y salimos de la funcion.
Informamos que ya hay un albaran y que la abriremos. Si no salimos de la función.
Creamos el albaran.
Traspasamos los datos al albaran.
Traspasamos las lineas al albaran.
Traspasamos los descuentos.
Pintamos el pedido y lo presentamos.
Definition at line 176 of file pedidoclienteview.cpp.
References _depura(), QWorkspace2::addWindow(), postgresiface2::cargacursor(), Ficha::cargar(), DBRecord::DBvalue(), FichaBf::empresaBase(), cursor2::eof(), FALSE, FichaBf::getlistadescuentos(), FichaBf::getlistalineas(), SubForm3::lineaat(), FichaBf::m_listadescuentos, FichaBf::m_listalineas, EmpresaBase::m_pWorkspace, Company::newAlbaranClienteView(), SubForm3::nuevoRegistro(), Ficha::pintar(), SubForm3::rowCount(), DBRecord::setDBvalue(), SubForm3::setProcesarCambios(), TRUE, and cursor2::valor().
Referenced by on_mui_pasaraalbaran_clicked().
00176 { 00177 _depura("PedidoClienteView::generarAlbaran", 0); 00179 QString SQLQuery = "SELECT * FROM albaran WHERE refalbaran = '" + DBvalue("refpedidocliente") + "' AND idcliente = " + DBvalue("idcliente"); 00180 cursor2 *cur = empresaBase()->cargacursor(SQLQuery); 00181 if (!cur->eof()) { 00184 if (QMessageBox::question(this, 00185 tr("Albaran ya existe"), 00186 tr("Existe un albaran a este cliente con la misma referencia que este pedido. Desea abrirlo para verificar?"), 00187 tr("&Si"), tr("&No"), QString::null, 0, 1)) { 00188 return; 00189 } // end if 00190 AlbaranClienteView *bud = new AlbaranClienteView(empresaBase(), NULL); 00191 empresaBase()->m_pWorkspace->addWindow(bud); 00192 bud->cargar(cur->valor("idalbaran")); 00193 bud->show(); 00194 return; 00195 } // end if 00196 delete cur; 00197 00199 AlbaranClienteView *bud = empresaBase()->newAlbaranClienteView(); 00200 empresaBase()->m_pWorkspace->addWindow(bud); 00201 bud->cargar("0"); 00202 00204 bud->setDBvalue("comentalbaran", DBvalue("comentpedidocliente")); 00205 bud->setDBvalue("descalbaran",DBvalue("descpedidocliente")); 00206 bud->setDBvalue("idforma_pago",DBvalue("idforma_pago")); 00207 bud->setDBvalue("refalbaran",DBvalue("refpedidocliente")); 00208 bud->setDBvalue("idcliente",DBvalue("idcliente")); 00209 bud->setDBvalue("idalmacen",DBvalue("idalmacen")); 00210 bud->setDBvalue("contactalbaran",DBvalue("contactpedidocliente")); 00211 bud->setDBvalue("telalbaran",DBvalue("telpedidocliente")); 00212 bud->setDBvalue("idtrabajador",DBvalue("idtrabajador")); 00213 00214 00216 SDBRecord *linea, *linea1; 00217 for (int i = 0; i < m_listalineas->rowCount(); ++i) { 00218 linea = m_listalineas->lineaat(i); 00219 if (linea->DBvalue("idarticulo") != "") { 00220 linea1 = bud->getlistalineas()->lineaat(bud->getlistalineas()->rowCount() - 1); 00221 bud->getlistalineas()->nuevoRegistro(); 00222 bud->getlistalineas()->setProcesarCambios(FALSE); 00223 linea1->setDBvalue("desclalbaran", linea->DBvalue("desclpedidocliente")); 00224 linea1->setDBvalue("cantlalbaran", linea->DBvalue("cantlpedidocliente")); 00225 linea1->setDBvalue("pvplalbaran", linea->DBvalue("pvplpedidocliente")); 00226 linea1->setDBvalue("ivalalbaran", linea->DBvalue("ivalpedidocliente")); 00227 linea1->setDBvalue("descuentolalbaran", linea->DBvalue("descuentolpedidocliente")); 00228 linea1->setDBvalue("idarticulo", linea->DBvalue("idarticulo")); 00229 linea1->setDBvalue("codigocompletoarticulo", linea->DBvalue("codigocompletoarticulo")); 00230 linea1->setDBvalue("nomarticulo", linea->DBvalue("nomarticulo")); 00231 bud->getlistalineas()->setProcesarCambios(TRUE); 00232 } // end if 00233 } // end for 00234 00236 for (int i = 0; i < m_listadescuentos->rowCount(); ++i) { 00237 linea1 = m_listadescuentos->lineaat(i); 00238 if (linea1->DBvalue("proporciondpedidocliente") != "") { 00239 linea = bud->getlistadescuentos()->lineaat(bud->getlistadescuentos()->rowCount() - 1); 00240 bud->getlistadescuentos()->setProcesarCambios(FALSE); 00241 linea->setDBvalue("conceptdalbaran", linea1->DBvalue("conceptdpedidocliente")); 00242 linea->setDBvalue("proporciondalbaran", linea1->DBvalue("proporciondpedidocliente")); 00243 bud->getlistadescuentos()->setProcesarCambios(TRUE); 00244 bud->getlistadescuentos()->nuevoRegistro(); 00245 } // end if 00246 } // end for 00248 bud->pintar(); 00249 bud->show(); 00250 _depura("END PedidoClienteView::generarAlbaran", 0); 00251 }
| void PedidoClienteView::inicializar | ( | ) |
Definition at line 113 of file pedidoclienteview.cpp.
References _depura(), dialogChanges::dialogChanges_cargaInicial(), SubForm3::inicializar(), Ui_PedidoClienteBase::m_descuentos, Ficha::pintar(), and Ui_PedidoClienteBase::subform3.
Referenced by PedidosClienteList::crear(), and Company::s_newPedidoClienteView().
00113 { 00114 _depura("PedidoClienteView::inicializar", 0); 00115 subform3->inicializar(); 00116 m_descuentos->inicializar(); 00117 pintar(); 00118 dialogChanges_cargaInicial(); 00119 _depura("END PedidoClienteView::inicializar", 0); 00120 }
| void PedidoClienteView::pintatotales | ( | Fixed | iva, | |
| Fixed | base, | |||
| Fixed | total, | |||
| Fixed | desc, | |||
| Fixed | irpf, | |||
| Fixed | reqeq | |||
| ) | [virtual] |
| iva | ||
| base | ||
| total | ||
| desc | ||
| irpf | ||
| reqeq |
Reimplemented from FichaBf.
Definition at line 132 of file pedidoclienteview.cpp.
References _depura(), iva, Ui_PedidoClienteBase::m_totalBases, Ui_PedidoClienteBase::m_totalDiscounts, Ui_PedidoClienteBase::m_totalIRPF, Ui_PedidoClienteBase::m_totalpedidocliente, Ui_PedidoClienteBase::m_totalReqEq, Ui_PedidoClienteBase::m_totalTaxes, and Fixed::toQString().
00132 { 00133 _depura("PedidoClienteView::pintatotales", 0); 00134 m_totalBases->setText(QString(base.toQString())); 00135 m_totalTaxes->setText(QString(iva.toQString())); 00136 m_totalDiscounts->setText(QString(desc.toQString())); 00137 m_totalIRPF->setText(QString(irpf.toQString())); 00138 m_totalReqEq->setText(QString(reqeq.toQString())); 00139 m_totalpedidocliente->setText(total.toQString()); 00140 _depura("END PedidoClienteView::pintatotales", 0); 00141 }
| void PedidoClienteView::s_pintaTotales | ( | ) | [virtual, slot] |
Definition at line 333 of file pedidoclienteview.cpp.
References _depura(), and FichaBf::calculaypintatotales().
00333 { 00334 _depura("PedidoClienteView::s_pintaTotales", 0); 00335 calculaypintatotales(); 00336 _depura("END PedidoClienteView::s_pintaTotales", 0); 00337 }
| void PedidoClienteView::on_mui_verpresupuesto_clicked | ( | ) | [virtual, slot] |
Definition at line 147 of file pedidoclienteview.cpp.
References _depura(), QWorkspace2::addWindow(), postgresiface2::cargacursor(), DBRecord::DBvalue(), FichaBf::empresaBase(), cursor2::eof(), EmpresaBase::m_pWorkspace, Company::nuevoPresupuestoView(), cursor2::siguienteregistro(), and cursor2::valor().
00147 { 00148 _depura("PedidoClienteView::on_mui_verpresupuesto_clicked", 0); 00149 QString SQLQuery = "SELECT * FROM presupuesto WHERE refpresupuesto = '" + DBvalue("refpedidocliente") + "' AND idcliente = " + DBvalue("idcliente"); 00150 cursor2 *cur = empresaBase()->cargacursor(SQLQuery); 00151 if (!cur->eof()) { 00152 while (!cur->eof()) { 00153 PresupuestoView *bud = empresaBase()->nuevoPresupuestoView(); 00154 empresaBase()->m_pWorkspace->addWindow(bud); 00155 if (bud->cargar(cur->valor("idpresupuesto"))) { 00156 delete bud; 00157 return; 00158 } // end if 00159 bud->show(); 00160 cur->siguienteregistro(); 00161 } // end while 00162 } else { 00163 _depura("No hay presupuestos con la misma referencia.", 2); 00164 } // end if 00165 delete cur; 00166 _depura("END PedidoClienteView::on_mui_verpresupuesto_clicked", 0); 00167 }
| void PedidoClienteView::on_mui_pasaraalbaran_clicked | ( | ) | [virtual, slot] |
Definition at line 343 of file pedidoclienteview.cpp.
References _depura(), and generarAlbaran().
00343 { 00344 _depura("PedidoClienteView::on_mui_pasaraalbaran_clicked", 0); 00345 generarAlbaran(); 00346 _depura("END PedidoClienteView::on_mui_pasaraalbaran_clicked", 0); 00347 }
| void PedidoClienteView::on_mui_cobrar_clicked | ( | ) | [virtual, slot] |
Definition at line 257 of file pedidoclienteview.cpp.
References _depura(), DBRecord::DBvalue(), FichaBf::empresaBase(), Ui_PedidoClienteBase::m_totalpedidocliente, Company::newCobroView(), Ficha::pintar(), and DBRecord::setDBvalue().
00257 { 00258 _depura("PedidoClienteView::on_mui_cobrar_clicked", 0); 00259 CobroView *bud = empresaBase()->newCobroView(); 00260 bud->setDBvalue("idcliente", DBvalue("idcliente")); 00261 bud->setDBvalue("cantcobro", m_totalpedidocliente->text()); 00262 bud->setDBvalue("refcobro", DBvalue("refpedidocliente")); 00263 bud->setDBvalue("comentcobro", DBvalue("descpedidocliente")); 00264 bud->pintar(); 00265 bud->show(); 00266 _depura("END PedidoClienteView::on_mui_cobrar_clicked", 0); 00267 }
| void PedidoClienteView::on_m_descuentos_editFinish | ( | int | , | |
| int | ||||
| ) | [virtual, slot] |
Definition at line 353 of file pedidoclienteview.cpp.
References _depura(), and FichaBf::calculaypintatotales().
00353 { 00354 _depura("PedidoClienteView::on_m_descuentos_editFinish", 0); 00355 calculaypintatotales(); 00356 _depura("END PedidoClienteView::on_m_descuentos_editFinish", 0); 00357 }
| void PedidoClienteView::on_subform3_editFinish | ( | int | , | |
| int | ||||
| ) | [virtual, slot] |
Definition at line 363 of file pedidoclienteview.cpp.
References _depura(), and FichaBf::calculaypintatotales().
00363 { 00364 _depura("PedidoClienteView::on_subform3_editFinish", 0); 00365 calculaypintatotales(); 00366 _depura("END sPedidoClienteView::on_subform3_editFinish", 0); 00367 }
| void PedidoClienteView::on_mui_idcliente_valueChanged | ( | QString | id | ) | [virtual, slot] |
| id |
Definition at line 274 of file pedidoclienteview.cpp.
References _depura(), Ui_PedidoClienteBase::mui_idforma_pago, BusquedaFormaPago::setIdCliente(), SubForm2Bf::setIdCliente(), and Ui_PedidoClienteBase::subform3.
00274 { 00275 _depura("PedidoClienteView::on_m_cliente_valueChanged", 0); 00276 subform3->setIdCliente(id); 00277 mui_idforma_pago->setIdCliente(id); 00278 _depura("END PedidoClienteView::on_m_cliente_valueChanged", 0); 00279 }
1.5.1