Esempio n. 1
0
        /// <summary>
        /// Recupera el objeto addenda del tipo y comprobante solicitado
        /// </summary>
        /// <param name="id_addenda_emisor">Id de relación Addenda, Emisor y Receptor</param>
        /// <param name="id_comprobante">Id de Comprobante</param>
        /// <returns></returns>
        public static AddendaComprobante RecuperaAddendaComprobanteV33(int id_addenda_emisor, int id_comprobante)
        {   //Definiendo objeto de resultado
            AddendaComprobante addenda = new AddendaComprobante();

            //Realizando consulta a base de datos
            using (DataTable mit = CargaAddendaEmisorComprobanteV33(id_addenda_emisor, id_comprobante))
            {         //Si el origen de datos es válido
                if (Validacion.ValidaOrigenDatos(mit))
                {     //Para cada registro devuelto
                    foreach (DataRow r in mit.Rows)
                    { //Asignando atributos de registo
                        addenda = new AddendaComprobante(Convert.ToInt32(r["IdAddendaComprobante"]));
                    }
                }
            }
            //Devolviendo resultado
            return(addenda);
        }
Esempio n. 2
0
        /// <summary>
        /// Realiza la deshabilitación de los registros addenda ligados al comprobante indicado
        /// </summary>
        /// <param name="id_comprobante">Id de Comprobante</param>
        /// <param name="id_usuario">Id de Usuario</param>
        /// <param name="transaccion">Transacción</param>
        /// <returns></returns>
        public static RetornoOperacion EliminaAddendasComprobanteV33(int id_comprobante, int id_usuario)
        {
            //Definiendo objeto de resultado
            RetornoOperacion resultado = new RetornoOperacion(id_comprobante);

            //Creamos la transacción
            using (System.Transactions.TransactionScope scope = Transaccion.InicializaBloqueTransaccional(System.Transactions.IsolationLevel.ReadCommitted))
            {
                //Cargando Addendas del comprobante
                using (DataTable mit = CargaAddendaEmisorComprobanteV33(0, id_comprobante))
                {
                    //Si existen registros
                    if (Validacion.ValidaOrigenDatos(mit))
                    {
                        //Para cada una de las addendas capturadas
                        foreach (DataRow a in mit.Rows)
                        {
                            //Instanciando registros
                            using (AddendaComprobante ac = new AddendaComprobante(Convert.ToInt32(a["IdAddendaComprobante"])))
                            {
                                //Realziando deshabilitación
                                resultado = ac.DeshabilitaAddendaComprobante(id_usuario);

                                //Si existe error
                                if (!resultado.OperacionExitosa)
                                {
                                    //Saliendo de ciclo
                                    break;
                                }
                            }
                        }
                    }
                }
                //Validamos Resultado
                if (resultado.OperacionExitosa)
                {
                    //Finalizamos transacción
                    scope.Complete();
                }
            }

            //Devolviendo resultado
            return(resultado);
        }