FacturaView Class Reference

Muestra y administra la ventana de una factura a cliente. More...

#include <facturaview.h>

Inheritance diagram for FacturaView:

FichaBf Ui_FacturaBase Ficha BLWidget DBRecord dialogChanges QWidget PEmpresaBase

Public Slots

virtual void on_mui_agregaralbaran_clicked ()
virtual void on_m_descuentos_editFinish (int, int)
virtual void on_subform2_editFinish (int, int)
virtual void on_mui_cobrar_clicked ()
virtual void on_mui_veralbaranes_clicked ()
virtual void on_mui_idcliente_valueChanged (QString id)

Public Member Functions

 FacturaView (Company *, QWidget *parent=0)
 ~FacturaView ()
void inicializar ()
void pintatotales (Fixed, Fixed, Fixed, Fixed, Fixed, Fixed)
virtual int cargarPost (QString)
virtual int guardarPost ()
virtual int borrarPre ()

Detailed Description

Muestra y administra la ventana de una factura a cliente.

Definition at line 45 of file facturaview.h.


Constructor & Destructor Documentation

FacturaView::FacturaView ( Company comp,
QWidget parent = 0 
)

Parameters:
comp 
parent 

Establecemos algunos Buddies.

Disparamos los plugins.

Inicializamos FichaBf.

Definition at line 52 of file facturaview.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_FacturaBase::m_descuentos, Ui_FacturaBase::m_totalBases, Ui_FacturaBase::m_totalDiscounts, Ui_FacturaBase::m_totalfactura, Ui_FacturaBase::m_totalTaxes, mensajeInfo(), Ficha::meteWindow(), Ui_FacturaBase::mui_codigoserie_factura, Ui_FacturaBase::mui_idalmacen, Ui_FacturaBase::mui_idcliente, Ui_FacturaBase::mui_idforma_pago, Ui_FacturaBase::mui_labelAlmacen, Ui_FacturaBase::mui_reffactura, BusquedaSerieFactura::setcodigoserie_factura(), DBRecord::setDBCampoId(), Ficha::setDBTableName(), BusquedaSerieFactura::setEmpresaBase(), PEmpresaBase::setEmpresaBase(), BusquedaAlmacen::setEmpresaBase(), SubForm2Bf::setEmpresaBase(), BusquedaAlmacen::setidalmacen(), BusquedaFormaPago::setidforma_pago(), FichaBf::setListaDescuentos(), FichaBf::setListaLineas(), Ficha::setTitleName(), Ui_FacturaBase::setupUi(), Ui_FacturaBase::subform2, and TRUE.

00053         : FichaBf ( comp, parent ) {
00054     _depura("FacturaView::FacturaView", 0);
00055     setupUi(this);
00056     setAttribute(Qt::WA_DeleteOnClose);
00057     try {
00058         setTitleName(tr("Factura"));
00059         setDBTableName ( "factura" );
00060         setDBCampoId ( "idfactura" );
00061         addDBCampo ( "idfactura", DBCampo::DBint, DBCampo::DBPrimaryKey, QApplication::translate ( "Factura", "Id factura" ) );
00062         addDBCampo ( "idcliente", DBCampo::DBint, DBCampo::DBNotNull, QApplication::translate ( "Factura", "Id cliente" ) );
00063         addDBCampo ( "idalmacen", DBCampo::DBint, DBCampo::DBNotNull, QApplication::translate ( "Factura", "Id almacen" ) );
00064         addDBCampo ( "numfactura", DBCampo::DBint, DBCampo::DBNothing, QApplication::translate ( "Factura", "Numero factura" ) );
00065         addDBCampo ( "ffactura", DBCampo::DBdate, DBCampo::DBNothing, QApplication::translate ( "Factura", "Ffactura" ) );
00066         addDBCampo ( "procesadafactura", DBCampo::DBboolean, DBCampo::DBNothing, QApplication::translate ( "Factura", "Procesada factura" ) );
00067         addDBCampo ( "codigoserie_factura", DBCampo::DBvarchar, DBCampo::DBNothing, QApplication::translate ( "Factura", "Codigo serie factura" ) );
00068         addDBCampo ( "comentfactura", DBCampo::DBvarchar, DBCampo::DBNothing, QApplication::translate ( "Factura", "Comentario factura" ) );
00069         addDBCampo ( "reffactura", DBCampo::DBvarchar, DBCampo::DBNothing, QApplication::translate ( "Factura", "Referencia factura" ) );
00070         addDBCampo ( "descfactura", DBCampo::DBvarchar, DBCampo::DBNothing, QApplication::translate ( "Factura", "Descripcion factura" ) );
00071         addDBCampo ( "idtrabajador", DBCampo::DBint, DBCampo::DBNothing, QApplication::translate ( "Factura", "Id trabajador" ) );
00072         addDBCampo ( "idforma_pago", DBCampo::DBint, DBCampo::DBNothing, QApplication::translate ( "Factura", "Id formad de pago" ) );
00073 
00075         mui_labelAlmacen->setText(tr("Al&macen"));
00076         mui_labelAlmacen->setBuddy(mui_idalmacen);
00077 
00079         int res = g_plugins->lanza("FacturaView_FacturaView", this);
00080         if (res != 0) {
00081             return;
00082         } // end if
00083         subform2->setEmpresaBase(comp);
00084         mui_idalmacen->setEmpresaBase(comp);
00085         mui_idalmacen->setidalmacen("");
00086         mui_idforma_pago->setEmpresaBase(comp);
00087         mui_idforma_pago->setidforma_pago("");
00088         mui_idcliente->setEmpresaBase(comp);
00089         m_descuentos->setEmpresaBase(comp);
00090         mui_codigoserie_factura->setEmpresaBase(comp);
00091         mui_codigoserie_factura->setcodigoserie_factura("");
00092         mui_reffactura->setEmpresaBase(comp);
00093 
00095         setListaLineas(subform2);
00096         setListaDescuentos(m_descuentos);
00097 
00098         m_totalBases->setReadOnly(TRUE);
00099         m_totalBases->setAlignment(Qt::AlignRight);
00100         m_totalTaxes->setReadOnly(TRUE);
00101         m_totalTaxes->setAlignment(Qt::AlignRight);
00102         m_totalDiscounts->setReadOnly(TRUE);
00103         m_totalDiscounts->setAlignment(Qt::AlignRight);
00104         m_totalfactura->setReadOnly(TRUE);
00105         m_totalfactura->setAlignment(Qt::AlignRight);
00106         meteWindow(windowTitle(), this, FALSE);
00107     } catch (...) {
00108         mensajeInfo(tr("Error al crear la factura"));
00109     }
00110     _depura("END FacturaView::FacturaView");
00111 }

FacturaView::~FacturaView (  ) 

Definition at line 119 of file facturaview.cpp.

References _depura(), FichaBf::empresaBase(), and Company::refreshFacturas().

00119                           {
00120     _depura("FacturaView::~FacturaView", 0);
00121     empresaBase()->refreshFacturas();
00122     _depura("END FacturaView::~FacturaView", 0);
00123 }


Member Function Documentation

void FacturaView::inicializar (  ) 

Definition at line 130 of file facturaview.cpp.

References _depura(), dialogChanges::dialogChanges_cargaInicial(), SubForm3::inicializar(), Ui_FacturaBase::m_descuentos, Ficha::pintar(), and Ui_FacturaBase::subform2.

Referenced by Company::s_newFacturaCli().

00130                               {
00131     _depura("FacturaView::inicializar", 0);
00132     subform2->inicializar();
00133     m_descuentos->inicializar();
00134     pintar();
00135     dialogChanges_cargaInicial();
00136     _depura("END FacturaView::inicializar", 0);
00137 }

void FacturaView::pintatotales ( Fixed  iva,
Fixed  base,
Fixed  total,
Fixed  desc,
Fixed  irpf,
Fixed  reqeq 
) [virtual]

Parameters:
iva 
base 
total 
desc 
irpf 
reqeq 

Reimplemented from FichaBf.

Definition at line 151 of file facturaview.cpp.

References _depura(), iva, Ui_FacturaBase::m_totalBases, Ui_FacturaBase::m_totalDiscounts, Ui_FacturaBase::m_totalfactura, Ui_FacturaBase::m_totalIRPF, Ui_FacturaBase::m_totalReqEq, Ui_FacturaBase::m_totalTaxes, and Fixed::toQString().

00151                                                                                                       {
00152     _depura("FacturaView::pintatotales", 0);
00153     m_totalBases->setText(base.toQString());
00154     m_totalTaxes->setText(iva.toQString());
00155     m_totalfactura->setText(total.toQString());
00156     m_totalDiscounts->setText(desc.toQString());
00157     m_totalIRPF->setText(QString(irpf.toQString()));
00158     m_totalReqEq->setText(QString(reqeq.toQString()));
00159     _depura("FacturaView::pintatotales", 0);
00160 }

int FacturaView::cargarPost ( QString  idbudget  )  [virtual]

Parameters:
idbudget 
Returns:

Disparamos los plugins.

Reimplemented from Ficha.

Definition at line 327 of file facturaview.cpp.

References _depura(), FichaBf::calculaypintatotales(), SubForm2Bf::cargar(), g_plugins, Plugins::lanza(), FichaBf::m_listadescuentos, and FichaBf::m_listalineas.

00328 {
00329     _depura ( "FacturaView::cargarPost", 0 );
00330 
00331     m_listalineas->cargar ( idbudget );
00332     m_listadescuentos->cargar ( idbudget );
00333 
00335     g_plugins->lanza ( "FacturaView_cargarPost_Post", this );
00336 
00337     calculaypintatotales();
00338 
00339     _depura ( "END FacturaView::cargarPost", 0 );
00340     return 0;
00341 }

int FacturaView::guardarPost (  )  [virtual]

Returns:

Reimplemented from Ficha.

Definition at line 349 of file facturaview.cpp.

References _depura(), DBRecord::DBvalue(), SubForm3::guardar(), FichaBf::m_listadescuentos, FichaBf::m_listalineas, and SubForm3::setColumnValue().

00350 {
00351     _depura ( "FacturaView::guardarPost", 0 );
00352     m_listadescuentos->setColumnValue ( "idfactura", DBvalue ( "idfactura" ) );
00353     m_listalineas->setColumnValue ( "idfactura", DBvalue ( "idfactura" ) );
00354     m_listalineas->guardar();
00355     m_listadescuentos->guardar();
00356     _depura ( "END FacturaView::guardarPost", 0 );
00357     return 0;
00358 }

int FacturaView::borrarPre (  )  [virtual]

Returns:

Reimplemented from Ficha.

Definition at line 311 of file facturaview.cpp.

References _depura(), SubForm3::borrar(), FichaBf::m_listadescuentos, and FichaBf::m_listalineas.

00312 {
00313     _depura ( "FacturaView::borrarPre", 0 );
00314     int error = m_listalineas->borrar();
00315     error = m_listadescuentos->borrar();
00316     _depura ( "END FacturaView::borrarPre", 0 );
00317     return 0;
00318 }

void FacturaView::on_mui_agregaralbaran_clicked (  )  [virtual, slot]

Definition at line 189 of file facturaview.cpp.

References _depura(), FichaBf::calculaypintatotales(), Ficha::cargar(), DBRecord::DBvalue(), FichaBf::empresaBase(), FichaBf::getlistalineas(), Ficha::guardar(), AlbaranClienteList::idCliDelivNote(), SubForm3::lineaat(), Ui_AlbaranClienteListBase::m_cliente, Ui_AlbaranClienteBase::mui_procesadoalbaran, SubForm3::nuevoRegistro(), Listado::on_mui_actualizar_clicked(), Ficha::pintar(), SubForm3::rowCount(), Listado::SelectMode, DBRecord::setDBvalue(), BusquedaCliente::setidcliente(), and TRUE.

00189                                                 {
00190     _depura("FacturaView::on_mui_agregaralbaran_clicked", 0);
00191     QDialog *diag = new QDialog(0);
00192     diag->setModal(true);
00193     AlbaranClienteList *fac = new AlbaranClienteList(empresaBase(), diag, 0, AlbaranClienteList::SelectMode);
00194     connect(fac, SIGNAL(selected(QString)), diag, SLOT(accept()));
00195 
00197     fac->m_cliente->setidcliente(DBvalue("idcliente"));
00198     fac->on_mui_actualizar_clicked();
00199 
00201     diag->exec();
00202     QString idalbaran = fac->idCliDelivNote();
00203     delete diag;
00204 
00206     if (idalbaran == "")
00207         return;
00208 
00210     AlbaranClienteView *bud = new AlbaranClienteView(empresaBase(), NULL);
00211     bud->cargar(idalbaran);
00212 
00214     QString comm = DBvalue("comentfactura") + "(" + tr("ALBARAN: Num ") + bud->DBvalue("numalbaran") + tr("Ref:") + " " + bud->DBvalue("refalbaran") + tr("Fecha:") + " " + bud->DBvalue("fechaalbaran") + ")\n";
00215 
00216     setDBvalue("comentfactura", comm);
00217     pintar();
00218 
00220     SDBRecord *linea, *linea1;
00221     for (int i = 0; i < bud->getlistalineas()->rowCount(); ++i) {
00222         linea = bud->getlistalineas()->lineaat(i);
00224         if (linea->DBvalue("idarticulo") != "") {
00225             linea1 = getlistalineas()->lineaat(getlistalineas()->rowCount() - 1);
00226             linea1->setDBvalue("desclfactura", linea->DBvalue("desclalbaran"));
00227             linea1->setDBvalue("cantlfactura", linea->DBvalue("cantlalbaran"));
00228             linea1->setDBvalue("pvplfactura", linea->DBvalue("pvplalbaran"));
00229             linea1->setDBvalue("descuentolfactura", linea->DBvalue("descuentolalbaran"));
00230             linea1->setDBvalue("idarticulo", linea->DBvalue("idarticulo"));
00231             linea1->setDBvalue("codigocompletoarticulo", linea->DBvalue("codigocompletoarticulo"));
00232             linea1->setDBvalue("nomarticulo", linea->DBvalue("nomarticulo"));
00233             linea1->setDBvalue("ivalfactura", linea->DBvalue("ivalalbaran"));
00234             getlistalineas()->nuevoRegistro();
00235         } // end if
00236     } // end for
00237 
00239     bud->mui_procesadoalbaran->setChecked(TRUE);
00240     bud->guardar();
00241     delete bud;
00242 
00244     calculaypintatotales();
00245     _depura("END FacturaView::on_mui_agregaralbaran_clicked", 0);
00246 }

void FacturaView::on_m_descuentos_editFinish ( int  ,
int   
) [virtual, slot]

Definition at line 289 of file facturaview.cpp.

References _depura(), and FichaBf::calculaypintatotales().

00289                                                      {
00290     _depura("FacturaView::on_m_descuentos_editFinish", 0);
00291     calculaypintatotales();
00292     _depura("END FacturaView::on_m_descuentos_editFinish", 0);
00293 }

void FacturaView::on_subform2_editFinish ( int  ,
int   
) [virtual, slot]

Definition at line 299 of file facturaview.cpp.

References _depura(), and FichaBf::calculaypintatotales().

00299                                                  {
00300     _depura("FacturaView::on_subform2_editFinish", 0);
00301     calculaypintatotales();
00302     _depura("END FacturaView::on_subform2_editFinish", 0);
00303 }

void FacturaView::on_mui_cobrar_clicked (  )  [virtual, slot]

Definition at line 169 of file facturaview.cpp.

References _depura(), QWorkspace2::addWindow(), DBRecord::DBvalue(), FichaBf::empresaBase(), EmpresaBase::m_pWorkspace, Ui_FacturaBase::m_totalfactura, Company::newCobroView(), Ficha::pintar(), and DBRecord::setDBvalue().

00169                                         {
00170     _depura("FacturaView::on_mui_cobrar_clicked", 0);
00171     CobroView *bud = empresaBase()->newCobroView();
00172     empresaBase()->m_pWorkspace->addWindow(bud);
00173     bud->setDBvalue("idcliente", DBvalue("idcliente"));
00174     bud->setDBvalue("cantcobro", m_totalfactura->text());
00175     bud->setDBvalue("refcobro", DBvalue("reffactura"));
00176     bud->setDBvalue("comentcobro", DBvalue("descfactura"));
00177     bud->pintar();
00178     bud->show();
00179     _depura("END FacturaView::on_mui_cobrar_clicked", 0);
00180 }

void FacturaView::on_mui_veralbaranes_clicked (  )  [virtual, slot]

Definition at line 254 of file facturaview.cpp.

References _depura(), QWorkspace2::addWindow(), postgresiface2::cargacursor(), DBRecord::DBvalue(), FichaBf::empresaBase(), cursor2::eof(), EmpresaBase::m_pWorkspace, cursor2::siguienteregistro(), and cursor2::valor().

00254                                               {
00255     _depura("FacturaView::on_mui_veralbaranes_clicked", 0);
00256     QString SQLQuery = "SELECT * FROM albaran WHERE refalbaran = '" + DBvalue("reffactura") + "'";
00257     cursor2 *cur = empresaBase()->cargacursor(SQLQuery);
00258     if (!cur->eof()) {
00259         while (!cur->eof()) {
00260             AlbaranClienteView *bud = new AlbaranClienteView(empresaBase(), NULL);
00261             empresaBase()->m_pWorkspace->addWindow(bud);
00262             bud->cargar(cur->valor("idalbaran"));
00263             bud->show();
00264             cur->siguienteregistro();
00265         } // end while
00266     } else {
00267         _depura("no hay albaranes con esta referencia", 2);
00268     } // end if
00269     delete cur;
00270     _depura("END FacturaView::on_mui_veralbaranes_clicked", 0);
00271 }

void FacturaView::on_mui_idcliente_valueChanged ( QString  id  )  [virtual, slot]

Parameters:
id 

Definition at line 278 of file facturaview.cpp.

References _depura(), Ui_FacturaBase::mui_idforma_pago, BusquedaFormaPago::setIdCliente(), SubForm2Bf::setIdCliente(), and Ui_FacturaBase::subform2.

00278                                                           {
00279     _depura("FacturaView::on_m_cliente_valueChanged", 0);
00280     subform2->setIdCliente(id);
00281     mui_idforma_pago->setIdCliente(id);
00282     _depura("END FacturaView::on_m_cliente_valueChanged", 0);
00283 }


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