#include <diarioview.h>
Inheritance diagram for DiarioView:

Public Slots | |
| virtual void | on_mui_actualizar_clicked () |
| virtual void | boton_imprimir () |
| SLOT que responde a la pulsación del botón de imprimir. | |
| virtual void | boton_guardar () |
| Se ha pulsado sobre el botón guardar del formulario. | |
| virtual void | on_mui_configurar_clicked () |
Public Member Functions | |
| DiarioView (Empresa *, QWidget *parent=0, int flags=0) | |
| virtual | ~DiarioView () |
| void | accept () |
| Se ha pulsado sobre el botón aceptar del formulario. | |
| void | inicializa1 (QString, QString, int) |
| virtual void | on_mui_imprimir_clicked () |
| Boton de impresion del diario. | |
Private Member Functions | |
| void | presentar () |
| Muestra en pantalla los resultados para los datos introducidos. | |
Clase que muestra el libro diario de la empresa entre dos fechas.
Definition at line 34 of file diarioview.h.
| emp | ||
| parent |
Establecemos cual es la tabla en la que basarse para los permisos
Iniciamos los componentes de la fecha para que al principio aparezcan como el año inicial.
Definition at line 49 of file diarioview.cpp.
References _depura(), Ficha::meteWindow(), Ui_DiarioBase::mui_contrapartida, Ui_DiarioBase::mui_fechafinal, Ui_DiarioBase::mui_fechainicial, Ui_DiarioBase::mui_list, Ficha::setDBTableName(), BusquedaCuenta::setEmpresaBase(), SubForm2Bc::setEmpresaBase(), BusquedaFecha::setText(), Ficha::setTitleName(), and Ui_DiarioBase::setupUi().
00050 : FichaBc(emp, parent) { 00051 _depura("DiarioView::DiarioView", 0); 00052 setupUi(this); 00053 00054 setTitleName(tr("Diario")); 00056 setDBTableName("apunte"); 00057 00058 mui_list->setEmpresaBase(emp); 00059 mui_contrapartida->setEmpresaBase(emp); 00062 char cadena[10]; 00063 sprintf(cadena, "%2.2d/%2.2d/%4.4d", 1, 1, QDate::currentDate().year()); 00064 mui_fechainicial->setText(cadena); 00065 sprintf(cadena, "%2.2d/%2.2d/%4.4d", 31, 12, QDate::currentDate().year()); 00066 mui_fechafinal->setText(cadena); 00067 meteWindow(windowTitle(), this); 00068 _depura("END DiarioView::DiarioView", 0); 00069 }
| DiarioView::~DiarioView | ( | ) | [virtual] |
Definition at line 75 of file diarioview.cpp.
References _depura(), FichaBc::empresaBase(), and EmpresaBase::sacaWindow().
00075 { 00076 _depura("DiarioView::~DiarioView", 0); 00077 empresaBase()->sacaWindow(this); 00078 _depura("END DiarioView::~DiarioView", 0); 00079 }
| void DiarioView::accept | ( | ) |
Se ha pulsado sobre el botón aceptar del formulario.
Definition at line 178 of file diarioview.cpp.
References _depura(), and presentar().
Referenced by SubForm2Bc::boton_diario1(), BalanceTreeView::boton_diario1(), Empresa::boton_reload(), and on_mui_actualizar_clicked().
00178 { 00179 _depura("DiarioView::accept", 0); 00180 presentar(); 00181 _depura("END DiarioView::accept", 0); 00182 }
| void DiarioView::inicializa1 | ( | QString | , | |
| QString | , | |||
| int | ||||
| ) |
Inicializa la clase con las fechas inicial y final. El último parámetro no se usa.
Definition at line 106 of file diarioview.cpp.
References _depura(), Ui_DiarioBase::mui_fechafinal, Ui_DiarioBase::mui_fechainicial, and BusquedaFecha::setText().
Referenced by SubForm2Bc::boton_diario1(), and BalanceTreeView::boton_diario1().
00106 { 00107 _depura("DiarioView::inicializa1", 0); 00108 QString s1, s2, s3; 00109 QDate fecha1aux; 00110 int dia, mes, ano; 00111 00112 s1 = finicial; 00113 s2 = s1.mid(0, 2); 00114 dia = atoi(s2.toAscii()); 00115 s2 = s1.mid(3, 2); 00116 mes = atoi(s2.toAscii()); 00117 s2 = s1.mid(6, 4); 00118 ano = atoi(s2.toAscii()); 00119 fecha1aux.setYMD(ano, mes, dia); 00120 QString cadena2; 00121 cadena2.sprintf("%2.2d/%2.2d/%4.4d", fecha1aux.day(), fecha1aux.month(), fecha1aux.year()); 00122 mui_fechainicial->setText(cadena2); 00123 00124 s1 = ffinal; 00125 s2 = s1.mid(0,2); 00126 dia = atoi(s2.toAscii()); 00127 s2 = s1.mid(3,2); 00128 mes = atoi(s2.toAscii()); 00129 s2 = s1.mid(6,4); 00130 ano = atoi(s2.toAscii()); 00131 fecha1aux.setYMD(ano, mes, dia); 00132 cadena2.sprintf("%2.2d/%2.2d/%4.4d", fecha1aux.day(), fecha1aux.month(), fecha1aux.year()); 00133 mui_fechafinal->setText(cadena2); 00134 _depura("END DiarioView::inicializa1", 0); 00135 }
| void DiarioView::on_mui_imprimir_clicked | ( | ) | [virtual] |
Boton de impresion del diario.
Slot que responde a la pulsación del botón imprimir en el formulario. Realiza la impresión del listado que tenemos en pantalla.
Reimplemented from Ficha.
Definition at line 269 of file diarioview.cpp.
References _depura(), SubForm3::imprimirPDF(), and Ui_DiarioBase::mui_list.
00269 { 00270 _depura("DiarioView::on_mui_imprimir_clicked", 0); 00271 mui_list->imprimirPDF("diario"); 00272 _depura("END DiarioView::on_mui_imprimir_clicked", 0); 00273 }
| void DiarioView::presentar | ( | ) | [private] |
Muestra en pantalla los resultados para los datos introducidos.
Liberamos memoria que pueda haber quedado reservada.
Definition at line 188 of file diarioview.cpp.
References _depura(), selectcanalview::cadcanal(), SelectCCosteView::cadcoste(), postgresiface2::cargacursor(), SubForm3::cargar(), FichaBc::empresaBase(), cursor2::eof(), Empresa::getselcanales(), Empresa::getselccostes(), mensajeInfo(), Ui_DiarioBase::mui_asAbiertos, Ui_DiarioBase::mui_fechafinal, Ui_DiarioBase::mui_fechainicial, Ui_DiarioBase::mui_list, SubForm3::setDBCampoId(), SubForm3::setDBTableName(), BusquedaFecha::text(), Ui_DiarioBase::totaldebe, Ui_DiarioBase::totalhaber, and cursor2::valor().
Referenced by accept().
00188 { 00189 _depura("DiarioView::presentar", 0); 00190 cursor2 *cur = NULL; 00191 try { 00192 QString tabla = "apunte"; 00193 mui_list->setDBTableName("apunte"); 00194 mui_list->setDBCampoId("idapunte"); 00195 if (mui_asAbiertos->isChecked()) { 00196 tabla = "borrador"; 00197 mui_list->setDBTableName("borrador"); 00198 mui_list->setDBCampoId("idborrador"); 00199 } // end if 00200 00201 QString query = "SELECT *, cuenta.descripcion AS descripcioncuenta FROM "+tabla+" LEFT JOIN cuenta ON cuenta.idcuenta = "+tabla+".idcuenta "; 00202 query += " LEFT JOIN (SELECT idc_coste, nombre AS nombrec_coste FROM c_coste) AS t1 ON t1.idc_coste = "+tabla+".idc_coste "; 00203 query += " LEFT JOIN (SELECT (ordenasiento || ' - ' || fecha) AS ordenasientoconfecha, ordenasiento, idasiento, fecha FROM asiento) AS t5 ON t5.idasiento = "+tabla+".idasiento"; 00204 query += " LEFT JOIN (SELECT idcanal, nombre as nombrecanal FROM canal) AS t2 ON t2.idcanal = "+tabla+".idcanal"; 00205 if (mui_asAbiertos->isChecked()) { 00206 query += " LEFT JOIN (SELECT idregistroiva, factura, idborrador FROM registroiva) AS t3 ON t3.idborrador = "+tabla+".idborrador "; 00207 } else { 00208 query += " LEFT JOIN (SELECT idregistroiva, factura, idborrador FROM registroiva) AS t3 ON t3.idborrador IN (SELECT idborrador FROM borrador WHERE idapunte = "+tabla+".idapunte)"; 00209 } // end if 00210 query += " LEFT JOIN (SELECT idcuenta AS idcontrapartida, codigo AS codcontrapartida FROM cuenta) as t8 ON t8.idcontrapartida = "+tabla+".contrapartida"; 00211 00212 QString cad = ""; 00213 QString cadwhere=" WHERE "; 00214 QString cadand = ""; 00215 QString totalcadena = ""; 00216 00217 if (mui_fechainicial->text() != "") { 00218 cad += cadwhere + cadand + tabla + ".fecha >= '" + mui_fechainicial->text() + "'"; 00219 cadwhere = ""; 00220 cadand = " AND "; 00221 } // end if 00222 00223 if (mui_fechafinal->text() != "") { 00224 cad += cadwhere + cadand + tabla + ".fecha <= '" + mui_fechafinal->text() + "'"; 00225 cadwhere = ""; 00226 cadand = " AND "; 00227 } // end if 00228 00229 // Consideraciones para centros de coste y canales 00230 selectcanalview *scanal=empresaBase()->getselcanales(); 00231 SelectCCosteView *scoste=empresaBase()->getselccostes(); 00232 QString ccostes = scoste->cadcoste(); 00233 if (ccostes != "") { 00234 ccostes = " " + tabla +".idc_coste IN (" + ccostes + ") "; 00235 cad += cadwhere + cadand + ccostes; 00236 cadwhere = ""; 00237 cadand = " AND "; 00238 } // end if 00239 00240 QString ccanales = scanal->cadcanal(); 00241 if (ccanales != "") { 00242 ccanales = " " + tabla + ".idcanal IN (" + ccanales + ") "; 00243 cad += cadwhere + cadand + ccanales; 00244 cadwhere = ""; 00245 cadand = " AND "; 00246 } // end if 00247 00248 totalcadena = query + cad + " ORDER BY t5.fecha, t5.ordenasiento "; 00249 00250 mui_list->cargar(totalcadena); 00251 00252 cur = empresaBase()->cargacursor("SELECT sum(debe) as totaldebe, sum(haber) as totalhaber from " + tabla + cad); 00253 if (!cur->eof()) { 00254 totaldebe->setText(cur->valor("totaldebe")); 00255 totalhaber->setText(cur->valor("totalhaber")); 00256 } // end if 00257 delete cur; 00258 _depura("END DiarioView::presentar", 0); 00259 } catch (...) { 00260 mensajeInfo("Error en los calculos"); 00262 if (cur) delete cur; 00263 }// end try 00264 }
| void DiarioView::on_mui_actualizar_clicked | ( | ) | [virtual, slot] |
Slot que responde a la pulsación del botón actualizar en el formulario. Supuestamente debe repintar el formulario con las nuevas opciones de filtrado que se hayan elegido.
Definition at line 84 of file diarioview.cpp.
References _depura(), and accept().
00084 { 00085 _depura("DiarioView::on_mui_actualizar_clicked", 0); 00086 accept(); 00087 _depura("END DiarioView::on_mui_actualizar_clicked", 0); 00088 }
| void DiarioView::boton_imprimir | ( | ) | [virtual, slot] |
SLOT que responde a la pulsación del botón de imprimir.
SLOT que responde a la pulsación del botón imprimir. Es invocado desde la clase empresa
Definition at line 142 of file diarioview.cpp.
References _depura(), FichaBc::empresaBase(), and print.
Referenced by Empresa::boton_imprimir().
00142 { 00143 _depura("DiarioView::boton_imprimir", 0); 00144 DiarioPrintView *print = new DiarioPrintView(empresaBase(), 0); 00145 print->exec(); 00146 _depura("END DiarioView::boton_imprimir", 0); 00147 }
| void DiarioView::boton_guardar | ( | ) | [virtual, slot] |
Se ha pulsado sobre el botón guardar del formulario.
SLOT que responde a la pulsación del botón guardar listado. Es invocado desde la clase empresa
Si se ha proporcionado un nombre de archivo válido invocamos la clase diarioprint y hacemos que guarde el archivo.
Definition at line 153 of file diarioview.cpp.
References _depura(), CONF_DIR_USER, confpr, FichaBc::empresaBase(), Ui_DiarioBase::mui_fechafinal, Ui_DiarioBase::mui_fechainicial, BusquedaFecha::text(), and configuracion::valor().
Referenced by Empresa::boton_guardar().
00153 { 00154 _depura("DiarioView::boton_guardar", 0); 00155 QString fn = QFileDialog::getSaveFileName(this, 00156 tr("Guardar Libro Diario"), 00157 confpr->valor(CONF_DIR_USER), 00158 tr("Diarios (*.txt)")); 00159 00160 if (!fn.isEmpty()) { 00163 DiarioPrint diariop(empresaBase()); 00164 QString finicial = mui_fechainicial->text(); 00165 QString ffinal = mui_fechafinal->text(); 00166 diariop.setEmpresaBase(empresaBase()); 00167 diariop.inicializa1((char *) finicial.toAscii().constData(), (char *)ffinal.toAscii().constData()); 00168 diariop.inicializa2((char *) fn.toAscii().constData()); 00169 diariop.accept(); 00170 } // end if 00171 _depura("END DiarioView::boton_guardar", 0); 00172 }
| void DiarioView::on_mui_configurar_clicked | ( | ) | [virtual, slot] |
SLOT que responde a la activación del botón de configurar listado. Muestra el configurador de subform3 subform3
Definition at line 94 of file diarioview.cpp.
References _depura(), Ui_DiarioBase::mui_list, and SubForm3::showConfig().
00094 { 00095 _depura("DiarioView::on_mui_configurar_clicked", 0); 00096 mui_list->showConfig(); 00097 _depura("END DiarioView::on_mui_configurar_clicked", 0); 00098 }
1.5.1