public SesionCronogramaListSubRpt GetSesionCronogramaListReport(CronogramaInfo cronograma,
                                                                        SesionCronogramaList sesiones, ModuloList modulos,
                                                                        ClaseTeoricaList teoricas, ClasePracticaList practicas)
        {
            if (cronograma == null)
            {
                return(null);
            }
            if (sesiones.Count == 0)
            {
                return(null);
            }

            SesionCronogramaListSubRpt doc = new SesionCronogramaListSubRpt();

            List <SesionCronogramaPrint> pList = new List <SesionCronogramaPrint>();

            foreach (SesionCronogramaInfo sesion in sesiones)
            {
                pList.Add(sesion.GetPrintObject(modulos, teoricas, practicas));
            }

            doc.SetDataSource(pList);
            doc.SetParameterValue("Empresa", Schema.Name);
            if (Schema.Oid == 2)
            {
                ((CrystalDecisions.CrystalReports.Engine.TextObject)(doc.Section5.ReportObjects["Text1"])).Color = System.Drawing.Color.FromArgb(13, 176, 46);
            }

            return(doc);
        }
 public static string SELECT(CronogramaInfo item)
 {
     return(Sesion_Promocion.SELECT(new QueryConditions()
     {
         Cronograma = item, ESesionPromocion = ESesionPromocion.Cronograma
     }, true));
 }
        public static string SELECT_BY_CRONOGRAMA(long oid_cronograma)
        {
            QueryConditions conditions = new QueryConditions()
            {
                Cronograma = CronogramaInfo.New()
            };

            conditions.Cronograma.Oid = oid_cronograma;

            return(SesionCronograma.SELECT(conditions, true));
        }
Example #4
0
        /// <summary>
        /// Copia los atributos del objeto
        /// </summary>
        /// <param name="source">Objeto origen</param>
        protected void CopyValues(CronogramaInfo source, CompanyInfo empresa, PlanEstudiosInfo plan, PromocionInfo promocion)
        {
            if (source == null)
            {
                return;
            }

            Oid = source.Oid;
            _base.Record.OidPlan       = source.OidPlan;
            _base.Record.OidPromocion  = source.OidPromocion;
            _base.Record.FechaCreacion = source.FechaCreacion;
            _base.Record.Observaciones = source.Observaciones;

            if (plan != null)
            {
                _plan = plan.Nombre;
            }
            if (promocion != null)
            {
                _promocion = promocion.Nombre;
            }

            if (empresa == null)
            {
                return;
            }

            string path = CompanyInfo.GetLogoPath(AppContext.ActiveSchema.Oid);

            // Cargamos la imagen en el buffer
            if (File.Exists(path))
            {
                //Declaramos fs para poder abrir la imagen.
                FileStream fs = new FileStream(path, FileMode.Open, FileAccess.Read);

                // Declaramos un lector binario para pasar la imagen a bytes
                BinaryReader br = new BinaryReader(fs);
                _logo_emp = new byte[(int)fs.Length];
                br.Read(LogoEmp, 0, (int)fs.Length);
                br.Close();
                fs.Close();
            }
        }
        public CronogramaRpt GetCronogramaReport(CronogramaInfo item, CompanyInfo empresa, ModuloList modulos,
                                                 ClaseTeoricaList teoricas, ClasePracticaList practicas)
        {
            if (item == null)
            {
                return(null);
            }

            CronogramaRpt doc = new CronogramaRpt();

            List <CronogramaPrint>      pList    = new List <CronogramaPrint>();
            List <SesionCronogramaInfo> sesiones = new List <SesionCronogramaInfo>();

            foreach (SesionCronogramaInfo ses in item.Sesiones)
            {
                sesiones.Add(ses.GetPrintObject(modulos, teoricas, practicas));
            }

            //Si no existen conceptos, no tiene sentido un informe detallado. Además, falla en Crystal Reports
            if (sesiones.Count <= 0)
            {
                return(null);
            }


            pList.Add(item.GetPrintObject(empresa));
            doc.Subreports["SesionCronogramaListSubRpt.rpt"].SetDataSource(sesiones);

            doc.SetDataSource(pList);
            doc.SetParameterValue("Empresa", empresa.Name);
            if (empresa.Oid == 2)
            {
                ((CrystalDecisions.CrystalReports.Engine.TextObject)(doc.Section5.ReportObjects["Text1"])).Color = System.Drawing.Color.FromArgb(13, 176, 46);
            }

            return(doc);
        }