示例#1
0
 public override void Start()
 {
     using (ISession Sesion = m_SessionFactory.OpenSession())
     {
         using (ITransaction Trans = Sesion.BeginTransaction())
         {
             try
             {
                 NotaDebito NotaDebito = (NotaDebito)m_ObjectFlow;
                 // Creamos la Nota de Débito
                 Sesion.Save(NotaDebito);
                 Sesion.Flush();
                 // Creamos una Deuda.
                 if (NotaDebito.TipoNotaDebito.GeneraDeuda)
                 {
                     Deuda Deuda = new Deuda();
                     Deuda.Tipo           = NotaDebito.TipoNotaDebito.TipoDeuda;
                     Deuda.TipoDocumento  = "Nota de Débito";
                     Deuda.IDDocumento    = NotaDebito.ID;
                     Deuda.Descripcion    = NotaDebito.TipoDocumento.Nombre;
                     Deuda.IDSocioNegocio = (NotaDebito.Cliente != null) ? NotaDebito.Cliente.ID : null;
                     Deuda.Saldo          = NotaDebito.Total;
                     Deuda.Total          = NotaDebito.Total;
                     Sesion.Save(Deuda);
                 }
                 // Actualizamos la Numeración de la Nota de Débito
                 if (NotaDebito.TipoNotaDebito.GeneraNumeracionAlFinal)
                 {
                     SqlCommand SqlCmd = new SqlCommand();
                     SqlCmd.Connection  = (SqlConnection)Sesion.Connection;
                     SqlCmd.CommandText = "pSF_Generar_Numeracion";
                     SqlCmd.CommandType = System.Data.CommandType.StoredProcedure;
                     Trans.Enlist(SqlCmd);
                     SqlCmd.Parameters.AddWithValue("@Documento", "NotaDebito");
                     SqlCmd.Parameters.AddWithValue("@TipoDocumento", "TipoNotaDebito");
                     SqlCmd.Parameters.AddWithValue("@IDDocumento", NotaDebito.ID);
                     SqlCmd.Parameters.AddWithValue("@IDTipoDocumento", NotaDebito.TipoNotaDebito.ID);
                     SqlCmd.ExecuteNonQuery();
                 }
                 Trans.Commit();
                 m_ResultProcess = EnumResult.SUCESS;
             }
             catch (Exception ex)
             {
                 Trans.Rollback();
                 m_ResultProcess = EnumResult.ERROR;
                 SoftException.Control(ex);
             }
             finally {
                 base.Start();
             }
         }
     }
 }
示例#2
0
        public List <NotaDebito> ListadoNotaDebito()
        {
            List <NotaDebito> listadoDocumento = new List <NotaDebito>();
            SqlCommand        cmd = new SqlCommand("select * from Tipo_NotaDebito", cn);

            cn.Open();
            SqlDataReader dr = cmd.ExecuteReader();

            while (dr.Read())
            {
                NotaDebito nc = new NotaDebito();
                nc.CodigoNotaDebito      = dr["codigo_TipoDebito"].ToString();
                nc.DescripcionNotaDebito = dr["descripcion_Tipo"].ToString();
                listadoDocumento.Add(nc);
            }
            dr.Close();
            cn.Close();

            return(listadoDocumento);
        }
示例#3
0
 public override void Start()
 {
     using (ISession Sesion = m_SessionFactory.OpenSession())
     {
         using (ITransaction Trans = Sesion.BeginTransaction())
         {
             try
             {
                 NotaDebito NotaDebito = (NotaDebito)m_ObjectFlow;
                 // Eliminamos la Nota de Débito
                 Sesion.Delete(NotaDebito);
                 // Eliminamos la Deuda.
                 Deuda Deuda = (Deuda)HelperNHibernate.GetEntityByField("Deuda", "IDDocumento", NotaDebito.ID);
                 if (Deuda != null)
                 {
                     if (Deuda.Total > Deuda.Saldo)
                     {
                         throw new Exception("Ya se realizaron pagos de este documento.");
                     }
                     else
                     {
                         Sesion.Delete(Deuda);
                     }
                 }
                 Trans.Commit();
                 m_ResultProcess = EnumResult.SUCESS;
             }
             catch (Exception ex)
             {
                 Trans.Rollback();
                 m_ResultProcess = EnumResult.ERROR;
                 SoftException.Control(ex);
             }
             finally
             {
                 base.Start();
             }
         }
     }
 }
 public override void Start()
 {
     try
     {
         Soft.Facturacion.Entidades.Facturacion Facturacion = (Soft.Facturacion.Entidades.Facturacion)m_ObjectFlow;
         NotaDebito NotaDebito = new NotaDebito();
         NotaDebito.Cliente     = Facturacion.Cliente;
         NotaDebito.Responsable = Facturacion.Responsable;
         NotaDebito.Moneda      = Facturacion.Moneda;
         NotaDebito.NroFactura  = Facturacion.Numeracion;
         NotaDebito.IDFactura   = Facturacion.ID;
         m_ObjectFlow           = NotaDebito;
         m_EntidadSF            = (EntidadSF)HelperNHibernate.GetEntityByField("EntidadSF", "NombreClase", "NotaDebito");
         m_ResultProcess        = EnumResult.SUCESS;
     }
     catch (Exception ex)
     {
         m_ResultProcess = EnumResult.ERROR;
         SoftException.Control(ex);
     }
     base.Start();
 }