PaisView Class Reference

Visualiza un centro de coste. More...

#include <paisview.h>

Inheritance diagram for PaisView:

Ficha Ui_paisbase BLWidget DBRecord dialogChanges QWidget PEmpresaBase

Public Slots

virtual void on_mui_crear_clicked ()
virtual void on_mui_list_itemClicked (QTableWidgetItem *item)

Public Member Functions

 PaisView (EmpresaBase *, QWidget *parent=0)
 Si su valor es 0 entonces es que no se esta visualizando ningún centro de coste.
 ~PaisView ()
void pintar ()
void mostrarplantilla ()
virtual void on_mui_borrar_clicked ()
virtual int guardar ()
 Guarda los datos de la ficha en la base de datos.

Data Fields

QString m_idpais

Detailed Description

Visualiza un centro de coste.

Definition at line 40 of file paisview.h.


Constructor & Destructor Documentation

PaisView::PaisView ( EmpresaBase ,
QWidget parent = 0 
)

Si su valor es 0 entonces es que no se esta visualizando ningún centro de coste.

Indica cual es el pais que se esta visualizando.

Preparamos la lista de paises.

Preparamos la lista de provincias.

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

Definition at line 31 of file paisview.cpp.

References _depura(), DBRecord::addDBCampo(), SubForm3::addSHeader(), DBCampo::DBint, SHeader::DBNone, DBCampo::DBNoSave, DBCampo::DBNothing, DBCampo::DBNotNull, SHeader::DBNoView, SHeader::DBNoWrite, DBCampo::DBPrimaryKey, DBCampo::DBvarchar, dialogChanges::dialogChanges_cargaInicial(), FALSE, m_idpais, Ficha::meteWindow(), Ui_paisbase::mui_datospais, Ui_paisbase::mui_list, Ui_paisbase::mui_listprovincias, pintar(), DBRecord::setDBCampoId(), SubForm3::setDBCampoId(), Ficha::setDBTableName(), SubForm3::setDBTableName(), SubForm3::setDelete(), SubForm3::setEmpresaBase(), SubForm3::setinsercion(), SubForm3::setSortingEnabled(), Ficha::setTitleName(), Ui_paisbase::setupUi(), and TRUE.

00032         : Ficha(emp, parent) {
00033     _depura("PaisView::PaisView", 0);
00034 
00035     setAttribute(Qt::WA_DeleteOnClose);
00036     setupUi(this);
00037 
00038     mui_datospais->setDisabled(TRUE);
00039 
00040     mui_list->setEmpresaBase(emp);
00041     mui_listprovincias->setEmpresaBase(emp);
00042 
00044     mui_list->setDBTableName("pais");
00045     mui_list->setDBCampoId("idpais");
00046     mui_list->addSHeader("idpais", DBCampo::DBint, DBCampo::DBNotNull | DBCampo::DBPrimaryKey, SHeader::DBNoView | SHeader::DBNoWrite, tr("Id. Pais"));
00047     mui_list->addSHeader("descpais", DBCampo::DBvarchar, DBCampo::DBNoSave, SHeader::DBNone | SHeader::DBNoWrite, tr("Nombre Pais"));
00048     mui_list->addSHeader("cod2pais", DBCampo::DBvarchar, DBCampo::DBNoSave, SHeader::DBNone | SHeader::DBNoWrite, tr("Codigo 2 Digitos"));
00049     mui_list->addSHeader("cod3pais", DBCampo::DBint, DBCampo::DBNoSave, SHeader::DBNone | SHeader::DBNoWrite, tr("Codigo 3 Digitos"));
00050     mui_list->setinsercion(FALSE);
00051     mui_list->setDelete(FALSE);
00052     mui_list->setSortingEnabled(TRUE);
00053 
00055     mui_listprovincias->setDBTableName("provincia");
00056     mui_listprovincias->setDBCampoId("idprovincia");
00057     mui_listprovincias->addSHeader("idprovincia", DBCampo::DBint, DBCampo::DBPrimaryKey, SHeader::DBNoView | SHeader::DBNoWrite, tr("Id. Provincia"));
00058     mui_listprovincias->addSHeader("idpais", DBCampo::DBint, DBCampo::DBNotNull , SHeader::DBNoView | SHeader::DBNoWrite, tr("Id. Pais"));
00059     mui_listprovincias->addSHeader("provincia", DBCampo::DBvarchar, DBCampo::DBNotNull, SHeader::DBNone, tr("Provincia"));
00060     mui_listprovincias->setinsercion(TRUE);
00061     mui_listprovincias->setDelete(TRUE);
00062     mui_listprovincias->setSortingEnabled(FALSE);
00063 
00065     setTitleName(tr("Pais"));
00066     setDBTableName("pais");
00067     setDBCampoId("idpais");
00068     addDBCampo("idpais", DBCampo::DBint, DBCampo::DBPrimaryKey, tr("idpais"));
00069     addDBCampo("descpais", DBCampo::DBvarchar, DBCampo::DBNothing, tr("Pais"));
00070     addDBCampo("cod2pais", DBCampo::DBvarchar, DBCampo::DBNothing, tr("Codigo 2 digitos"));
00071     addDBCampo("cod3pais", DBCampo::DBvarchar, DBCampo::DBNothing,tr("Codigo 3 digitos"));
00072 
00073 
00074     m_idpais = "0";
00075 
00076     meteWindow(windowTitle(), this);
00077     pintar();
00078     dialogChanges_cargaInicial();
00079     _depura("END PaisView::PaisView", 0);
00080 }

PaisView::~PaisView (  ) 

Definition at line 86 of file paisview.cpp.

References _depura().

00086                     {
00087     _depura("PaisView::~PaisView", 0);
00088     _depura("END PaisView::~PaisView", 0);
00089 }


Member Function Documentation

void PaisView::pintar (  )  [virtual]

Reimplemented from Ficha.

Definition at line 95 of file paisview.cpp.

References _depura(), and Ui_paisbase::mui_list.

Referenced by guardar(), on_mui_borrar_clicked(), on_mui_crear_clicked(), and PaisView().

00095                       {
00096     _depura("PaisView::pintar", 10);
00097     mui_list->cargar("SELECT * FROM pais ORDER BY descpais");
00098     _depura("END PaisView::pintar", 0);
00099 }

void PaisView::mostrarplantilla (  ) 

Definition at line 127 of file paisview.cpp.

References _depura(), SubForm3::cargar(), Ficha::cargar(), DBRecord::DBvalue(), dialogChanges::dialogChanges_cargaInicial(), m_idpais, Ui_paisbase::mui_cod2pais, Ui_paisbase::mui_cod3pais, Ui_paisbase::mui_datospais, Ui_paisbase::mui_descpais, Ui_paisbase::mui_listprovincias, and TRUE.

Referenced by on_mui_crear_clicked(), and on_mui_list_itemClicked().

00127                                 {
00128     _depura("PaisView::mostrarplantilla", 0);
00129 
00130     if (m_idpais != "0") {
00131         mui_datospais->setEnabled(TRUE);
00132         cargar(m_idpais);
00133         mui_descpais->setText(DBvalue("descpais"));
00134         mui_cod2pais->setText(DBvalue("cod2pais"));
00135         mui_cod3pais->setText(DBvalue("cod3pais"));
00136 
00137         mui_listprovincias->cargar("SELECT * FROM provincia WHERE idpais=" + m_idpais);
00138 
00139         dialogChanges_cargaInicial();
00140     } // end if
00141     _depura("END PaisView::mostrarplantilla", 0);
00142 }

void PaisView::on_mui_borrar_clicked (  )  [virtual]

Reimplemented from Ficha.

Definition at line 202 of file paisview.cpp.

References _depura(), postgresiface2::begin(), postgresiface2::commit(), postgresiface2::ejecuta(), PEmpresaBase::empresaBase(), m_idpais, mensajeInfo(), Ui_paisbase::mui_datospais, pintar(), postgresiface2::rollback(), and TRUE.

00202                                      {
00203     _depura("PaisView::on_mui_borrar_clicked", 0);
00204     if (m_idpais == "" | m_idpais == "0" ) {
00205         mensajeInfo(tr("Debe seleccionar un elemento de la lista"));
00206         return;
00207     } // end if
00208     switch (QMessageBox::warning(this,
00209                                  tr("Borrar pais"),
00210                                  tr("Se va a borrar el pais seleccionado.\nEsta operacion puede ocasionar perdida de datos."),
00211                                  tr("&Borrar"), tr("&Cancelar"), 0, 0, 1)) {
00212     case 0: 
00213         QString query;
00214         try {
00215             query = "DELETE FROM pais WHERE idpais = " + m_idpais;
00216             empresaBase()->begin();
00217             empresaBase()->ejecuta(query);
00218             empresaBase()->commit();
00219             m_idpais = "0";
00220             pintar();
00221             mui_datospais->setDisabled(TRUE);
00222         } catch (...) {
00223             mensajeInfo(tr("Error al intentar borrar el pais"));
00224             empresaBase()->rollback();
00225         } // end try
00226     } // end switch
00227     _depura("END PaisView::on_mui_borrar_clicked", 0);
00228 }

int PaisView::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 148 of file paisview.cpp.

References _depura(), postgresiface2::begin(), postgresiface2::commit(), DBRecord::DBsave(), dialogChanges::dialogChanges_cargaInicial(), PEmpresaBase::empresaBase(), SubForm3::guardar(), Ui_paisbase::mui_cod2pais, Ui_paisbase::mui_cod3pais, Ui_paisbase::mui_descpais, Ui_paisbase::mui_listprovincias, pintar(), SubForm3::setColumnValue(), and DBRecord::setDBvalue().

00148                       {
00149     _depura("PaisView::on_mui_guardar_clicked", 0);
00150     QString id;
00151     setDBvalue("descpais", mui_descpais->text());
00152     setDBvalue("cod2pais", mui_cod2pais->text());
00153     setDBvalue("cod3pais", mui_cod3pais->text());
00154     empresaBase()->begin();
00155     DBsave(id);
00156     mui_listprovincias->setColumnValue("idpais", id);
00157     mui_listprovincias->guardar();
00158     empresaBase()->commit();
00159     dialogChanges_cargaInicial();
00160     pintar();
00161     _depura("END PaisView::on_mui_guardar_clicked", 0);
00162     return 0;
00163 }

void PaisView::on_mui_crear_clicked (  )  [virtual, slot]

Definition at line 169 of file paisview.cpp.

References _depura(), postgresiface2::begin(), postgresiface2::commit(), dialogChanges::dialogChanges_hayCambios(), postgresiface2::ejecuta(), PEmpresaBase::empresaBase(), mensajeInfo(), mostrarplantilla(), Ui_paisbase::mui_list, Ficha::on_mui_guardar_clicked(), pintar(), and postgresiface2::rollback().

00169                                     {
00170     _depura("PaisView::on_mui_crear_clicked", 0);
00171     try {
00173         if (dialogChanges_hayCambios()) {
00174             if (QMessageBox::warning(this,
00175                                      tr("Guardar pais"),
00176                                      tr("Desea guardar los cambios?"),
00177                                      QMessageBox::Ok,
00178                                      QMessageBox::Cancel) == QMessageBox::Ok) {
00179                 on_mui_guardar_clicked();
00180             } // end if
00181         } // end if
00182 
00183         QString query;
00184         query.sprintf("INSERT INTO pais (cod2pais, cod3pais, descpais) VALUES ('--', '---', 'Nuevo pais')");
00185         empresaBase()->begin();
00186         empresaBase()->ejecuta(query);
00187         empresaBase()->commit();
00188         pintar();
00189         mui_list->setCurrentItem(mui_list->rowCount(),1);
00190         mostrarplantilla();
00191         _depura("END PaisView::on_mui_crear_clicked", 0);
00192     } catch (...) {
00193         mensajeInfo(tr("Error al crear el banco"));
00194         empresaBase()->rollback();
00195     } // end try
00196 }

void PaisView::on_mui_list_itemClicked ( QTableWidgetItem item  )  [virtual, slot]

Definition at line 105 of file paisview.cpp.

References _depura(), dialogChanges::dialogChanges_hayCambios(), m_idpais, mostrarplantilla(), Ui_paisbase::mui_list, and Ficha::on_mui_guardar_clicked().

00105                                                          {
00106     _depura("PaisView::on_mui_list_itemSelectionChanged", 0);
00108     QString previdpais = mui_list->DBvalue("idpais");
00109 
00110     if (m_idpais != "0" && dialogChanges_hayCambios()) {
00111         if (QMessageBox::warning(this,
00112                                  tr("Guardar pais"),
00113                                  tr("Desea guardar los cambios?"),
00114                                  tr("&Guardar"), tr("&Cancelar"), 0, 0, 1) == 0) {
00115             on_mui_guardar_clicked();
00116         } // end if
00117     } // end if
00118     m_idpais = previdpais;
00119     mostrarplantilla();
00120     _depura("END PaisView::on_mui_list_itemSelectionChanged", 0);
00121 }


Field Documentation

QString PaisView::m_idpais

Definition at line 44 of file paisview.h.

Referenced by mostrarplantilla(), on_mui_borrar_clicked(), on_mui_list_itemClicked(), and PaisView().


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