00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #include <QLineEdit>
00022
00023 #include "mpatrimonialview.h"
00024 #include "mpatrimonialesview.h"
00025 #include "empresa.h"
00026
00027
00029
00034 mpatrimonialview::mpatrimonialview(Empresa *emp, QWidget *parent, Qt::WFlags fl)
00035 : QDialog(parent, fl), PEmpresaBase(emp) {
00036 _depura("mpatrimonialview::mpatrimonialview", 0);
00037 setupUi(this);
00038 idmpatrimonial = "";
00039
00040 componentessuma->setColumnCount(4);
00041 componentesresta->setColumnCount(4);
00042
00043 QStringList etiquetas;
00044 etiquetas << tr("identificador") << tr("codigo") << tr("descripcion") << tr("tipo");
00045 componentessuma->setHorizontalHeaderLabels(etiquetas);
00046 componentesresta->setHorizontalHeaderLabels(etiquetas);
00047 _depura("END mpatrimonialview::mpatrimonialview", 0);
00048 }
00049
00050
00052
00054 mpatrimonialview::~mpatrimonialview() {
00055 _depura("mpatrimonialview::~mpatrimonialview", 0);
00056 _depura("END mpatrimonialview::~mpatrimonialview", 0);
00057 }
00058
00059
00061
00064 QString mpatrimonialview::getidmasa() {
00065 _depura("mpatrimonialview::getidmasa", 0);
00066 _depura("END mpatrimonialview::getidmasa", 0);
00067 return idmpatrimonial;
00068 }
00069
00070
00072
00075 void mpatrimonialview::inicializa1(QString idmpatrimonial1) {
00076 _depura("mpatrimonialview::inicializa1", 0);
00077 QTableWidgetItem *it0, *it1, *it2, *it3;
00078 int i = 0;
00079 idmpatrimonial = idmpatrimonial1;
00080 QString query = "SELECT * FROM mpatrimonial WHERE idmpatrimonial = " + idmpatrimonial;
00081 empresaBase()->begin();
00082 cursor2 *cursor = empresaBase()->cargacursor(query, "micursor");
00083 empresaBase()->commit();
00084 if (!cursor->eof()) {
00085 descmpatrimonial->setText(cursor->valor("descmpatrimonial"));
00086 }
00087 delete cursor;
00088
00090 empresaBase()->begin();
00091 query = "SELECT * FROM cuenta WHERE idcuenta IN (SELECT idcuenta FROM compmasap WHERE masaperteneciente = " + idmpatrimonial + " AND signo = true)";
00092 cursor2 *cursoraux = empresaBase()->cargacursor(query, "cursorusuario");
00093 empresaBase()->commit();
00094
00095 while (!cursoraux->eof()) {
00097 componentessuma->insertRow(i);
00098 it1 = new QTableWidgetItem(cursoraux->valor("codigo"));
00099 componentessuma->setItem(i, 1, it1);
00100 it2 = new QTableWidgetItem(cursoraux->valor("descripcion"));
00101 componentessuma->setItem(i, 2, it2);
00102 it3 = new QTableWidgetItem("cuenta");
00103 componentessuma->setItem(i, 3, it3);
00104 it0 = new QTableWidgetItem(cursoraux->valor("idcuenta"));
00105 componentessuma->setItem(i, 0, it0);
00106 cursoraux->siguienteregistro();
00107 i++;
00108 }
00109 delete cursoraux;
00110
00112 empresaBase()->begin();
00113 query = "SELECT * FROM mpatrimonial WHERE idmpatrimonial IN (SELECT idmpatrimonial FROM compmasap WHERE masaperteneciente = " + idmpatrimonial + " AND signo = true)";
00114 cursoraux = empresaBase()->cargacursor(query, "cursorusuario");
00115 empresaBase()->commit();
00116 i = 0;
00117 while (!cursoraux->eof()) {
00118 componentessuma->insertRow(i);
00119 it1 = new QTableWidgetItem("");
00120 componentessuma->setItem(i, 1, it1);
00121 it2 = new QTableWidgetItem(cursoraux->valor("descmpatrimonial"));
00122 componentessuma->setItem(i, 2, it2);
00123 it3 = new QTableWidgetItem("masa patrimonial");
00124 componentessuma->setItem(i, 3, it3);
00125 it0 = new QTableWidgetItem(cursoraux->valor("idmpatrimonial"));
00126 componentessuma->setItem(i, 0, it0);
00127 i++;
00128 cursoraux->siguienteregistro();
00129 }
00130 delete cursoraux;
00131
00133 empresaBase()->begin();
00134 query = "SELECT * FROM cuenta WHERE idcuenta IN (SELECT idcuenta FROM compmasap WHERE masaperteneciente = " + idmpatrimonial + " AND signo = false)";
00135 cursor2 *cursoraux1 = empresaBase()->cargacursor(query, "cursorusuario");
00136 empresaBase()->commit();
00137 i = 0;
00138 while (!cursoraux1->eof()) {
00139 componentesresta->insertRow(i);
00140 it1 = new QTableWidgetItem(cursoraux1->valor("codigo"));
00141 componentesresta->setItem(i, 1, it1);
00142 it2 = new QTableWidgetItem(cursoraux1->valor("descripcion"));
00143 componentesresta->setItem(i, 2, it2);
00144 it3 = new QTableWidgetItem("cuenta");
00145 componentesresta->setItem(i, 3, it3);
00146 it0 = new QTableWidgetItem(cursoraux1->valor("idcuenta"));
00147 componentesresta->setItem(i, 0, it0);
00148 i++;
00149 cursoraux1->siguienteregistro();
00150 }
00151 delete cursoraux1;
00152
00154 empresaBase()->begin();
00155 query = "SELECT * FROM mpatrimonial WHERE idmpatrimonial IN (SELECT idmpatrimonial FROM compmasap WHERE masaperteneciente = " + idmpatrimonial + " AND signo = false)";
00156 cursoraux = empresaBase()->cargacursor(query, "cursorusuario");
00157 empresaBase()->commit();
00158 i = 0;
00159 while (!cursoraux->eof()) {
00160 componentesresta->insertRow(i);
00161 it1 = new QTableWidgetItem("");
00162 componentesresta->setItem(i, 1, it1);
00163 it2 = new QTableWidgetItem(cursoraux->valor("descmpatrimonial"));
00164 componentesresta->setItem(i, 2, it2);
00165 it3 = new QTableWidgetItem("masa patrimonial");
00166 componentesresta->setItem(i, 3, it3);
00167 it0 = new QTableWidgetItem(cursoraux->valor("idmpatrimonial"));
00168 componentesresta->setItem(i, 0, it0);
00169 i++;
00170 cursoraux->siguienteregistro();
00171 }
00172 delete cursoraux;
00173 _depura("mpatrimonialview::inicializa1", 0);
00174 }
00175
00176
00179
00181 void mpatrimonialview::on_mui_nuevasuma_clicked() {
00182 _depura("mpatrimonialview::on_mui_nuevasuma_clicked", 0);
00183 QTableWidgetItem *it0, *it1, *it2, *it3;
00184 int i;
00185
00187 QString codcuenta = codigocta1->text();
00188 QString masapatrimonial = mpatrimonial->text();
00189
00191 empresaBase()->begin();
00192 QString query = "SELECT * FROM cuenta WHERE codigo = '" + codcuenta + "'";
00193 cursor2 *cursoraux1 = empresaBase()->cargacursor(query, "cursorusuario");
00194 empresaBase()->commit();
00195 i = componentessuma->rowCount();
00196 while (!cursoraux1->eof()) {
00197 componentessuma->insertRow(i);
00198 it1 = new QTableWidgetItem(cursoraux1->valor("codigo"));
00199 componentessuma->setItem(i, 1, it1);
00200 it2 = new QTableWidgetItem(cursoraux1->valor("descripcion"));
00201 componentessuma->setItem(i, 2, it2);
00202 it3 = new QTableWidgetItem("cuenta");
00203 componentessuma->setItem(i, 3, it3);
00204 it0 = new QTableWidgetItem(cursoraux1->valor("idcuenta"));
00205 componentessuma->setItem(i, 0, it0);
00206 i++;
00207 cursoraux1->siguienteregistro();
00208 }
00209 delete cursoraux1;
00210
00212 empresaBase()->begin();
00213 query = "SELECT * FROM mpatrimonial WHERE idmpatrimonial = " + masapatrimonial;
00214 cursoraux1 = empresaBase()->cargacursor(query, "cursormpatrimonial");
00215 empresaBase()->commit();
00216 i = componentessuma->rowCount();
00217 while (!cursoraux1->eof()) {
00218 componentessuma->insertRow(i);
00219 it1 = new QTableWidgetItem("");
00220 componentessuma->setItem(i, 1, it1);
00221 it2 = new QTableWidgetItem(cursoraux1->valor("descmpatrimonial"));
00222 componentessuma->setItem(i, 2, it2);
00223 it3 = new QTableWidgetItem("masa patrimonial");
00224 componentessuma->setItem(i, 3, it3);
00225 it0 = new QTableWidgetItem(cursoraux1->valor("idmpatrimonial"));
00226 componentessuma->setItem(i, 0, it0);
00227 i++;
00228 cursoraux1->siguienteregistro();
00229 }
00230 _depura("END mpatrimonialview::on_mui_nuevasuma_clicked", 0);
00231 }
00232
00233
00235
00237 void mpatrimonialview::on_mui_borrasuma_clicked() {
00238 _depura("mpatrimonialview::on_mui_nuevasuma_clicked", 0);
00239 componentessuma->removeRow(componentessuma->currentRow());
00240 _depura("END mpatrimonialview::on_mui_borrasuma_clicked", 0);
00241 }
00242
00243
00246
00248 void mpatrimonialview::on_mui_nuevaresta_clicked() {
00249 _depura("mpatrimonialview::on_mui_nuevaresta_clicked", 0);
00250 QTableWidgetItem *it0, *it1, *it2, *it3;
00251 int i;
00252
00254 QString codcuenta = codigocta1->text();
00255 QString masapatrimonial = mpatrimonial->text();
00256
00258 empresaBase()->begin();
00259 QString query = "SELECT * FROM cuenta WHERE codigo = '" + codcuenta + "'";
00260 cursor2 *cursoraux1 = empresaBase()->cargacursor(query, "cursorusuario");
00261 empresaBase()->commit();
00262 i = componentesresta->rowCount();
00263 while (!cursoraux1->eof()) {
00264 componentesresta->insertRow(i);
00265 it1 = new QTableWidgetItem(cursoraux1->valor("codigo"));
00266 componentesresta->setItem(i, 1, it1);
00267 it2 = new QTableWidgetItem(cursoraux1->valor("descripcion"));
00268 componentesresta->setItem(i, 2, it2);
00269 it3 = new QTableWidgetItem("cuenta");
00270 componentesresta->setItem(i, 3, it3);
00271 it0 = new QTableWidgetItem(cursoraux1->valor("idcuenta"));
00272 componentesresta->setItem(i, 0, it0);
00273 i++;
00274 cursoraux1->siguienteregistro();
00275 }
00276 delete cursoraux1;
00277
00279 empresaBase()->begin();
00280 query = "SELECT * FROM mpatrimonial WHERE idmpatrimonial = " + masapatrimonial;
00281 cursoraux1 = empresaBase()->cargacursor(query, "cursormpatrimonial");
00282 empresaBase()->commit();
00283 i = componentesresta->rowCount();
00284 while (!cursoraux1->eof()) {
00285 componentesresta->insertRow(i);
00286 it1 = new QTableWidgetItem("");
00287 componentesresta->setItem(i, 1, it1);
00288 it2 = new QTableWidgetItem(cursoraux1->valor("descmpatrimonial"));
00289 componentesresta->setItem(i, 2, it2);
00290 it3 = new QTableWidgetItem("masa patrimonial");
00291 componentesresta->setItem(i, 3, it3);
00292 it0 = new QTableWidgetItem(cursoraux1->valor("idmpatrimonial"));
00293 componentesresta->setItem(i, 0, it0);
00294 i++;
00295 cursoraux1->siguienteregistro();
00296 }
00297 _depura("END mpatrimonialview::on_mui_nuevaresta_clicked", 0);
00298 }
00299
00300
00302
00304 void mpatrimonialview::on_mui_borraresta_clicked() {
00305 _depura("mpatrimonialview::on_mui_borraresta_clicked", 0);
00306 componentesresta->removeRow(componentesresta->currentRow());
00307 _depura("END mpatrimonialview::on_mui_borraresta_clicked", 0);
00308 }
00309
00310
00312
00314 void mpatrimonialview::on_mui_buscampatrimonial_clicked() {
00315 _depura("mpatrimonialview::on_mui_buscampatrimonial_clicked", 0);
00316 mpatrimonialesview *nuevae = new mpatrimonialesview((Empresa *)empresaBase(), 0);
00317 nuevae->inicializa();
00318 nuevae->setmodoselector();
00319 nuevae->exec();
00320 mpatrimonial->setText(nuevae->getidmasa());
00321 delete nuevae;
00322 _depura("END mpatrimonialview::on_mui_buscampatrimonial_clicked", 0);
00323 }
00324
00325
00327
00329 void mpatrimonialview::on_mui_cancelar_clicked() {
00330 _depura("mpatrimonialview::on_mui_cancelar_clicked", 0);
00331 close();
00332 _depura("END mpatrimonialview::on_mui_cancelar_clicked", 0);
00333 }
00334
00335
00337
00339 void mpatrimonialview::on_mui_aceptar_clicked() {
00340 _depura("mpatrimonialview::on_mui_aceptar_clicked", 0);
00341 int i;
00342 QString query;
00343
00345 if (idmpatrimonial == "") {
00346 empresaBase()->begin();
00347 query.sprintf("INSERT INTO mpatrimonial (descmpatrimonial) VALUES ('nueva masa')");
00348 empresaBase()->ejecuta(query.toAscii());
00349 query.sprintf("SELECT MAX(idmpatrimonial) as id FROM mpatrimonial");
00350 cursor2 *curs = empresaBase()->cargacursor(query, "cargaid");
00351 empresaBase()->commit();
00352 idmpatrimonial = curs->valor("id").toAscii();
00353 }
00354
00356 QString text = descmpatrimonial->text();
00357 query.sprintf("UPDATE mpatrimonial SET descmpatrimonial = '%s' WHERE idmpatrimonial = %s", text.toAscii().constData(), idmpatrimonial.toAscii().constData());
00358 empresaBase()->ejecuta(query);
00359
00360 query.sprintf("DELETE FROM compmasap WHERE masaperteneciente = %s", idmpatrimonial.toAscii().constData());
00361 empresaBase()->ejecuta(query);
00362
00363 for (i = 0; i < componentessuma->rowCount(); i++) {
00364 QString id = componentessuma->item(i, 0)->text();
00365 QString tipo = componentessuma->item(i, 3)->text();
00366
00367 if (tipo == "cuenta") {
00368 query.sprintf("INSERT INTO compmasap(idcuenta, idmpatrimonial, masaperteneciente, signo) VALUES (%s, NULL, %s, true)",
00369 empresaBase()->sanearCadena(id).toAscii().constData(),
00370 empresaBase()->sanearCadena(idmpatrimonial).toAscii().constData());
00371 } else {
00372 query.sprintf("INSERT INTO compmasap(idcuenta, idmpatrimonial, masaperteneciente, signo) VALUES (NULL, %s, %s, true)",
00373 empresaBase()->sanearCadena(id).toAscii().constData(),
00374 empresaBase()->sanearCadena(idmpatrimonial).toAscii().constData());
00375 }
00376 empresaBase()->ejecuta(query);
00377 }
00378
00379 for (i = 0; i < componentesresta->rowCount(); i++) {
00380 QString id = componentesresta->item(i, 0)->text();
00381 QString tipo = componentesresta->item(i, 3)->text();
00382
00383 if (tipo == "cuenta") {
00384 query.sprintf("INSERT INTO compmasap(idcuenta, idmpatrimonial, masaperteneciente, signo) VALUES (%s, NULL, %s, false)",
00385 empresaBase()->sanearCadena(id).toAscii().constData(),
00386 empresaBase()->sanearCadena(idmpatrimonial).toAscii().constData());
00387 } else {
00388 query.sprintf("INSERT INTO compmasap(idcuenta, idmpatrimonial, masaperteneciente, signo) VALUES (NULL, %s, %s, false)",
00389 empresaBase()->sanearCadena(id).toAscii().constData(),
00390 empresaBase()->sanearCadena(idmpatrimonial).toAscii().constData());
00391 }
00392 empresaBase()->ejecuta(query);
00393 }
00394 close();
00395 _depura("END mpatrimonialview::on_mui_aceptar_clicked", 0);
00396 }
00397
00398
00400
00403 QString mpatrimonialview::getnommasa() {
00404 _depura("mpatrimonialview::getnommasa", 0);
00405 _depura("END mpatrimonialview::getnommasa", 0);
00406 return descmpatrimonial->text().toAscii();
00407 }
00408