FamiliasView Class Reference

Muestra y administra la ventana de familias de artículos. More...

#include <familiasview.h>

Inheritance diagram for FamiliasView:

FichaBf Ui_familiasbase Ficha BLWidget DBRecord dialogChanges QWidget PEmpresaBase

Public Slots

virtual void pintar ()
virtual void on_m_listFamilias_itemDoubleClicked (QTreeWidgetItem *)
virtual void on_m_listFamilias_currentItemChanged (QTreeWidgetItem *current, QTreeWidgetItem *previous)
virtual void on_mui_crear_clicked ()

Signals

void selected (QString)

Public Member Functions

 FamiliasView (Company *, QWidget *parent=0, bool modoConsulta=FALSE)
 ~FamiliasView ()
bool trataModificado ()
void mostrarplantilla ()
void setModoConsulta ()
void setModoEdicion ()
QString codigoCompletoFamilia ()
QString idFamilia ()
QString nombreFamilia ()
void pintar (QTreeWidgetItem *)
 Pinta una fila especifica del listado de familias presentado.
virtual int borrar ()
virtual void on_mui_aceptar_clicked ()
virtual void on_mui_borrar_clicked ()
virtual void on_mui_imprimir_clicked ()
virtual int guardar ()

Private Attributes

Companycompanyact
QString m_idfamilia
bool m_modoConsulta
bool m_semaforoPintar
 Este semaforo indica si se esta en el proceso de pintado.

Detailed Description

Muestra y administra la ventana de familias de artículos.

Definition at line 34 of file familiasview.h.


Constructor & Destructor Documentation

FamiliasView::FamiliasView ( Company comp,
QWidget parent = 0,
bool  modoConsulta = FALSE 
)

Parameters:
comp 
parent 
modoConsulta 

Definition at line 45 of file familiasview.cpp.

References _depura(), COL_CODFAMILIA, COL_IDFAMILIA, COL_PRODUCTOFISICOFAMILIA, companyact, FALSE, Ui_familiasbase::groupBox1, m_idfamilia, Ui_familiasbase::m_listFamilias, m_semaforoPintar, EmpresaBase::meteWindow(), Ui_familiasbase::mui_aceptar, Ui_familiasbase::mui_borrar, Ui_familiasbase::mui_cancelar, Ui_familiasbase::mui_crear, Ui_familiasbase::mui_detalles, Ui_familiasbase::mui_guardar, Ui_familiasbase::mui_imprimir, pintar(), setModoConsulta(), setModoEdicion(), Ui_familiasbase::setupUi(), and TRUE.

00046         : FichaBf(comp, parent) {
00047     _depura("FamiliasView::FamiliasView", 0);
00048     setupUi(this);
00049     companyact = comp;
00050     m_listFamilias->setColumnCount(3);
00051     QStringList headers;
00052     headers << tr("Nombre") << tr("Codigo") << tr("Descripcion") << tr("Id familia") << tr("Codigo completo");
00053     m_listFamilias->setHeaderLabels(headers);
00054 
00055     m_listFamilias->setColumnWidth(0, 200);
00056     m_listFamilias->setColumnWidth(1, 100);
00057 
00058     m_listFamilias->setColumnHidden(COL_IDFAMILIA, TRUE);
00059     m_listFamilias->setColumnHidden(COL_CODFAMILIA, TRUE);
00060     m_listFamilias->setColumnHidden(COL_PRODUCTOFISICOFAMILIA, TRUE);
00061 
00062     m_semaforoPintar = FALSE;
00063 
00064     m_idfamilia = "";
00065 
00066     if (modoConsulta) {
00067         setModoConsulta();
00068         groupBox1->hide();
00069         mui_detalles->hide();
00070         mui_crear->hide();
00071         mui_guardar->hide();
00072         mui_borrar->hide();
00073         mui_cancelar->hide();
00074         mui_aceptar->hide();
00075         mui_imprimir->hide();
00076     } else {
00077         setModoEdicion();
00078         setAttribute(Qt::WA_DeleteOnClose);
00079         companyact->meteWindow(windowTitle(), this);
00080     } // end if
00081 
00082     pintar();
00083     _depura("END FamiliasView::FamiliasView", 0);
00084 }

FamiliasView::~FamiliasView (  ) 

Definition at line 90 of file familiasview.cpp.

References _depura().

00090                             {
00091     _depura("FamiliasView::~FamiliasView", 0);
00092     _depura("END FamiliasView::~FamiliasView", 0);
00093 }


Member Function Documentation

bool FamiliasView::trataModificado (  ) 

Returns:

Si se ha modificado el contenido advertimos y guardamos.

Definition at line 275 of file familiasview.cpp.

References dialogChanges::dialogChanges_hayCambios(), FALSE, Ficha::on_mui_guardar_clicked(), and TRUE.

Referenced by on_m_listFamilias_currentItemChanged(), and on_mui_crear_clicked().

00275                                    {
00277     if (dialogChanges_hayCambios()) {
00278         if (QMessageBox::warning(this,
00279                                  tr("Guardar familia"),
00280                                  tr("Desea guardar los cambios?"),
00281                                  QMessageBox::Ok,
00282                                  QMessageBox::Cancel) == QMessageBox::Ok) {
00283             on_mui_guardar_clicked();
00284         } // end if
00285         return (TRUE);
00286     } // end if
00287     return(FALSE);
00288 }

void FamiliasView::mostrarplantilla (  ) 

Definition at line 247 of file familiasview.cpp.

References _depura(), postgresiface2::cargacursor(), companyact, dialogChanges::dialogChanges_cargaInicial(), cursor2::eof(), m_idfamilia, Ui_familiasbase::mui_codCompletoFamilia, Ui_familiasbase::mui_codFamilia, Ui_familiasbase::mui_descFamilia, Ui_familiasbase::mui_nomFamilia, Ui_familiasbase::mui_productofamilia, Ui_familiasbase::mui_serviciofamilia, TRUE, and cursor2::valor().

Referenced by on_m_listFamilias_currentItemChanged().

00247                                     {
00248     _depura("FamiliasView::mostrarplantilla", 0);
00249     QString query;
00250     query= "SELECT * from familia WHERE idfamilia = " + m_idfamilia;
00251     cursor2 *cursorfamilia = companyact->cargacursor(query);
00252     if (!cursorfamilia->eof()) {
00253         mui_nomFamilia->setText(cursorfamilia->valor("nombrefamilia"));
00254         mui_descFamilia->setPlainText(cursorfamilia->valor("descfamilia"));
00255         mui_codCompletoFamilia->setText(cursorfamilia->valor("codigocompletofamilia"));
00256         mui_codFamilia->setText(cursorfamilia->valor("codigofamilia"));
00257 
00258         if (cursorfamilia->valor("productofisicofamilia") == "t") {
00259             mui_productofamilia->setChecked(TRUE);
00260         } else {
00261             mui_serviciofamilia->setChecked(TRUE);
00262         } // end if
00263     } // end if
00264     delete cursorfamilia;
00266     dialogChanges_cargaInicial();
00267     _depura("END FamiliasView::mostrarplantilla", 0);
00268 }

void FamiliasView::setModoConsulta (  ) 

Reimplemented from Ficha.

Definition at line 532 of file familiasview.cpp.

References m_modoConsulta, and TRUE.

Referenced by FamiliasView().

00532                                    {
00533     m_modoConsulta = TRUE;
00534 }

void FamiliasView::setModoEdicion (  ) 

Reimplemented from Ficha.

Definition at line 540 of file familiasview.cpp.

References FALSE, and m_modoConsulta.

Referenced by FamiliasView().

00540                                   {
00541     m_modoConsulta = FALSE;
00542 }

QString FamiliasView::codigoCompletoFamilia (  ) 

Returns:

Definition at line 159 of file familiasview.cpp.

References _depura(), COL_CODCOMPLETOFAMILIA, and Ui_familiasbase::m_listFamilias.

Referenced by BusquedaFamilia::on_mui_buscar_clicked().

00159                                             {
00160     _depura("FamiliasView::codigoCompletoFamilia", 0);
00161     QTreeWidgetItem *it = m_listFamilias->currentItem();
00162     if (it) {
00163         return it->text(COL_CODCOMPLETOFAMILIA);
00164     } // end if
00165     _depura("END FamiliasView::codigoCompletoFamilia", 0);
00166     return "";
00167 }

QString FamiliasView::idFamilia (  ) 

Returns:

Definition at line 174 of file familiasview.cpp.

References _depura(), COL_IDFAMILIA, and Ui_familiasbase::m_listFamilias.

Referenced by BusquedaFamilia::on_mui_buscar_clicked().

00174                                 {
00175     _depura("FamiliasView::idFamilia", 0);
00176     QTreeWidgetItem *it = m_listFamilias->currentItem();
00177     if (it) {
00178         return it->text(COL_IDFAMILIA);
00179     } // end if
00180     _depura("END FamiliasView::idFamilia", 0);
00181     return "";
00182 }

QString FamiliasView::nombreFamilia (  ) 

Returns:

Definition at line 189 of file familiasview.cpp.

References _depura(), COL_NOMFAMILIA, and Ui_familiasbase::m_listFamilias.

Referenced by BusquedaFamilia::on_mui_buscar_clicked().

00189                                     {
00190     _depura("FamiliasView::nombreFamilia", 0);
00191     QTreeWidgetItem *it = m_listFamilias->currentItem();
00192     if (it) {
00193         return it->text(COL_NOMFAMILIA);
00194     } // end if
00195     _depura("END FamiliasView::nombreFamilia", 0);
00196     return "";
00197 }

void FamiliasView::pintar ( QTreeWidgetItem it  ) 

Pinta una fila especifica del listado de familias presentado.

Parameters:
it 

Definition at line 338 of file familiasview.cpp.

References postgresiface2::cargacursor(), COL_CODCOMPLETOFAMILIA, COL_CODFAMILIA, COL_DESCFAMILIA, COL_IDFAMILIA, COL_NOMFAMILIA, COL_PRODUCTOFISICOFAMILIA, companyact, cursor2::eof(), and cursor2::valor().

00338                                              {
00339     QString idfamilia = it->text(COL_IDFAMILIA);
00340     if (it) {
00341         cursor2 *cursoraux1 = companyact->cargacursor("SELECT * FROM familia WHERE idfamilia = " + idfamilia);
00342         if (!cursoraux1->eof()) {
00343             it->setText(COL_NOMFAMILIA, cursoraux1->valor("nombrefamilia"));
00344             it->setText(COL_CODFAMILIA, cursoraux1->valor("codigofamilia"));
00345             it->setText(COL_DESCFAMILIA, cursoraux1->valor("descfamilia"));
00346             it->setText(COL_IDFAMILIA, cursoraux1->valor("idfamilia"));
00347             it->setText(COL_CODCOMPLETOFAMILIA, cursoraux1->valor("codigocompletofamilia"));
00348             it->setText(COL_PRODUCTOFISICOFAMILIA, cursoraux1->valor("productofisicofamilia"));
00349         } // end if
00350         delete cursoraux1;
00351     } // end if
00352 }

int FamiliasView::borrar (  )  [virtual]

Returns:

Reimplemented from Ficha.

Definition at line 420 of file familiasview.cpp.

References _depura(), companyact, dialogChanges::dialogChanges_cargaInicial(), postgresiface2::ejecuta(), m_idfamilia, mensajeInfo(), and pintar().

Referenced by on_mui_borrar_clicked().

00420                          {
00421     _depura("FamiliasView::borrar", 0);
00422     if (m_idfamilia == "") {
00423         mensajeInfo(tr("Debe seleccionar una familia"));
00424         return -1;
00425     } // end if
00426     try {
00427         QString query = "DELETE FROM FAMILIA WHERE idfamilia = " + m_idfamilia;
00428         int error = companyact->ejecuta(query);
00429         if (error) {
00430             throw -1;
00431         } // end if
00432         m_idfamilia = "";
00433         dialogChanges_cargaInicial();
00434         pintar();
00435         _depura("END FamiliasView::borrar", 0);
00436     } catch (...) {
00437         mensajeInfo("Error al borrar la familia");
00438         return -1;
00439     } // end try
00440     return 0;
00441 }

void FamiliasView::on_mui_aceptar_clicked (  )  [virtual]

Reimplemented from Ficha.

Definition at line 516 of file familiasview.cpp.

References _depura(), COL_IDFAMILIA, m_idfamilia, Ui_familiasbase::m_listFamilias, and Ficha::on_mui_aceptar_clicked().

00516                                           {
00517     _depura("FamiliasView::on_mui_aceptar_clicked", 0);
00518     QTreeWidgetItem *it = m_listFamilias->currentItem();
00519     if (it) {
00520         m_idfamilia = it->text(COL_IDFAMILIA);
00521     } else {
00522         m_idfamilia = "";
00523     } // end if
00524     FichaBf::on_mui_aceptar_clicked();
00525     _depura("END FamiliasView::on_mui_aceptar_clicked", 0);
00526 }

void FamiliasView::on_mui_borrar_clicked (  )  [virtual]

Reimplemented from Ficha.

Definition at line 394 of file familiasview.cpp.

References _depura(), borrar(), dialogChanges::dialogChanges_cargaInicial(), and mensajeInfo().

00394                                          {
00395     _depura("FamiliasView::on_mui_borrar_clicked", 0);
00396 
00397     int val = QMessageBox::question(this,
00398                                     tr("Borrar") + " " + windowTitle(),
00399                                     tr("Desea eliminar") + " " + windowTitle(),
00400                                     QMessageBox::Yes,
00401                                     QMessageBox::Cancel | QMessageBox::Escape | QMessageBox::Default);
00402 
00403     if (val == QMessageBox::Yes) {
00404         if (!borrar()) {
00405             dialogChanges_cargaInicial();
00406             _depura(windowTitle() + " " + "borrado satisfactoriamente.", 10);
00407         } else {
00408             mensajeInfo(windowTitle() + tr("No se ha podido borrar"));
00409         } // end if
00410     } // end if
00411     _depura("END FamiliasView::on_mui_borrar_clicked", 0);
00412 }

void FamiliasView::on_mui_imprimir_clicked (  )  [virtual]

Reimplemented from Ficha.

Definition at line 447 of file familiasview.cpp.

References _depura(), postgresiface2::cargacursor(), companyact, CONF_DIR_OPENREPORTS, CONF_DIR_USER, confpr, cursor2::eof(), invocaPDF(), cursor2::siguienteregistro(), cursor2::valor(), and configuracion::valor().

00447                                            {
00448     _depura("FamiliasView::on_mui_imprimir_clicked", 0);
00449 
00450     QString archivo = confpr->valor(CONF_DIR_OPENREPORTS) + "familias.rml";
00451     QString archivod = confpr->valor(CONF_DIR_USER) + "familias.rml";
00452     QString archivologo = confpr->valor(CONF_DIR_OPENREPORTS) + "logo.jpg";
00453 
00455 #ifdef WINDOWS
00456 
00457     archivo = "copy " + archivo + " " + archivod;
00458 #else
00459 
00460     archivo = "cp " + archivo + " " + archivod;
00461 #endif
00462 
00463     system (archivo.toAscii().constData());
00465 #ifdef WINDOWS
00466 
00467     archivologo = "copy "  + archivologo + " " + confpr->valor(CONF_DIR_USER) + "logo.jpg";
00468 #else
00469 
00470     archivologo = "cp " + archivologo + " " + confpr->valor(CONF_DIR_USER) + "logo.jpg";
00471 #endif
00472 
00473     system(archivologo.toAscii().constData());
00474     QFile file;
00475     file.setFileName(archivod);
00476     file.open(QIODevice::ReadOnly);
00477     QTextStream stream(&file);
00478     QString buff = stream.readAll();
00479     file.close();
00480 
00481     QString fitxersortidatxt = "";
00482 
00484     fitxersortidatxt = "<blockTable style=\"tabla\" colWidths=\"3cm, 15cm\" repeatRows=\"1\">";
00485     fitxersortidatxt += "<tr>";
00486     fitxersortidatxt += "        <td>" + tr("Codigo") + "</td>";
00487     fitxersortidatxt += "        <td>" + tr("Nombre") + "</td>";
00488     fitxersortidatxt += "</tr>";
00489 
00490     cursor2 *cur = companyact->cargacursor("SELECT * FROM familia ORDER BY codigocompletofamilia");
00491     while(!cur->eof()) {
00492         fitxersortidatxt += "<tr>";
00493         fitxersortidatxt += "        <td>" + cur->valor("codigocompletofamilia") + "</td>";
00494         fitxersortidatxt += "        <td>" + cur->valor("nombrefamilia") + "</td>";
00495         fitxersortidatxt += "</tr>";
00496         cur->siguienteregistro();
00497     } // end if
00498     delete cur;
00499     fitxersortidatxt += "</blockTable>";
00500 
00501     buff.replace("[story]", fitxersortidatxt);
00502 
00503     if (file.open(QIODevice::WriteOnly)) {
00504         QTextStream stream(&file);
00505         stream << buff;
00506         file.close();
00507     } // end if
00508     invocaPDF("familias");
00509     _depura("END FamiliasView::on_mui_imprimir_clicked", 0);
00510 }

int FamiliasView::guardar (  )  [virtual]

Returns:

Guardamos la informacion de la fila que esta seleccionada para volver a ponerla despues.

Pintamos los datos en el listado.

Reimplemented from Ficha.

Definition at line 296 of file familiasview.cpp.

References _depura(), companyact, dialogChanges::dialogChanges_cargaInicial(), postgresiface2::ejecuta(), m_idfamilia, Ui_familiasbase::m_listFamilias, mensajeInfo(), Ui_familiasbase::mui_codFamilia, Ui_familiasbase::mui_descFamilia, Ui_familiasbase::mui_nomFamilia, Ui_familiasbase::mui_productofamilia, pintar(), postgresiface2::sanearCadena(), and TRUE.

00296                           {
00297     _depura("FamiliasView::guardar", 0);
00298     QString prodfam;
00299     try {
00300         if (m_idfamilia == "") {
00301             mensajeInfo(tr("Debe seleccionar una familia"));
00302             return -1;
00303         } // end if
00304     if (mui_productofamilia->isChecked()) {
00305         prodfam = " TRUE ";
00306     } else {
00307         prodfam = " FALSE ";
00308     } // end if
00309         QString query = "UPDATE familia SET nombrefamilia = '" +
00310                         companyact->sanearCadena(mui_nomFamilia->text()) + "', descfamilia = '" +
00311                         companyact->sanearCadena(mui_descFamilia->toPlainText()) + "' , codigofamilia = '" +
00312                         companyact->sanearCadena(mui_codFamilia->text()) + "', productofisicofamilia= " + prodfam + " WHERE idfamilia =" + m_idfamilia;
00313         int error = companyact->ejecuta(query);
00314         if (error) {
00315             throw -1;
00316         } // end if
00319         QTreeWidgetItem *posicionCursor;
00320         posicionCursor = m_listFamilias->currentItem();
00321         posicionCursor->setSelected(TRUE);
00323         pintar(posicionCursor);
00324         dialogChanges_cargaInicial();
00325         _depura("END FamiliasView::guardar", 0);
00326         return 0;
00327     } catch (...) {
00328         mensajeInfo("Error al guardar la familia");
00329         return -1;
00330     } // end try
00331 }

void FamiliasView::pintar (  )  [virtual, slot]

Reimplemented from Ficha.

Definition at line 99 of file familiasview.cpp.

References _depura(), postgresiface2::cargacursor(), COL_CODCOMPLETOFAMILIA, COL_CODFAMILIA, COL_DESCFAMILIA, COL_IDFAMILIA, COL_NOMFAMILIA, COL_PRODUCTOFISICOFAMILIA, companyact, dialogChanges::dialogChanges_cargaInicial(), cursor2::eof(), FALSE, m_idfamilia, Ui_familiasbase::m_listFamilias, m_semaforoPintar, cursor2::siguienteregistro(), TRUE, and cursor2::valor().

Referenced by borrar(), FamiliasView(), guardar(), on_m_listFamilias_currentItemChanged(), and on_mui_crear_clicked().

00099                           {
00100     _depura("FamiliasView::pintar", 0);
00102     m_semaforoPintar = TRUE;
00103     QTreeWidgetItem *it;
00104     QMap <int, QTreeWidgetItem*> Lista1;
00105     int padre;
00106     int idfamilia = 0;
00107     cursor2 *cursoraux1, *cursoraux2;
00108 
00110     while (m_listFamilias->topLevelItemCount() > 0) {
00111         it = m_listFamilias->takeTopLevelItem(0);
00112         delete it;
00113     } // end while
00114 
00115     cursoraux1 = companyact->cargacursor("SELECT * FROM familia WHERE padrefamilia IS NULL ORDER BY idfamilia");
00116     while (!cursoraux1->eof()) {
00117         padre = cursoraux1->valor("padrefamilia").toInt();
00118         idfamilia = cursoraux1->valor("idfamilia").toInt();
00119         it = new QTreeWidgetItem(m_listFamilias);
00120         Lista1[idfamilia] = it;
00121         it->setText(COL_NOMFAMILIA, cursoraux1->valor("nombrefamilia"));
00122         it->setText(COL_CODFAMILIA, cursoraux1->valor("codigofamilia"));
00123         it->setText(COL_DESCFAMILIA, cursoraux1->valor("descfamilia"));
00124         it->setText(COL_IDFAMILIA, cursoraux1->valor("idfamilia"));
00125         it->setText(COL_CODCOMPLETOFAMILIA, cursoraux1->valor("codigocompletofamilia"));
00126         it->setText(COL_PRODUCTOFISICOFAMILIA, cursoraux1->valor("productofisicofamilia"));
00127         m_listFamilias->expandItem(it);
00128         cursoraux1->siguienteregistro();
00129     } // end while
00130     delete cursoraux1;
00131     cursoraux2 = companyact->cargacursor("SELECT * FROM familia WHERE padrefamilia IS NOT NULL ORDER BY idfamilia");
00132     while (!cursoraux2->eof()) {
00133         padre = cursoraux2->valor("padrefamilia").toInt();
00134         idfamilia = cursoraux2->valor("idfamilia").toInt();
00135         it = new QTreeWidgetItem(Lista1[padre]);
00136         Lista1[idfamilia] = it;
00137         it->setText(COL_NOMFAMILIA, cursoraux2->valor("nombrefamilia"));
00138         it->setText(COL_CODFAMILIA, cursoraux2->valor("codigofamilia"));
00139         it->setText(COL_DESCFAMILIA, cursoraux2->valor("descfamilia"));
00140         it->setText(COL_IDFAMILIA, cursoraux2->valor("idfamilia"));
00141         it->setText(COL_CODCOMPLETOFAMILIA, cursoraux2->valor("codigocompletofamilia"));
00142         it->setText(COL_PRODUCTOFISICOFAMILIA, cursoraux2->valor("productofisicofamilia"));
00143         m_listFamilias->expandItem(it);
00144         cursoraux2->siguienteregistro();
00145     } // end while
00146     delete cursoraux2;
00147     m_idfamilia = "";
00149     dialogChanges_cargaInicial();
00150     m_semaforoPintar = FALSE; 
00151     _depura("END FamiliasView::pintar", 0);
00152 }

void FamiliasView::on_m_listFamilias_itemDoubleClicked ( QTreeWidgetItem it  )  [virtual, slot]

Parameters:
it 

Definition at line 206 of file familiasview.cpp.

References _depura(), COL_IDFAMILIA, m_idfamilia, m_modoConsulta, and selected().

00206                                                                           {
00207     _depura("FamiliasView::on_m_listFamilias_itemDoubleClicked", 0);
00208     if (m_modoConsulta) {
00209         m_idfamilia = it->text(COL_IDFAMILIA);
00210         emit selected(m_idfamilia);
00211     } // end if
00212     _depura("END FamiliasView::on_m_listFamilias_itemDoubleClicked", 0);
00213 }

void FamiliasView::on_m_listFamilias_currentItemChanged ( QTreeWidgetItem current,
QTreeWidgetItem previous 
) [virtual, slot]

Parameters:
current 
previos 
Returns:

Si estamos dentro del proceso de pintado salimos sin hacer nada ya que puede haber problemas.

Definition at line 224 of file familiasview.cpp.

References _depura(), COL_IDFAMILIA, m_idfamilia, m_semaforoPintar, mostrarplantilla(), pintar(), and trataModificado().

00224                                                                                                            {
00225     _depura("FamiliasView::on_m_listFamilias_currentItemChanged", 0);
00226 
00228     if (m_semaforoPintar) return;
00229 
00230     QString idfamiliaold = "";
00231     if (previous) {
00232         m_idfamilia = previous->text(COL_IDFAMILIA);
00233     } // end if
00234     if (m_idfamilia != "") {
00235         trataModificado();
00236         pintar(previous);
00237     } // end if
00238     m_idfamilia = current->text(COL_IDFAMILIA);
00239     mostrarplantilla();
00240    _depura("END FamiliasView::on_m_listFamilias_currentItemChanged", 0);
00241 }

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

Definition at line 359 of file familiasview.cpp.

References _depura(), postgresiface2::begin(), postgresiface2::cargacursor(), postgresiface2::commit(), companyact, postgresiface2::ejecuta(), m_idfamilia, mensajeInfo(), pintar(), postgresiface2::rollback(), trataModificado(), and cursor2::valor().

00359                                         {
00360     _depura("FamiliasView::on_mui_crear_clicked", 0);
00361     try {
00362         companyact->begin();
00364         trataModificado();
00365         QString padrefamilia;
00366         if (m_idfamilia != "") {
00367             padrefamilia = m_idfamilia;
00368         } else {
00369             padrefamilia = "NULL";
00370         } // end if
00371 
00372         QString query = "INSERT INTO familia (nombrefamilia, descfamilia, padrefamilia, codigofamilia) VALUES ('NUEVA FAMILIA', 'Descripcion de la familia', " + padrefamilia + ", 'XXX')";
00373 
00374         int error = companyact->ejecuta(query);
00375         if (error) {
00376             throw -1;
00377         } // end if
00378         cursor2 *cur = companyact->cargacursor("SELECT max(idfamilia) AS idfamilia FROM familia");
00379         companyact->commit();
00380         m_idfamilia = cur->valor("idfamilia");
00381         delete cur;
00382         pintar();
00383         _depura("END FamiliasView::on_mui_crear_clicked", 0);
00384     } catch (...) {
00385         companyact->rollback();
00386         mensajeInfo("Error al crear la familia");
00387     } // end try
00388 }

void FamiliasView::selected ( QString   )  [signal]

Definition at line 89 of file moc_familiasview.cpp.

Referenced by on_m_listFamilias_itemDoubleClicked().

00090 {
00091     void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
00092     QMetaObject::activate(this, &staticMetaObject, 0, _a);
00093 }


Field Documentation

Company* FamiliasView::companyact [private]

Definition at line 38 of file familiasview.h.

Referenced by borrar(), FamiliasView(), guardar(), mostrarplantilla(), on_mui_crear_clicked(), on_mui_imprimir_clicked(), and pintar().

QString FamiliasView::m_idfamilia [private]

Indica cuál es el registro que se está modificando. Sirve para saber los cambios que hay que guardar después de que se haya modificado.

Definition at line 41 of file familiasview.h.

Referenced by borrar(), FamiliasView(), guardar(), mostrarplantilla(), on_m_listFamilias_currentItemChanged(), on_m_listFamilias_itemDoubleClicked(), on_mui_aceptar_clicked(), on_mui_crear_clicked(), and pintar().

bool FamiliasView::m_modoConsulta [private]

Indica si es modo consulta o modo edición. (modifica el comportamiento del doble click sobre la lista).

Definition at line 44 of file familiasview.h.

Referenced by on_m_listFamilias_itemDoubleClicked(), setModoConsulta(), and setModoEdicion().

bool FamiliasView::m_semaforoPintar [private]

Este semaforo indica si se esta en el proceso de pintado.

Definition at line 46 of file familiasview.h.

Referenced by FamiliasView(), on_m_listFamilias_currentItemChanged(), and pintar().


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