ArticuloView Class Reference

#include <articuloview.h>

Inheritance diagram for ArticuloView:

FichaBf Ui_ArticuloBase Ficha BLWidget DBRecord dialogChanges QWidget PEmpresaBase

Public Slots

virtual void on_mui_codigocompletoarticulo_editingFinished ()
virtual void on_mui_cambiarimagen_clicked ()

Public Member Functions

 ArticuloView (Company *emp, QWidget *parent=0)
 ~ArticuloView ()
virtual void pintarPost ()
virtual int cargarPost (QString)
virtual int guardarPost ()
virtual int borrarPre ()

Private Attributes

QString m_archivoimagen
cursor2m_cursorcombo

Detailed Description

Esta clase controla la ventana de un articulo. Deriva de la clase Ficha para el control de la ventana y de la clase Articulo para el control con la base de datos.

Definition at line 37 of file articuloview.h.


Constructor & Destructor Documentation

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

Parameters:
comp 
parent 
Returns:

Disparamos los plugins.

Inicializamos para que no se queden sin ser pintada.

Definition at line 50 of file articuloview.cpp.

References _depura(), DBRecord::addDBCampo(), DBCampo::DBboolean, DBCampo::DBint, DBCampo::DBNoSave, DBCampo::DBNothing, DBCampo::DBNotNull, DBCampo::DBnumeric, DBCampo::DBPrimaryKey, DBCampo::DBvarchar, dialogChanges::dialogChanges_cargaInicial(), dialogChanges::dialogChanges_setQObjectExcluido(), FALSE, g_plugins, Plugins::lanza(), m_archivoimagen, Ui_ArticuloBase::m_componentes, Ui_ArticuloBase::m_imagen, mensajeInfo(), Ficha::meteWindow(), Ui_ArticuloBase::mui_idfamilia, Ui_ArticuloBase::mui_idtipo_iva, Ui_ArticuloBase::mui_idtipoarticulo, Ui_SubForm3Base::mui_list, DBRecord::setDBCampoId(), Ficha::setDBTableName(), SubForm2Bf::setEmpresaBase(), PEmpresaBase::setEmpresaBase(), Ficha::setTitleName(), Ui_ArticuloBase::setupUi(), and BusquedaTipoIva::setValorCampo().

00051         : FichaBf(comp, parent) {
00052     _depura("ArticuloView::ArticuloView", 0);
00053     setAttribute(Qt::WA_DeleteOnClose);
00054     try {
00055         setupUi(this);
00056 
00057         setTitleName(tr("Articulo"));
00058         setDBTableName("articulo");
00059         setDBCampoId("idarticulo");
00060         addDBCampo("idarticulo", DBCampo::DBint, DBCampo::DBPrimaryKey, QApplication::translate("Articulo", "Identificador"));
00061         addDBCampo("codarticulo", DBCampo::DBvarchar, DBCampo::DBNotNull, QApplication::translate("Articulo", "Codigo"));
00062         addDBCampo("nomarticulo", DBCampo::DBvarchar, DBCampo::DBNotNull, QApplication::translate("Articulo", "Nombre del articulo"));
00063         addDBCampo("abrevarticulo", DBCampo::DBvarchar, DBCampo::DBNothing, QApplication::translate("Articulo", "Abreviacion"));
00064         addDBCampo("obserarticulo", DBCampo::DBvarchar, DBCampo::DBNothing, QApplication::translate("Articulo", "Observaciones"));
00065         addDBCampo("presentablearticulo", DBCampo::DBboolean, DBCampo::DBNothing, QApplication::translate("Articulo", "Incluir en presentaciones"));
00066         addDBCampo("controlstockarticulo", DBCampo::DBboolean, DBCampo::DBNothing, QApplication::translate("Articulo", "Incluir en control de stock"));
00067         addDBCampo("idtipo_articulo", DBCampo::DBint, DBCampo::DBNothing, QApplication::translate("Articulo", "Tipo de articulo"));
00068         addDBCampo("idtipo_iva", DBCampo::DBint, DBCampo::DBNothing, QApplication::translate("Articulo", "Tipo de I.V.A."));
00069         addDBCampo("codigocompletoarticulo", DBCampo::DBvarchar, DBCampo::DBNoSave, QApplication::translate("Articulo", "Codigo completo"));
00070         addDBCampo("idfamilia", DBCampo::DBint, DBCampo::DBNotNull, QApplication::translate("Articulo", "Familia"));
00071         addDBCampo("stockarticulo", DBCampo::DBint, DBCampo::DBNothing, QApplication::translate("Articulo", "Stock"));
00072         addDBCampo("inactivoarticulo", DBCampo::DBboolean, DBCampo::DBNothing, QApplication::translate("Articulo", "Inactivo"));
00073         addDBCampo("pvparticulo", DBCampo::DBnumeric, DBCampo::DBNotNull, QApplication::translate("Articulo", "P.V.P. base"));
00074         addDBCampo("pesoundarticulo", DBCampo::DBnumeric, DBCampo::DBNotNull, QApplication::translate("Articulo", "Peso Unidad"));
00075         addDBCampo("volumenundarticulo", DBCampo::DBnumeric, DBCampo::DBNotNull, QApplication::translate("Articulo", "Volumen Unidad"));
00076 
00078         int res = g_plugins->lanza("ArticuloView_ArticuloView", this);
00079         if (res != 0) {
00080             return;
00081         } // end if
00082 
00083         mui_idfamilia->setEmpresaBase(comp);
00084         mui_idtipoarticulo->setEmpresaBase(comp);
00085         mui_idtipo_iva->setEmpresaBase(comp);
00086         m_componentes->setEmpresaBase(comp);
00087 
00089         mui_idtipo_iva->setValorCampo("0");
00090 
00091         dialogChanges_setQObjectExcluido(m_componentes);
00092         dialogChanges_setQObjectExcluido(m_componentes->mui_list);
00093         m_archivoimagen = "";
00094         m_imagen->setPixmap(QPixmap("/usr/share/bulmages/logopeq.png"));
00095         meteWindow(windowTitle(), this, FALSE);
00096         dialogChanges_cargaInicial();
00097     } catch (...) {
00098         mensajeInfo(tr("Error al crear el articulo"));
00099     } // end try
00100     _depura("END ArticuloView::ArticuloView", 0);
00101 }

ArticuloView::~ArticuloView (  ) 

Definition at line 107 of file articuloview.cpp.

References _depura().

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


Member Function Documentation

void ArticuloView::pintarPost (  )  [virtual]

Returns:

Reimplemented from Ficha.

Definition at line 118 of file articuloview.cpp.

References _depura(), CONF_DIR_IMG_ARTICLES, confpr, Ui_ArticuloBase::m_imagen, Ui_ArticuloBase::mui_codigocompletoarticulo, and configuracion::valor().

00118                               {
00119     _depura("ArticuloView::pintar", 0);
00120     m_imagen->setPixmap(QPixmap(confpr->valor(CONF_DIR_IMG_ARTICLES) + mui_codigocompletoarticulo->text() + ".jpg"));
00121     _depura("END ArticuloView::pintar", 0);
00122 }

int ArticuloView::cargarPost ( QString  idarticulo  )  [virtual]

Parameters:
idarticulo 
Returns:

Disparamos los plugins.

Cargamos los componentes.

Reimplemented from Ficha.

Definition at line 132 of file articuloview.cpp.

References _depura(), ListCompArticuloView::cargar(), g_plugins, Plugins::lanza(), and Ui_ArticuloBase::m_componentes.

00132                                                {
00133     _depura("ArticuloView::cargar", 0);
00134 
00136     int res = g_plugins->lanza("ArticuloView_cargar", this);
00137     if (res != 0) {
00138         return 0;
00139     } // end if
00140 
00142     m_componentes->cargar(idarticulo);
00143 
00144     _depura("END ArticuloView::cargar", 0);
00145     return 0;
00146 }

int ArticuloView::guardarPost (  )  [virtual]

Returns:

Guardamos la imagen, si es que existe.

Guardamos la lista de componentes.

Disparamos los plugins

Reimplemented from Ficha.

Definition at line 182 of file articuloview.cpp.

References _depura(), postgresiface2::cargacursor(), CONF_DIR_IMG_ARTICLES, confpr, DBRecord::DBvalue(), FichaBf::empresaBase(), g_plugins, SubForm3::guardar(), Plugins::lanza(), m_archivoimagen, Ui_ArticuloBase::m_componentes, SubForm3::setColumnValue(), cursor2::valor(), and configuracion::valor().

00182                               {
00183     _depura("ArticuloView::guardarPost", 0);
00185     if (m_archivoimagen != "") {
00186         cursor2 *cur1 = empresaBase()->cargacursor("SELECT codigocompletoarticulo FROM articulo WHERE idarticulo = " + DBvalue("idarticulo"));
00187         if (!cur1) throw -1;
00188         QString cadena = "cp " + m_archivoimagen + " " + confpr->valor(CONF_DIR_IMG_ARTICLES) + cur1->valor("codigocompletoarticulo") + ".jpg";
00189         delete cur1;
00190         system(cadena.toAscii().constData());
00191     } // end if
00192 
00194     m_componentes->setColumnValue("idarticulo", DBvalue("idarticulo"));
00195     if (m_componentes->guardar() != 0) {
00196         throw -1;
00197     } // end if
00199     g_plugins->lanza("ArticuloView_guardar_post", this);
00200 
00201     _depura("END ArticuloView::guardarPost", 0);
00202     return 0;
00203 
00204 }

int ArticuloView::borrarPre (  )  [virtual]

Returns:

Reimplemented from Ficha.

Definition at line 219 of file articuloview.cpp.

References _depura(), SubForm3::borrar(), and Ui_ArticuloBase::m_componentes.

00219                             {
00220     _depura ("ArticuloView::borrar", 0);
00221     m_componentes->borrar();
00222     _depura("END ArticuloView::borrar", 0);
00223     return 0;
00224 }

void ArticuloView::on_mui_codigocompletoarticulo_editingFinished (  )  [virtual, slot]

Returns:

Definition at line 156 of file articuloview.cpp.

References _depura(), postgresiface2::cargacursor(), Ficha::cargar(), DBRecord::DBvalue(), FichaBf::empresaBase(), cursor2::eof(), Ui_ArticuloBase::mui_codigocompletoarticulo, and cursor2::valor().

00156                                                                  {
00157     _depura("ArticuloView::on_m_codigocompletoarticulo_editingFinished", 0);
00158 
00159     if (mui_codigocompletoarticulo->text() == DBvalue("codigocompletoarticulo")) {
00160         return;
00161     } // end if
00162     QString SQlQuery = "SELECT * FROM articulo WHERE codigocompletoarticulo = '" + mui_codigocompletoarticulo->text() + "'";
00163     cursor2 *cur = empresaBase()->cargacursor(SQlQuery);
00164     if (!cur) return;
00165     if (!cur->eof()) {
00166         cargar(cur->valor("idarticulo"));
00167     } // end if
00168     delete cur;
00169     _depura("END ArticuloView::on_m_codigocompletoarticulo_editingFinished", 0);
00170 }

void ArticuloView::on_mui_cambiarimagen_clicked (  )  [virtual, slot]

Definition at line 233 of file articuloview.cpp.

References _depura(), m_archivoimagen, and Ui_ArticuloBase::m_imagen.

00233                                                 {
00234     _depura("ArticuloView::INIT_s_cambiarimagen()", 0);
00235     m_archivoimagen = QFileDialog::getOpenFileName(
00236                           this,
00237                           tr("Abrir ventana de archivo"),
00238                           "",
00239                           tr("Imagenes (*.jpg)"));
00240 
00241     m_imagen->setPixmap(QPixmap(m_archivoimagen));
00242     _depura("ArticuloView::END_s_cambiarimagen()", 0);
00243 }


Field Documentation

QString ArticuloView::m_archivoimagen [private]

La imagen de un articulo es una excepcion ya que no se guarda en la base de datos por ese motivo la almacenamos en esta variable que hace que corresponda con un archivo.

Definition at line 43 of file articuloview.h.

Referenced by ArticuloView(), guardarPost(), and on_mui_cambiarimagen_clicked().

cursor2* ArticuloView::m_cursorcombo [private]

Definition at line 44 of file articuloview.h.


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