public bool Eliminar(int n_IdDetraccion, int n_IdTesoreria) { DatosMySql xMiFuncion = new DatosMySql(); CD_tes_tesoreria funTes = new CD_tes_tesoreria(); MySqlTransaction trans; bool booOk = false; xMiFuncion.ReAbrirConeccion(mysConec); trans = mysConec.BeginTransaction(); try { string[,] arrParametros = new string[1, 3] { { "n_id", "System.INT16", n_IdDetraccion.ToString() } }; if (xMiFuncion.StoreEjecutar("con_regdetracciones_delete", arrParametros, mysConec) == false) { b_OcurrioError = xMiFuncion.booOcurrioError; c_ErrorMensaje = xMiFuncion.StrErrorMensaje; n_ErrorNumber = xMiFuncion.IntErrorNumber; } else { CD_con_regdetracciones o_det = new CD_con_regdetracciones(); DataTable dt = new DataTable(); o_det.mysConec = mysConec; o_det.TraerRegistro(n_IdDetraccion); dt = o_det.dtLista; if (dt.Rows.Count != 0) { string[,] arrParametros2 = new string[3, 3] { { "n_idreg", "System.INT64", n_IdDetraccion.ToString() }, { "n_importe", "System.DOUBLE", Convert.ToDouble(dt.Rows[0]["n_imp"]).ToString() }, { "n_tipo", "System.INT16", "1" } }; // ACTUALIZAMOS EL SALDO DEL DOCUMENTO DE COMPRA if (xMiFuncion.StoreEjecutar("log_compras_actualizarsaldo", arrParametros2, mysConec) == false) { b_OcurrioError = xMiFuncion.booOcurrioError; c_ErrorMensaje = xMiFuncion.StrErrorMensaje; n_ErrorNumber = xMiFuncion.IntErrorNumber; trans.Rollback(); return(booOk); } } if (n_IdTesoreria != 0) { funTes.mysConec = mysConec; funTes.b_DesdeOtraCapa = true; if (funTes.Eliminar(n_IdTesoreria) == false) { b_OcurrioError = funTes.b_OcurrioError; c_ErrorMensaje = funTes.c_ErrorMensaje; n_ErrorNumber = funTes.n_ErrorNumber; } } 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); } }
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); } }