public bool Insertar(ref BE_PRO_PRODUCCION entProduccion, List <BE_PRO_PRODUCCIONINS> LstInsumos)
        {
            bool             booResult  = false;
            DatosMySql       xMiFuncion = new DatosMySql();
            MySqlTransaction trans;
            int n_row = 0;

            trans = mysConec.BeginTransaction();

            try
            {
                if (xMiFuncion.StoreEjecutar("pro_produccion_insertar", entProduccion, mysConec, 1) == true)
                {
                    entProduccion.n_id = Convert.ToInt32(xMiFuncion.intIdGenerado);
                    for (n_row = 0; n_row <= LstInsumos.Count - 1; n_row++)
                    {
                        BE_PRO_PRODUCCIONINS entProIns = new BE_PRO_PRODUCCIONINS();

                        entProIns         = LstInsumos[n_row];
                        entProIns.n_idpro = entProduccion.n_id;
                        if (xMiFuncion.StoreEjecutar("pro_produccionins_insertar", entProIns, mysConec, null) == false)
                        {
                            booOcurrioError = xMiFuncion.booOcurrioError;
                            StrErrorMensaje = xMiFuncion.StrErrorMensaje;
                            IntErrorNumber  = xMiFuncion.IntErrorNumber;
                            trans.Rollback();
                            return(booResult);
                        }
                        booResult = true;
                    }
                }
                else
                {
                    booOcurrioError = xMiFuncion.booOcurrioError;
                    StrErrorMensaje = xMiFuncion.StrErrorMensaje;
                    IntErrorNumber  = xMiFuncion.IntErrorNumber;
                    trans.Rollback();
                    return(booResult);
                }
                booResult = true;
                trans.Commit();
                return(booResult);
            }
            catch (Exception exc)
            {
                // SI SUCEDE UN ERROR DEVOLVEMOS FALSO
                booOcurrioError = xMiFuncion.booOcurrioError;
                StrErrorMensaje = xMiFuncion.StrErrorMensaje;
                IntErrorNumber  = xMiFuncion.IntErrorNumber;
                trans.Rollback();
                return(booResult);
            }
        }
        public bool Actualizar(BE_PRO_PRODUCCION entProduccion, List <BE_PRO_PRODUCCIONINS> LstInsumos)
        {
            bool             booResult  = false;
            int              n_row      = 0;
            DatosMySql       xMiFuncion = new DatosMySql();
            MySqlTransaction trans;

            trans = mysConec.BeginTransaction();
            try
            {
                string[,] arrParametros = new string[1, 3] {
                    { "n_idpro", "System.INT64", entProduccion.n_id.ToString() }
                };
                // BORRAMOS EL DETALLE DE LOS INSUMOS

                if (xMiFuncion.StoreEjecutar("pro_produccionins_delete", arrParametros, mysConec) == false)
                {
                    booOcurrioError = xMiFuncion.booOcurrioError;
                    StrErrorMensaje = xMiFuncion.StrErrorMensaje;
                    IntErrorNumber  = xMiFuncion.IntErrorNumber;
                    trans.Rollback();
                    return(booResult);
                }

                if (xMiFuncion.StoreEjecutar("pro_produccion_actualizar", entProduccion, mysConec, null) == true)
                {
                    for (n_row = 0; n_row <= LstInsumos.Count - 1; n_row++)
                    {
                        BE_PRO_PRODUCCIONINS entProIns = new BE_PRO_PRODUCCIONINS();

                        entProIns         = LstInsumos[n_row];
                        entProIns.n_idpro = entProduccion.n_id;
                        if (xMiFuncion.StoreEjecutar("pro_produccionins_insertar", entProIns, mysConec, null) == false)
                        {
                            booOcurrioError = xMiFuncion.booOcurrioError;
                            StrErrorMensaje = xMiFuncion.StrErrorMensaje;
                            IntErrorNumber  = xMiFuncion.IntErrorNumber;
                            trans.Rollback();
                            return(booResult);
                        }
                        booResult = true;
                    }
                }
                else
                {
                    booOcurrioError = xMiFuncion.booOcurrioError;
                    StrErrorMensaje = xMiFuncion.StrErrorMensaje;
                    IntErrorNumber  = xMiFuncion.IntErrorNumber;
                    trans.Rollback();
                    return(booResult);
                }
                booResult = true;
                trans.Commit();
                return(booResult);
            }
            catch (Exception exc)
            {
                // SI SUCEDE UN ERROR DEVOLVEMOS FALSO
                booOcurrioError = xMiFuncion.booOcurrioError;
                StrErrorMensaje = xMiFuncion.StrErrorMensaje;
                IntErrorNumber  = xMiFuncion.IntErrorNumber;
                trans.Rollback();
                return(booResult);
            }
        }