public bool Guardar(System.Data.SqlClient.SqlTransaction transaccion)
        {
            if (this.GuiaFacturaDetalleConceptoID == 0)
            {
                //Primero Iterar en la colección para obtener el importe con el que se guarda el concepto facturable
                this.Importe = 0;
                AdministrarGuias          oAdmi = new AdministrarGuias();
                DsSubConceptosFacturables ds    = oAdmi.GetSubConceptosFacturablesDataSet();

                for (int i = 0; i < subConceptosFactu.getCount(); i++)
                {
                    IGuiaFacturaDetalleSubConcFacturable subCon = subConceptosFactu.GetGuiaFacturaDetalleSubConcFactu(i);
                    DsSubConceptosFacturables.DatosRow[] drs    = (DsSubConceptosFacturables.DatosRow[])ds.Datos.Select("SubConceptoFacturableID = " + (int)subCon.SubConceptoFacturableID);
                    if (drs.Length > 0)
                    {
                        double impSubCon = (drs[0].Suma)? subCon.Importe : -(subCon.Importe);
                        this.Importe = this.Importe + impSubCon;
                    }
                }
                this.Importe = this.Importe < 0 ? 0 : this.Importe;

                //this.GuiaFacturaDetalleConceptoID = Convert.ToInt32(Config.Conexion.EjecutarResultadoUnico(transaccion,"GuiaFacturaDetalleConceptoFacturableINS", this.GuiaID,this.GuiaFacturaDetalleID, (int)this.ConceptoFacturableID,Utiles.BaseDatos.DoubleToSql(this.Importe)));
                this.GuiaFacturaDetalleConceptoID = Convert.ToInt32(Config.Conexion.EjecutarResultadoUnico(transaccion, "GuiaFacturaDetalleConceptoFacturableINS", this.GuiaID, this.GuiaFacturaDetalleID, (int)this.ConceptoFacturableID, this.Importe));
                if (subConceptosFactu.getCount() > 0)
                {
                    subConceptosFactu.GuiaFacturaDetalleConceptoID = this.GuiaFacturaDetalleConceptoID;
                    subConceptosFactu.Guardar(transaccion);
                }
            }
            return(true);
        }
Beispiel #2
0
        public bool EmitirGuiaRendicion(IUsuarios usuario)
        {
            using (SqlConnection conexion = new SqlConnection())
            {
                SqlTransaction transaccion = null;
                conexion.ConnectionString = Config.ConnectionString;
                try
                {
                    conexion.Open();
                    transaccion = conexion.BeginTransaction();

                    Agencia ag = new Agencia();
                    ag.AgenciaID = AgenciaOrigenID;
                    ag.CargarDatosCAIParaTipoGuiaFactura("B");

                    NumeroCAI = ag.NumeroCAI;

                    AdministrarGuias admGuiaO = new AdministrarGuias();
                    admGuiaO.TipoGuia         = NegociosSisPackInterface.SisPack.TipoGuia("9");
                    this.EmpresaFacturacionID = admGuiaO.ObtieneEmpresaFacturacion();

                    if (base.Emitir(transaccion, usuario))
                    {
                        guiasRendidas.GuiaID         = this.GuiaID;
                        guiasRendidas.AgenciaUsuaria = this.AgenciaOrigenID;
                        this.guiasRendidas.Guardar(transaccion, usuario);
                    }

                    transaccion.Commit();
                    return(true);
                }
                catch (Exception ex)
                {
                    transaccion.Rollback();
                    throw ex;
                }
            }
        }
        static public IAdministrarGuias GetAdministrarGuias()
        {
            IAdministrarGuias oAdministrarGuias = new AdministrarGuias();

            return((IAdministrarGuias)oAdministrarGuias);
        }