FacturasList Class Reference

Administra el listado de facturas a clientes. More...

#include <facturaslist.h>

Inheritance diagram for FacturasList:

Listado Ui_FacturasListBase BLWidget QWidget PEmpresaBase

Signals

void selected (QString)

Public Member Functions

 FacturasList (QWidget *parent=0, Qt::WFlags flag=0, edmode editmodo=EditMode)
 FacturasList (Company *, QWidget *parent=0, Qt::WFlags flag=0, edmode editmodo=EditMode)
 ~FacturasList ()
void iniciaForm ()
void setEmpresaBase (Company *comp)
QString idfactura ()
void setidcliente (QString val)
void setidarticulo (QString val)
QString generaFiltro ()
void presentar ()
void editar (int)
void borrar ()
void crear ()
void imprimir ()

Private Attributes

QString mdb_idfactura

Detailed Description

Administra el listado de facturas a clientes.

Definition at line 53 of file facturaslist.h.


Constructor & Destructor Documentation

FacturasList::FacturasList ( QWidget parent = 0,
Qt::WFlags  flag = 0,
edmode  editmodo = EditMode 
)

Parameters:
parent 
flag 
editmodo 

Definition at line 45 of file facturaslist.cpp.

References _depura(), Listado::hideBusqueda(), iniciaForm(), mdb_idfactura, Ui_FacturasListBase::mui_list, Listado::setSubForm(), and Ui_FacturasListBase::setupUi().

00046         : Listado(NULL, parent, flag, editmodo) {
00047     _depura("FacturasList::FacturasList", 0);
00048     setupUi(this);
00049     iniciaForm();
00050     mdb_idfactura = "";
00051     setSubForm(mui_list);
00052     hideBusqueda();
00053     _depura("END FacturasList::FacturasList", 0);
00054 }

FacturasList::FacturasList ( Company comp,
QWidget parent = 0,
Qt::WFlags  flag = 0,
edmode  editmodo = EditMode 
)

Parameters:
comp 
parent 
flag 
editmodo 

Hacemos el tratamiento de los permisos que desabilita botones en caso de no haber suficientes permisos.

Definition at line 65 of file facturaslist.cpp.

References _depura(), PEmpresaBase::empresaBase(), Listado::hideBusqueda(), iniciaForm(), Ui_FacturasListBase::m_articulo, Ui_FacturasListBase::m_cliente, mdb_idfactura, EmpresaBase::meteWindow(), Listado::modoEdicion(), Ui_FacturasListBase::mui_list, presentar(), SubForm2Bf::setEmpresaBase(), PEmpresaBase::setEmpresaBase(), Listado::setSubForm(), Ui_FacturasListBase::setupUi(), and Listado::trataPermisos().

00066         : Listado(comp, parent, flag, editmodo) {
00067     _depura("FacturasList::FacturasList", 0);
00068     setupUi(this);
00069     iniciaForm();
00070     m_cliente->setEmpresaBase(empresaBase());
00071     m_articulo->setEmpresaBase(empresaBase());
00072     mui_list->setEmpresaBase(empresaBase());
00073     setSubForm(mui_list);
00074     presentar();
00075     mdb_idfactura = "";
00076     if (modoEdicion()) {
00077         empresaBase()->meteWindow(windowTitle(), this);
00078     } // end if
00079     hideBusqueda();
00081     trataPermisos("factura");
00082     _depura("END FacturasList::FacturasList", 0);
00083 }

FacturasList::~FacturasList (  ) 

Definition at line 107 of file facturaslist.cpp.

References _depura().

00107                             {
00108     _depura("FacturasList::~FacturasList", 0);
00109     _depura("END FacturasList::~FacturasList", 0);
00110 }


Member Function Documentation

void FacturasList::iniciaForm (  ) 

Returns:

Disparamos los plugins.

Definition at line 90 of file facturaslist.cpp.

References _depura(), g_plugins, Plugins::lanza(), and Ui_FacturasListBase::mui_procesada.

Referenced by FacturasList().

00090                               {
00091     _depura("FacturasList::iniciaForm");
00093     int res = g_plugins->lanza("FacturasList_iniciaForm", this);
00094     if (res != 0)
00095         return;
00096     mui_procesada->insertItem(0, tr("Todas las facturas"));
00097     mui_procesada->insertItem(1, tr("Facturas procesadas"));
00098     mui_procesada->insertItem(2, tr("Facturas no procesadas"));
00099     _depura("END FacturasList::iniciaForm");
00100 }

void FacturasList::setEmpresaBase ( Company comp  ) 

Parameters:
comp 

Definition at line 255 of file facturaslist.cpp.

References _depura(), Ui_FacturasListBase::m_articulo, Ui_FacturasListBase::m_cliente, Ui_FacturasListBase::mui_list, SubForm2Bf::setEmpresaBase(), and PEmpresaBase::setEmpresaBase().

Referenced by ClienteView::ClienteView().

00255                                                 {
00256     _depura("FacturasList::setEmpresaBase", 0);
00257     PEmpresaBase::setEmpresaBase(comp);
00258     m_cliente->setEmpresaBase(comp);
00259     m_articulo->setEmpresaBase(comp);
00260     mui_list->setEmpresaBase(comp);
00261     _depura("END FacturasList::setEmpresaBase", 0);
00262 }

QString FacturasList::idfactura (  ) 

Returns:

Definition at line 269 of file facturaslist.cpp.

References _depura(), and mdb_idfactura.

Referenced by AlbaranClienteView::agregarFactura().

00269                                 {
00270     _depura("FacturasList::idfacturae", 0);
00271     _depura("END FacturasList::idfactura", 0);
00272     return mdb_idfactura;
00273 }

void FacturasList::setidcliente ( QString  val  ) 

Parameters:
val 

Definition at line 280 of file facturaslist.cpp.

References _depura(), Ui_FacturasListBase::m_cliente, and BusquedaCliente::setidcliente().

Referenced by ClienteView::cargarPost().

00280                                            {
00281     _depura("FacturasList::setidcliente", 0);
00282     m_cliente->setidcliente(val);
00283     _depura("END FacturasList::setidcliente", 0);
00284 }

void FacturasList::setidarticulo ( QString  val  ) 

Parameters:
val 

Definition at line 291 of file facturaslist.cpp.

References _depura(), Ui_FacturasListBase::m_articulo, and BusquedaArticulo::setidarticulo().

00291                                             {
00292     _depura("FacturasList::setidarticulo", 0);
00293     m_articulo->setidarticulo(val);
00294     _depura("END FacturasList::setidarticulo", 0);
00295 }

QString FacturasList::generaFiltro (  ) 

Returns:

Tratamiento de los filtros.

Tratamos los procesados y no procesados en las facturas para el filtraje.

Muestra solo las procesadas.

Muestra solo las NO procesadas.

Definition at line 141 of file facturaslist.cpp.

References _depura(), BusquedaArticulo::idarticulo(), BusquedaCliente::idcliente(), Ui_FacturasListBase::m_articulo, Ui_FacturasListBase::m_cliente, Ui_FacturasListBase::m_fechafin, Ui_FacturasListBase::m_fechain, Ui_FacturasListBase::m_filtro, Ui_FacturasListBase::mui_procesada, and BusquedaFecha::text().

Referenced by presentar().

00141                                    {
00142     _depura("FacturasList::generaFiltro", 0);
00144     QString filtro = "";
00145     if (m_filtro->text() != "") {
00146         filtro = " AND ( lower(descfactura) LIKE lower('%" + m_filtro->text() + "%') ";
00147         filtro +=" OR reffactura LIKE '" + m_filtro->text() + "%' ";
00148         filtro +=" OR lower(nomcliente) LIKE lower('%" + m_filtro->text() + "%')) ";
00149     } else {
00150         filtro = "";
00151     } // end if
00152     if (m_cliente->idcliente() != "") {
00153         filtro += " AND factura.idcliente = " + m_cliente->idcliente();
00154     } // end if
00155 
00157     if (mui_procesada->currentIndex() == 1) {
00159         filtro += " AND procesadafactura ";
00160     } else if (mui_procesada->currentIndex() == 2) {
00162         filtro += " AND NOT procesadafactura ";
00163     } // end if
00164 
00165     if (m_articulo->idarticulo() != "") {
00166         filtro += " AND idfactura IN (SELECT DISTINCT idfactura FROM lfactura WHERE idarticulo = '" + m_articulo->idarticulo() + "') ";
00167     } // end if
00168     if (m_fechain->text() != "") {
00169         filtro += " AND ffactura >= '" + m_fechain->text() + "' ";
00170     } // end if
00171     if (m_fechafin->text() != "") {
00172         filtro += " AND ffactura <= '" + m_fechafin->text() + "' ";
00173     } // end if
00174     _depura("END FacturasList::generaFiltro", 0);
00175     return (filtro);
00176 }

void FacturasList::presentar (  )  [virtual]

Reimplemented from Listado.

Definition at line 117 of file facturaslist.cpp.

References _depura(), postgresiface2::cargacursor(), FacturasListSubform::cargar(), PEmpresaBase::empresaBase(), generaFiltro(), Ui_FacturasListBase::mui_list, Ui_FacturasListBase::mui_totalbimponible, Ui_FacturasListBase::mui_totalfacturas, Ui_FacturasListBase::mui_totalimpuestos, and cursor2::valor().

Referenced by borrar(), ClienteView::cargarPost(), FacturasList(), and Company::refreshFacturas().

00117                              {
00118     _depura("FacturasList::presenta", 0);
00119 
00120     mui_list->cargar("SELECT *, totalfactura AS total, bimpfactura AS base, impfactura AS impuestos FROM factura LEFT JOIN cliente ON factura.idcliente = cliente.idcliente LEFT JOIN almacen ON factura.idalmacen = almacen.idalmacen WHERE 1 = 1 " + generaFiltro());
00121 
00123     cursor2 *cur = empresaBase()->cargacursor("SELECT SUM(totalfactura) AS total, SUM(bimpfactura) AS base, SUM(impfactura) AS impuestos FROM factura LEFT JOIN cliente ON factura.idcliente = cliente.idcliente LEFT JOIN almacen ON factura.idalmacen = almacen.idalmacen WHERE 1 = 1 " + generaFiltro());
00125     if (cur ) {
00126         mui_totalbimponible->setText(cur->valor("base"));
00127         mui_totalimpuestos->setText(cur->valor("impuestos"));
00128         mui_totalfacturas->setText(cur->valor("total"));
00129         delete cur;
00130     } // end if
00131 
00132     _depura("END FacturasList::presentar", 0);
00133 }

void FacturasList::editar ( int  row  )  [virtual]

Parameters:
row 
Returns:

Reimplemented from Listado.

Definition at line 187 of file facturaslist.cpp.

References _depura(), QWorkspace2::addWindow(), Ficha::cargar(), SubForm3::DBvalue(), PEmpresaBase::empresaBase(), EmpresaBase::m_pWorkspace, mdb_idfactura, Listado::modoEdicion(), Ui_FacturasListBase::mui_list, and selected().

00187                                  {
00188     _depura("FacturasList::editar", 0);
00189     mdb_idfactura = mui_list->DBvalue(QString("idfactura"), row);
00190     if (modoEdicion()) {
00191         FacturaView *prov = ((Company *)empresaBase())->newFacturaView();
00192         if (prov->cargar(mdb_idfactura)) {
00193             delete prov;
00194             return;
00195         } // end if
00196         empresaBase()->m_pWorkspace->addWindow(prov);
00197         prov->show();
00198     } else {
00199         emit(selected(mdb_idfactura));
00200     } // end if
00201     _depura("END FacturasList::editar", 0);
00202 }

void FacturasList::borrar (  )  [virtual]

Returns:

Reimplemented from Listado.

Definition at line 227 of file facturaslist.cpp.

References _depura(), Ficha::cargar(), SubForm3::currentRow(), SubForm3::DBvalue(), PEmpresaBase::empresaBase(), mdb_idfactura, mensajeInfo(), Listado::modoEdicion(), Ui_FacturasListBase::mui_list, Ficha::on_mui_borrar_clicked(), and presentar().

00227                           {
00228     _depura("FacturasList::borrar", 0);
00229     int a = mui_list->currentRow();
00230     if (a < 0) {
00231         mensajeInfo(tr("Debe seleccionar una linea"));
00232         return;
00233     } // end if
00234     try {
00235         mdb_idfactura = mui_list->DBvalue(QString("idfactura"));
00236         if (modoEdicion()) {
00237             FacturaView *fv = ((Company *)empresaBase())->newFacturaView();
00238             if (fv->cargar(mdb_idfactura))
00239                 throw -1;
00240             fv->on_mui_borrar_clicked();
00241             fv->close();
00242         } // end if
00243         presentar();
00244     } catch (...) {
00245         mensajeInfo(tr("Error al borrar la factura a cliente"));
00246     } // end try
00247     _depura("END FacturasList::borrar", 0);
00248 }

void FacturasList::crear (  )  [virtual]

Reimplemented from Listado.

Definition at line 301 of file facturaslist.cpp.

References _depura(), and PEmpresaBase::empresaBase().

00301                          {
00302     _depura("FacturasList::crear", 0);
00303         ((Company *)empresaBase())->s_newFacturaCli();
00304     _depura("END FacturasList::crear", 0);
00305 }

void FacturasList::imprimir (  )  [virtual]

Reimplemented from Listado.

Definition at line 211 of file facturaslist.cpp.

References _depura(), SubForm3::imprimirPDF(), and Ui_FacturasListBase::mui_list.

00211                             {
00212     _depura("FacturasList::on_mui_imprimir_clicked", 0);
00213     mui_list->imprimirPDF(tr("Facturas a clientes"));
00214     _depura("FacturasList::on_mui_imprimir_clicked", 0);
00215 }

void FacturasList::selected ( QString   )  [signal]

Reimplemented from Listado.

Definition at line 128 of file moc_facturaslist.cpp.

Referenced by editar().

00129 {
00130     void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
00131     QMetaObject::activate(this, &staticMetaObject, 0, _a);
00132 }


Field Documentation

QString FacturasList::mdb_idfactura [private]

Definition at line 57 of file facturaslist.h.

Referenced by borrar(), editar(), FacturasList(), and idfactura().


The documentation for this class was generated from the following files:
Generated on Sat Dec 15 00:01:53 2007 for BulmaGes by  doxygen 1.5.1