public bool Actualizar(BE_TES_TESORERIA entTesoreria, List <BE_TES_TESORERIAORI> lstTesoreriaOri, List <BE_TES_TESORERIAORIDET> lstTesoreriaOriDet, List <BE_TES_TESORERIADES> lstTesoreriaDes, List <BE_TES_TESORERIADESDET> lstTesoreriaDesDet, int n_TipoRegistro) { CD_tes_tesoreria miFun = new CD_tes_tesoreria(); bool booOk = false; miFun.mysConec = mysConec; if (miFun.TraerRegistro(entTesoreria.n_id) == true) { miFun.DtRegistroDesDet = miFun.DtRegistroDesDet; } if (miFun.Actualizar(entTesoreria, lstTesoreriaOri, lstTesoreriaOriDet, lstTesoreriaDes, lstTesoreriaDesDet) == true) { //GENERAMOS EL ASIENTO CONTABLE mysConec = FunMysql.ReAbrirConeccion(mysConec); //entTesoreria.n_id = miFun.n_IdGenerado; string c_NumAsi = entTesoreria.c_numreg; CN_con_diario funCon = new CN_con_diario(); funCon.mysConec = mysConec; funCon.STU_SISTEMA = STU_SISTEMA; if (funCon.GenerarAsientoTesoreria(STU_SISTEMA.EMPRESAID, Convert.ToInt32(entTesoreria.n_id), STU_SISTEMA.ANOTRABAJO, STU_SISTEMA.MESTRABAJO, 1, c_NumAsi, n_TipoRegistro) == true) { //mysConec = FunMysql.ReAbrirConeccion(mysConec); //c_NumAsi = funCon.c_NewNumAsiento; //miFun.AgregarNumAsi(entTesoreria.n_id, c_NumAsi); booOk = true; } else { b_OcurrioError = funCon.b_OcurrioError; c_ErrorMensaje = funCon.c_ErrorMensaje; n_ErrorNumber = funCon.n_ErrorNumber; } } else { b_OcurrioError = miFun.b_OcurrioError; c_ErrorMensaje = miFun.c_ErrorMensaje; n_ErrorNumber = miFun.n_ErrorNumber; } return(booOk); }
public bool Actualizar(BE_CON_REGDETRACCIONES e_Detracciones) { bool booOk = false; DatosMySql xMiFuncion = new DatosMySql(); MySqlTransaction trans; int n_idtes = 0; int n_idet = 0; CD_tes_tesoreria funTes = new CD_tes_tesoreria(); xMiFuncion.ReAbrirConeccion(mysConec); trans = mysConec.BeginTransaction(); try { CD_con_regdetracciones o_det = new CD_con_regdetracciones(); DataTable dt = new DataTable(); o_det.mysConec = mysConec; o_det.TraerRegistro(e_Detracciones.n_id); dt = o_det.dtLista; if (e_Detracciones.n_tipmov == 1) { string[,] arrParametros3 = new string[3, 3] { { "n_idreg", "System.INT64", e_Detracciones.n_iddoccom.ToString() }, { "n_importe", "System.DOUBLE", e_Detracciones.n_imp.ToString("0.00") }, { "n_tipo", "System.INT16", "1" } }; // ACTUALIZAMOS EL SALDO DEL DOCUMENTOD E COMPRA if (xMiFuncion.StoreEjecutar("log_compras_actualizarsaldo2", arrParametros3, mysConec) == false) { b_OcurrioError = xMiFuncion.booOcurrioError; c_ErrorMensaje = xMiFuncion.StrErrorMensaje; n_ErrorNumber = xMiFuncion.IntErrorNumber; trans.Rollback(); return(booOk); } } else { string[,] arrParametros4 = new string[3, 3] { { "n_id", "System.INT64", e_Detracciones.n_iddoccom.ToString() }, { "n_saldo", "System.DOUBLE", e_Detracciones.n_imp.ToString("0.00") }, { "n_tipo", "System.INT16", "1" } }; // ACTUALIZAMOS EL SALDO DEL DOCUMENTO DE VENTA if (xMiFuncion.StoreEjecutar("vta_ventas_actualizarsaldo2", arrParametros4, mysConec) == false) { b_OcurrioError = xMiFuncion.booOcurrioError; c_ErrorMensaje = xMiFuncion.StrErrorMensaje; n_ErrorNumber = xMiFuncion.IntErrorNumber; trans.Rollback(); return(booOk); } } if (xMiFuncion.StoreEjecutar("con_regdetracciones_actualizar", e_Detracciones, mysConec, null) == false) { b_OcurrioError = xMiFuncion.booOcurrioError; c_ErrorMensaje = xMiFuncion.StrErrorMensaje; n_ErrorNumber = xMiFuncion.IntErrorNumber; trans.Rollback(); return(booOk); } else { if (e_Detracciones.n_aplipag == 1) { n_idet = e_Detracciones.n_id; // INSERTAMOS EL REGISTRO DE TESORERIA funTes.b_DesdeOtraCapa = true; funTes.mysConec = mysConec; if (e_Detracciones.n_idtes == 0) { booOk = funTes.Insertar(e_Tesoreria, l_TesOri, l_TesOriDet, l_TesDes, l_TesDesDet); } else { booOk = funTes.Actualizar(e_Tesoreria, l_TesOri, l_TesOriDet, l_TesDes, l_TesDesDet); } if (booOk == false) { b_OcurrioError = funTes.b_OcurrioError; c_ErrorMensaje = funTes.c_ErrorMensaje; n_ErrorNumber = funTes.n_ErrorNumber; trans.Rollback(); return(booOk); } else { n_idtes = funTes.n_IdGenerado; //e_Detracciones.n_idtes; n_IdTesoreria = n_idtes; string[,] arrParametros = new string[2, 3] { { "n_iddet", "System.INT64", n_idet.ToString() }, { "n_idtes", "System.INT64", n_idtes.ToString() } }; // ACTUALIZAMOS EL ID DE TESORERIA EN LA TABLA DETRACCION if (xMiFuncion.StoreEjecutar("con_regdetracciones_actualizar_id_tesoreria", arrParametros, mysConec) == false) { b_OcurrioError = xMiFuncion.booOcurrioError; c_ErrorMensaje = xMiFuncion.StrErrorMensaje; n_ErrorNumber = xMiFuncion.IntErrorNumber; trans.Rollback(); return(booOk); } // ACTUALIZAMOS EL SALDO DE LOS DOCUMETOS if (e_Detracciones.n_tipmov == 1) { // ACTUALIZAMOS EL SALDO DE LA COMPRA string[,] arrParametros2 = new string[3, 3] { { "n_idreg", "System.INT64", e_Detracciones.n_iddoccom.ToString() }, { "n_importe", "System.DOUBLE", e_Detracciones.n_imp.ToString("0.00") }, { "n_tipo", "System.INT16", "2" } }; // ACTUALIZAMOS EL SALDO DEL DOCUMENTO DE COMPRA if (xMiFuncion.StoreEjecutar("log_compras_actualizarsaldo2", arrParametros2, mysConec) == false) { b_OcurrioError = xMiFuncion.booOcurrioError; c_ErrorMensaje = xMiFuncion.StrErrorMensaje; n_ErrorNumber = xMiFuncion.IntErrorNumber; trans.Rollback(); return(booOk); } } else { // ACTUALIZAMOS EL SALDO DE LA VENTA string[,] arrParametros4 = new string[3, 3] { { "n_id", "System.INT64", e_Detracciones.n_iddoccom.ToString() }, { "n_saldo", "System.DOUBLE", e_Detracciones.n_imp.ToString("0.00") }, { "n_tipo", "System.INT16", "2" } }; // ACTUALIZAMOS EL SALDO DEL DOCUMENTO DE VENTA if (xMiFuncion.StoreEjecutar("vta_ventas_actualizarsaldo2", arrParametros4, mysConec) == false) { b_OcurrioError = xMiFuncion.booOcurrioError; c_ErrorMensaje = xMiFuncion.StrErrorMensaje; n_ErrorNumber = xMiFuncion.IntErrorNumber; trans.Rollback(); return(booOk); } } } } else { // SI NO ESTA PAGANDO LA DETRACCION ELIMINAMOS EL ABONO EN TESORERIA SI ES QUE LO TUVIERA if (e_Detracciones.n_idtes != 0) { string[,] arrParametros2 = new string[1, 3] { { "n_id", "System.INT64", e_Detracciones.n_idtes.ToString() } }; if (xMiFuncion.StoreEjecutar("tes_tesoreria_delete", arrParametros2, mysConec) == false) { b_OcurrioError = xMiFuncion.booOcurrioError; c_ErrorMensaje = xMiFuncion.StrErrorMensaje; n_ErrorNumber = xMiFuncion.IntErrorNumber; trans.Rollback(); return(booOk); } string[,] arrParametros4 = new string[2, 3] { { "n_iddet", "System.INT64", e_Detracciones.n_id.ToString() }, { "n_idtes", "System.INT64", "0" } }; // ACTUALIZAMOS EL ID DE TESORERIA EN LA TABLA DETRACCION if (xMiFuncion.StoreEjecutar("con_regdetracciones_actualizar_id_tesoreria", arrParametros4, mysConec) == false) { b_OcurrioError = xMiFuncion.booOcurrioError; c_ErrorMensaje = xMiFuncion.StrErrorMensaje; n_ErrorNumber = xMiFuncion.IntErrorNumber; trans.Rollback(); return(booOk); } if (e_Detracciones.n_tipmov == 1) { string[,] arrParametros5 = new string[3, 3] { { "n_idreg", "System.INT64", e_Detracciones.n_iddoccom.ToString() }, { "n_importe", "System.DOUBLE", e_Detracciones.n_imp.ToString("0.00") }, { "n_tipo", "System.INT16", "1" } // ESTE DATO INDICA SI SE SUMA O RESTA EL SALDO (1 = SUMA ; 2 = RESTA) }; // ACTUALIZAMOS EL SALDO DEL DOCUMENTOD E COMPRA if (xMiFuncion.StoreEjecutar("log_compras_actualizarsaldo2", arrParametros5, mysConec) == false) { b_OcurrioError = xMiFuncion.booOcurrioError; c_ErrorMensaje = xMiFuncion.StrErrorMensaje; n_ErrorNumber = xMiFuncion.IntErrorNumber; trans.Rollback(); return(booOk); } } else { // ACTUALIZAMOS EL SALDO DE LA VENTA string[,] arrParametros5 = new string[3, 3] { { "n_id", "System.INT64", e_Detracciones.n_iddoccom.ToString() }, { "n_saldo", "System.DOUBLE", e_Detracciones.n_imp.ToString("0.00") }, { "n_tipo", "System.INT16", "1" } }; // ACTUALIZAMOS EL SALDO DEL DOCUMENTO DE VENTA if (xMiFuncion.StoreEjecutar("vta_ventas_actualizarsaldo2", arrParametros5, mysConec) == false) { b_OcurrioError = xMiFuncion.booOcurrioError; c_ErrorMensaje = xMiFuncion.StrErrorMensaje; n_ErrorNumber = xMiFuncion.IntErrorNumber; trans.Rollback(); return(booOk); } } } } booOk = true; } trans.Commit(); return(booOk); } catch (Exception exc) { // SI SUCEDE UN ERROR DEVOLVEMOS FALSO b_OcurrioError = true; c_ErrorMensaje = exc.Message.ToString(); n_ErrorNumber = exc.HResult; trans.Rollback(); return(booOk); } }