fpagoview Class Reference

La clase fpagoview se encarga de la gestión de formas de pago. More...

#include <fpagoview.h>

Inheritance diagram for fpagoview:

FichaBc Ui_FPagoBase Ficha BLWidget DBRecord dialogChanges QWidget PEmpresaBase

Public Member Functions

 fpagoview (Empresa *, QWidget *parent=0)
 ~fpagoview ()
virtual int guardar ()
 Guarda los datos de la ficha en la base de datos.
virtual void on_mui_borrar_clicked ()
 SLOT que responde a la pulsación del botón de borrar un tipo de IVA.

Private Slots

virtual void on_mui_crear_clicked ()
virtual void on_mui_comboFPago_currentIndexChanged (int i)

Private Member Functions

void pintar (QString idtipoiva="")
void mostrarplantilla (int pos=0)
 Esta función muestra la forma de pago en la ventana.
void cambiacombo (int)
 Esta función sirve para hacer el cambio sobre un centro de coste.

Private Attributes

cursor2m_curfpago
int m_posactual

Detailed Description

La clase fpagoview se encarga de la gestión de formas de pago.

Las formas de pago son unas plantillas que se usan para determinar las formas en que se pagan o se cobran las facturas emitidas o recibidas.

Definition at line 37 of file fpagoview.h.


Constructor & Destructor Documentation

fpagoview::fpagoview ( Empresa emp,
QWidget parent = 0 
)

Parameters:
emp 
parent 

Establecemos cual es la tabla en la que basarse para los permisos

Definition at line 31 of file fpagoview.cpp.

References _depura(), dialogChanges::dialogChanges_cargaInicial(), dialogChanges::dialogChanges_setQObjectExcluido(), m_curfpago, EmpresaBase::meteWindow(), Ui_FPagoBase::mui_comboFPago, Ficha::pintar(), Ficha::setDBTableName(), Ficha::setTitleName(), and Ui_FPagoBase::setupUi().

00032         : FichaBc(emp, parent) {
00033     _depura("fpagoview::fpagoview", 0);
00034 
00035     setTitleName(tr("Forma de Pago"));
00037     setDBTableName("fpago");
00038 
00039     this->setAttribute(Qt::WA_DeleteOnClose);
00040     setupUi(this);
00041     m_curfpago = NULL;
00042 
00043     dialogChanges_setQObjectExcluido(mui_comboFPago);
00044 
00045     pintar();
00046     dialogChanges_cargaInicial();
00047     emp->meteWindow(windowTitle(), this);
00048 
00049     _depura("END fpagoview::fpagoview", 0);
00050 }

* fpagoview::~fpagoview (  ) 

Definition at line 57 of file fpagoview.cpp.

References _depura(), m_curfpago, Ficha::on_mui_guardar_clicked(), and Ficha::sacaWindow().

00057                       {
00058     _depura("fpagoview::~fpagoview", 0);
00059     on_mui_guardar_clicked();
00060     if (m_curfpago != NULL) {
00061         delete m_curfpago;
00062     } 
00063     sacaWindow();
00064     _depura("END fpagoview::~fpagoview", 0);
00065 }


Member Function Documentation

*void fpagoview::pintar ( QString  idfpago = ""  )  [private]

Parameters:
idfpago 

Vamos a inicializar el combo de los tipos de IVA.

Definition at line 84 of file fpagoview.cpp.

References _depura(), postgresiface2::cargacursor(), FichaBc::empresaBase(), cursor2::eof(), FALSE, m_curfpago, mostrarplantilla(), Ui_FPagoBase::mui_comboFPago, Ui_FPagoBase::mui_nombreFPago, Ui_FPagoBase::mui_numeroPlazos, Ui_FPagoBase::mui_plazoEntreRecibos, Ui_FPagoBase::mui_plazoPrimerPago, Ui_FPagoBase::mui_tipoPlazoEntreRecibos, Ui_FPagoBase::mui_tipoPlazoPrimerPago, cursor2::siguienteregistro(), TRUE, and cursor2::valor().

00084                                       {
00085     _depura("fpagoview::pintar", 0);
00086     int posicion = 0;
00088     if (m_curfpago != NULL)
00089         delete m_curfpago;
00090     QString query = "SELECT * from fpago ORDER BY nomfpago";
00091     m_curfpago = empresaBase()->cargacursor(query);
00092     mui_comboFPago->clear();
00093     int i = 0;
00094     while (!m_curfpago->eof()) {
00095         mui_comboFPago->insertItem(i, m_curfpago->valor("nomfpago"));
00096         if (idfpago == m_curfpago->valor("idfpago"))
00097             posicion = i;
00098         m_curfpago->siguienteregistro();
00099         i++;
00100     } // end while
00101 
00102     if (mui_comboFPago->currentIndex() == -1) {
00103         mui_nombreFPago->setEnabled(FALSE);
00104         mui_plazoPrimerPago->setEnabled(FALSE);
00105         mui_numeroPlazos->setEnabled(FALSE);
00106         mui_tipoPlazoPrimerPago->setEnabled(FALSE);
00107         mui_plazoEntreRecibos->setEnabled(FALSE);
00108         mui_tipoPlazoEntreRecibos->setEnabled(FALSE);
00109 
00110         mui_nombreFPago->setText("");
00111         mui_plazoPrimerPago->setText("");
00112         mui_numeroPlazos->setText("");
00113         mui_tipoPlazoPrimerPago->setText("");
00114         mui_plazoEntreRecibos->setText("");
00115         mui_tipoPlazoEntreRecibos->setText("");
00116     } else {
00117         mui_nombreFPago->setEnabled(TRUE);
00118         mui_plazoPrimerPago->setEnabled(TRUE);
00119         mui_numeroPlazos->setEnabled(TRUE);
00120         mui_tipoPlazoPrimerPago->setEnabled(TRUE);
00121         mui_plazoEntreRecibos->setEnabled(TRUE);
00122         mui_tipoPlazoEntreRecibos->setEnabled(TRUE);
00123 
00124         mostrarplantilla(posicion);
00125     } // end if
00126     _depura("END fpagoview::pintar", 0);
00127 }

void fpagoview::mostrarplantilla ( int  pos = 0  )  [private]

Esta función muestra la forma de pago en la ventana.

Parameters:
pos 

Si se ha modificado el contenido advertimos y guardamos.

Comprobamos cual es la cadena inicial.

Definition at line 136 of file fpagoview.cpp.

References _depura(), dialogChanges::dialogChanges_cargaInicial(), dialogChanges::dialogChanges_hayCambios(), m_curfpago, m_posactual, Ui_FPagoBase::mui_comboFPago, Ui_FPagoBase::mui_nombreFPago, Ui_FPagoBase::mui_numeroPlazos, Ui_FPagoBase::mui_plazoEntreRecibos, Ui_FPagoBase::mui_plazoPrimerPago, Ui_FPagoBase::mui_tipoPlazoEntreRecibos, Ui_FPagoBase::mui_tipoPlazoPrimerPago, Ficha::on_mui_guardar_clicked(), and cursor2::valor().

Referenced by cambiacombo(), and pintar().

00136                                         {
00137     _depura("fpagoview::mostrarplantilla", 0);
00139     if (dialogChanges_hayCambios()) {
00140         if (QMessageBox::warning(this,
00141                                  tr("Guardar forma de pago"),
00142                                  tr("Desea guardar los cambios?"),
00143                                  QMessageBox::Ok, QMessageBox::Cancel) == QMessageBox::Ok)
00144             on_mui_guardar_clicked();
00145     } // end if
00146     if (mui_comboFPago->count() > 0) {
00147         if (pos != 0) {
00148             mui_comboFPago->setCurrentIndex(pos);
00149         } // end if
00150         m_posactual = mui_comboFPago->currentIndex();
00151         mui_nombreFPago->setText(m_curfpago->valor("nomfpago", m_posactual));
00152         mui_plazoPrimerPago->setText(m_curfpago->valor("plazoprimerpagofpago", m_posactual));
00153         mui_numeroPlazos->setText(m_curfpago->valor("nplazosfpago", m_posactual));
00154         mui_tipoPlazoPrimerPago->setText(m_curfpago->valor("tipoplazoprimerpagofpago", m_posactual));
00155         mui_plazoEntreRecibos->setText(m_curfpago->valor("plazoentrerecibofpago", m_posactual));
00156         mui_tipoPlazoEntreRecibos->setText(m_curfpago->valor("tipoplazoentrerecibofpago", m_posactual));
00158         dialogChanges_cargaInicial();
00159     } // end if
00160     _depura("END fpagoview::mostrarplantilla", 0);
00161 }

void fpagoview::cambiacombo ( int   )  [private]

Esta función sirve para hacer el cambio sobre un centro de coste.

Definition at line 167 of file fpagoview.cpp.

References _depura(), and mostrarplantilla().

Referenced by on_mui_comboFPago_currentIndexChanged().

00167                                {
00168     _depura("fpagoview::cambiacombo", 0);
00169     mostrarplantilla();
00170     _depura("END fpagoview::cambiacombo", 0);
00171 }

int fpagoview::guardar (  )  [virtual]

Guarda los datos de la ficha en la base de datos.

Este metodo guarda los contenidos de la Ficha (siempre que esta haya sido inicializada). Luego llama a plugins y a guardarPost por si se quieren hacer acciones adicionales de guardado. Tras guardar todos los elementos hace una carga.

Returns:
0 Si no hay problemas. -1 Si ha habido problemas.

Lanzamos los plugins.

Hacemos una carga para que se actualizen datos como la referencia.

Reimplemented from Ficha.

Definition at line 179 of file fpagoview.cpp.

References _depura(), dialogChanges::dialogChanges_cargaInicial(), postgresiface2::ejecuta(), FichaBc::empresaBase(), m_curfpago, m_posactual, Ui_FPagoBase::mui_nombreFPago, Ui_FPagoBase::mui_numeroPlazos, Ui_FPagoBase::mui_plazoEntreRecibos, Ui_FPagoBase::mui_plazoPrimerPago, Ficha::pintar(), and cursor2::valor().

00179                        {
00180     _depura("fpagoview::on_mui_guardarFPago_clicked", 0);
00181     QString idfpago = m_curfpago->valor("idfpago", m_posactual);
00182     QString query = "UPDATE fpago SET nomfpago = '" + mui_nombreFPago->text() + "', nplazosfpago = " + mui_numeroPlazos->text() + " , plazoprimerpagofpago = " + mui_plazoPrimerPago->text() + ", plazoentrerecibofpago = " + mui_plazoEntreRecibos->text() + " WHERE idfpago = " + m_curfpago->valor("idfpago", m_posactual);
00183     empresaBase()->ejecuta(query);
00184     dialogChanges_cargaInicial();
00185     pintar(m_curfpago->valor("idfpago", m_posactual));
00186     _depura("END fpagoview::on_mui_guardarFPago_clicked", 0);
00187     return 0;
00188 }

void fpagoview::on_mui_borrar_clicked (  )  [virtual]

SLOT que responde a la pulsación del botón de borrar un tipo de IVA.

Returns:

Retry clicked or Enter pressed.

Abort clicked or Escape pressed.

Reimplemented from Ficha.

Definition at line 226 of file fpagoview.cpp.

References _depura(), postgresiface2::ejecuta(), FichaBc::empresaBase(), m_curfpago, mensajeInfo(), Ui_FPagoBase::mui_comboFPago, Ficha::pintar(), and cursor2::valor().

00226                                       {
00227     _depura("fpagoview::borrar", 0);
00228     if (mui_comboFPago->currentIndex() == -1) {
00229         mensajeInfo(tr("Tiene que seleccionar una forma de pago antes de borrarla"));
00230         return;
00231     } else {
00232         switch (QMessageBox::warning(this,
00233                                      tr("Borrar forma de pago"),
00234                                      tr("Se va a borrar la forma de pago.\nEsto puede ocasionar perdida de datos.\n"),
00235                                      QMessageBox::Ok, QMessageBox::Cancel)) {
00236         case QMessageBox::Ok: 
00237             empresaBase()->ejecuta("DELETE FROM fpago WHERE idfpago = " + m_curfpago->valor("idfpago", mui_comboFPago->currentIndex()));
00238             pintar();
00239             break;
00240         case QMessageBox::Cancel: 
00241             break;
00242         } // end switch
00243     } // end if
00244     return;
00245     _depura("END fpagoview::borrar", 0);
00246 }

void fpagoview::on_mui_crear_clicked (  )  [private, virtual, slot]

Definition at line 195 of file fpagoview.cpp.

References _depura(), postgresiface2::begin(), postgresiface2::cargacursor(), postgresiface2::commit(), dialogChanges::dialogChanges_hayCambios(), postgresiface2::ejecuta(), FichaBc::empresaBase(), Ficha::on_mui_guardar_clicked(), Ficha::pintar(), postgresiface2::rollback(), and cursor2::valor().

00195                                      {
00196     _depura("fpagoview::crear", 0);
00198     if (dialogChanges_hayCambios()) {
00199         if (QMessageBox::warning(this,
00200                                  tr("Guardar forma de pago"),
00201                                  tr("Desea guardar los cambios?"),
00202                                  QMessageBox::Ok, QMessageBox::Cancel) == QMessageBox::Ok)
00203             on_mui_guardar_clicked();
00204     } // end if
00205     try {
00206         QString query = "INSERT INTO fpago (nomfpago, nplazosfpago, plazoprimerpagofpago, plazoentrerecibofpago) VALUES ('" + tr("Nueva forma de pago") + "', 0, 0, 0)";
00207         empresaBase()->begin();
00208         empresaBase()->ejecuta(query);
00209         cursor2 *cur = empresaBase()->cargacursor("SELECT max(idfpago) AS idfpago FROM fpago");
00210         empresaBase()->commit();
00211         pintar(cur->valor("idfpago"));
00212         delete cur;
00213     } catch (...) {
00214         empresaBase()->rollback();
00215         return;
00216     } // end try
00217     _depura("END fpagoview::crear", 0);
00218 }

void fpagoview::on_mui_comboFPago_currentIndexChanged ( int  i  )  [private, virtual, slot]

Parameters:
i 

Definition at line 72 of file fpagoview.cpp.

References _depura(), and cambiacombo().

00072                                                            {
00073     _depura("fpagoview::on_mui_comboFPago_currentIndexChanged", 0);
00074     cambiacombo(i);
00075     _depura("END fpagoview::on_mui_comboFPago_currentIndexChanged", 0);
00076 }


Field Documentation

cursor2* fpagoview::m_curfpago [private]

Definition at line 41 of file fpagoview.h.

Referenced by fpagoview(), guardar(), mostrarplantilla(), on_mui_borrar_clicked(), pintar(), and ~fpagoview().

int fpagoview::m_posactual [private]

Indica la posición en el combobox que está seleccionada. Se usa para guardar en caso de modificaciones.

Definition at line 44 of file fpagoview.h.

Referenced by guardar(), and mostrarplantilla().


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