00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #include <QMessageBox>
00022 #include <QCloseEvent>
00023 #include <QFile>
00024 #include <QTextStream>
00025
00026 #include <fstream>
00027
00028 #include "cobroview.h"
00029 #include "company.h"
00030 #include "configuracion.h"
00031 #include "busquedacliente.h"
00032 #include "busquedafecha.h"
00033
00034 #include "funcaux.h"
00035
00036
00041 CobroView::CobroView(Company *comp, QWidget *parent)
00042 : FichaBf(comp, parent) {
00043 _depura("CobroView::CobroView", 0);
00044 setAttribute(Qt::WA_DeleteOnClose);
00045 try {
00046 setupUi(this);
00048 mui_idcliente->setEmpresaBase(comp);
00049 mui_refcobro->setEmpresaBase(comp);
00050 mui_idbanco->setEmpresaBase(comp);
00051
00052 setTitleName(tr("Cobro"));
00053 setDBTableName("cobro");
00054 setDBCampoId("idcobro");
00055 addDBCampo("idcobro", DBCampo::DBint, DBCampo::DBPrimaryKey, QApplication::translate("Cobro", "ID cobro"));
00056 addDBCampo("idcliente", DBCampo::DBint, DBCampo::DBNotNull, QApplication::translate("Cobro", "ID cliente"));
00057 addDBCampo("previsioncobro", DBCampo::DBboolean, DBCampo::DBNothing, QApplication::translate("Cobro", "Prevision de cobro"));
00058 addDBCampo("fechacobro", DBCampo::DBdate, DBCampo::DBNothing, QApplication::translate("Cobro", "Fecha de cobro"));
00059 addDBCampo("fechavenccobro", DBCampo::DBdate, DBCampo::DBNothing, QApplication::translate("Cobro", "Fecha de vencimiento"));
00060 addDBCampo("refcobro", DBCampo::DBvarchar, DBCampo::DBNothing, QApplication::translate("Cobro", "Referencia del cobro"));
00061 addDBCampo("cantcobro", DBCampo::DBnumeric, DBCampo::DBNotNull, QApplication::translate("Cobro", "Cantidad"));
00062 addDBCampo("comentcobro", DBCampo::DBvarchar, DBCampo::DBNothing, QApplication::translate("Cobro", "Comentarios"));
00063 addDBCampo("idbanco", DBCampo::DBint, DBCampo::DBNothing, QApplication::translate("Banco", "Comentarios"));
00064
00065 meteWindow(windowTitle(), this, FALSE);
00066 pintar();
00067 dialogChanges_cargaInicial();
00068 } catch (...) {
00069 mensajeInfo(tr("Error al crear el cobro"));
00070 }
00071 _depura("END CobroView::CobroView", 0);
00072 }
00073
00074
00077 CobroView::~CobroView() {
00078 _depura("CobroView::~CobroView", 0);
00080
00081 _depura("END CobroView::~CobroView", 0);
00082 }
00083
00084
00085 void CobroView::on_mui_imprimir_clicked() {
00086 _depura("CobroView::on_mui_imprimir_clicked", 0);
00087
00089 int res = g_plugins->lanza("CoboView_on_mui_imprimir_clicked", this);
00090 if (res != 0) {
00091 return;
00092 }
00093 base basesimp;
00094 base basesimpreqeq;
00095 QString archivo = confpr->valor(CONF_DIR_OPENREPORTS) +"recibo.rml";
00096 QString archivod = confpr->valor(CONF_DIR_USER) + "recibo.rml";
00097 QString archivologo = confpr->valor(CONF_DIR_OPENREPORTS) + "logo.jpg";
00098
00099
00101 #ifdef WINDOWS
00102
00103 archivo = "copy " + archivo + " " + archivod;
00104 #else
00105
00106 archivo = "cp " + archivo + " " + archivod;
00107 #endif
00108
00109 system (archivo.toAscii().constData());
00111 #ifdef WINDOWS
00112
00113 archivologo = "copy " + archivologo + " " + confpr->valor(CONF_DIR_USER) + "logo.jpg";
00114 #else
00115
00116 archivologo = "cp " + archivologo + " " + confpr->valor(CONF_DIR_USER) + "logo.jpg";
00117 #endif
00118
00119 system(archivologo.toAscii().constData());
00120 QFile file;
00121 file.setFileName(archivod);
00122 file.open(QIODevice::ReadOnly);
00123 QTextStream stream(&file);
00124 QString buff = stream.readAll();
00125 file.close();
00126 QString fitxersortidatxt = "";
00127
00129 QString SQLQuery = "SELECT * FROM cliente WHERE idcliente = " + DBvalue("idcliente");
00130 cursor2 *cur = empresaBase()->cargacursor(SQLQuery);
00131 if (!cur->eof()) {
00132 buff.replace("[dircliente]", cur->valor("dircliente"));
00133 buff.replace("[poblcliente]", cur->valor("poblcliente"));
00134 buff.replace("[telcliente]", cur->valor("telcliente"));
00135 buff.replace("[nomcliente]", cur->valor("nomcliente"));
00136 buff.replace("[cifcliente]", cur->valor("cifcliente"));
00137 buff.replace("[idcliente]", cur->valor("idcliente"));
00138 buff.replace("[cpcliente]", cur->valor("cpcliente"));
00139 buff.replace("[codcliente]", cur->valor("codcliente"));
00140 }
00141 delete cur;
00142
00143 buff.replace("[referencia]" , DBvalue("refcobro" ));
00144 buff.replace("[cantidad]" , DBvalue("cantcobro" ));
00145 buff.replace("[comentario]" , DBvalue("comentcobro" ));
00146 buff.replace("[fecha]" , DBvalue("fechacobro" ));
00147
00148
00149
00150 buff.replace("[story]", fitxersortidatxt);
00151
00152 Fixed basei("0.00");
00153
00154
00155
00158 #ifndef WINDOWS
00159
00160 #endif
00161
00162 if (file.open(QIODevice::WriteOnly)) {
00163 QTextStream stream(&file);
00164 stream << buff;
00165 file.close();
00166 }
00167
00168
00169
00170 _depura("FichaBf::imprimir", 0);
00171 invocaPDF("recibo");
00172
00173 _depura("END CobroView::on_mui_imprimir_clicked", 0);
00174 }
00175
00176