예제 #1
0
 /// <summary>
 /// Copia los atributos del objeto
 /// </summary>
 /// <param name="source">Objeto origen</param>
 protected void CopyValues(SerieInfo source)
 {
     if (source == null)
     {
         return;
     }
 }
        /// <summary>
        /// Copia los atributos del objeto
        /// </summary>
        /// <param name="source">Objeto origen</param>
        protected void CopyValues(AlbaranFacturaProveedorInfo source, IAcreedorInfo acreedor, InputInvoiceInfo factura, InputDeliveryInfo albaran)
        {
            if (source == null)
            {
                return;
            }

            Oid = source.Oid;
            _base.Record.OidAlbaran = source.OidAlbaran;
            _base.Record.OidFactura = source.OidFactura;

            SerieInfo serie = SerieInfo.Get(factura.OidSerie, false);

            _base.CodigoFactura = factura.Codigo;
            _total_factura      = factura.Total;
            _numero_serie       = serie.Identificador;
            _fecha_factura      = factura.Fecha;
            _prevision          = factura.Prevision;

            //INNER JOIN
            _codigo_cliente = acreedor.Codigo;
            _nombre         = acreedor.Nombre;
            _telefonos      = acreedor.Telefono;
            _dias_pago      = albaran.Fecha.Subtract(factura.Fecha).Days;
        }
예제 #3
0
        internal void CopyValues(SerieInfo source)
        {
            if (source == null)
            {
                return;
            }

            _record.CopyValues(source.Base.Record);

            _impuesto   = source.Impuesto;
            _p_impuesto = source.PImpuesto;
        }
예제 #4
0
        public static SerieFamiliaList GetChildList(SerieInfo parent, bool childs)
        {
            CriteriaEx criteria = SerieFamilia.GetCriteria(SerieFamilia.OpenSession());

            criteria.Query  = SerieFamiliaList.SELECT(parent);
            criteria.Childs = childs;

            SerieFamiliaList list = DataPortal.Fetch <SerieFamiliaList>(criteria);

            CloseSession(criteria.SessionCode);

            return(list);
        }
예제 #5
0
        public static ProductList GetList(IAcreedorInfo provider, SerieInfo serie, bool childs)
        {
            QueryConditions conditions = new QueryConditions
            {
                Acreedor     = provider,
                TipoAcreedor = new ETipoAcreedor[1] {
                    provider.ETipoAcreedor
                },
                Serie = serie
            };

            return(GetList(ProductList.SELECT(conditions), childs));
        }
예제 #6
0
        public static ProductList GetList(IAcreedorInfo acreedor, SerieInfo serie, bool childs, bool cache)
        {
            ProductList list;

            if (!Cache.Instance.Contains(typeof(ProductList)))
            {
                list = ProductList.GetList(acreedor, serie, childs);
                Cache.Instance.Save(typeof(ProductList), list);
            }
            else
            {
                list = Cache.Instance.Get(typeof(ProductList)) as ProductList;
            }

            return(list);
        }
예제 #7
0
        public static ProductList GetListBySerie(long oid_serie, bool childs)
        {
            CriteriaEx criteria = Batch.GetCriteria(Product.OpenSession());

            criteria.Childs = childs;

            SerieInfo item = Serie.Serie.New().GetInfo();

            item.Oid = oid_serie;

            criteria.Query = ProductList.SELECT(item);

            ProductList list = DataPortal.Fetch <ProductList>(criteria);

            CloseSession(criteria.SessionCode);
            return(list);
        }
예제 #8
0
        protected virtual void CopyFrom(SerieInfo source)
        {
            if (source == null)
            {
                return;
            }

            Oid = source.Oid;
            _base.Record.Nombre        = source.Nombre;
            _base.Record.Identificador = source.Identificador;
            _base.Record.Observaciones = source.Observaciones;
            _base.Record.Resumen       = source.Resumen;
            _base.Record.Cabecera      = source.Cabecera;
            //_tipo_serie = source.TipoSerie;
            _base.Record.Tipo        = source.Tipo;
            _base.Record.OidImpuesto = source.OidImpuesto;

            _base.Impuesto  = source.Impuesto;
            _base.PImpuesto = source.PImpuesto;
        }
예제 #9
0
 public static string SELECT(SerieInfo item)
 {
     return(SELECT(new Library.Store.QueryConditions {
         Serie = item
     }));
 }
예제 #10
0
 public static string SELECT(SerieInfo item)
 {
     return(Product.SELECT(item, false));
 }
예제 #11
0
        public MovimientosStockListPorExpedienteRpt GetMovimientosStockListAgrupado(ExpedienteList items,
                                                                                    ProductInfo producto,
                                                                                    SerieInfo serie,
                                                                                    ReportFilter filter,
                                                                                    ReportFormat format)
        {
            MovimientosStockListPorExpedienteRpt doc = new MovimientosStockListPorExpedienteRpt();
            List <ExpedientePrint> pList             = new List <ExpedientePrint>();
            List <StockPrint>      movs = new List <StockPrint>();
            StockList stocks            = null;

            int movsCount = 0;

            foreach (ExpedientInfo item in items)
            {
                if (filter.SoloStock)
                {
                    if ((item.StockKilos == 0) || (item.StockBultos == 0))
                    {
                        continue;
                    }
                }

                movsCount = movs.Count;
                stocks    = (item.Stocks == null) ? StockList.GetListByExpediente(item.Oid, false) : item.Stocks;
                foreach (StockInfo stock in stocks)
                {
                    if (filter.SoloMermas)
                    {
                        if ((stock.OidAlbaran != 0) || (stock.Kilos >= 0))
                        {
                            continue;
                        }
                    }

                    if ((filter.FechaIni <= stock.Fecha) && (stock.Fecha <= filter.FechaFin))
                    {
                        if ((producto == null) && (serie == null))
                        {
                            movs.Add(StockPrint.New(stock));
                        }
                        else if (producto != null)
                        {
                            if ((producto.Oid == stock.OidProducto) && (serie == null))
                            {
                                movs.Add(StockPrint.New(stock));
                            }
                            else if ((producto.Oid == stock.OidProducto) && (serie.Oid == stock.OidSerie))
                            {
                                movs.Add(StockPrint.New(stock));
                            }
                        }
                        else if (serie.Oid == stock.OidSerie)
                        {
                            movs.Add(StockPrint.New(stock));
                        }
                    }
                }

                if (movsCount < movs.Count)
                {
                    pList.Add(item.GetPrintObject());
                }
            }

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

            doc.SetDataSource(pList);
            doc.Subreports["StocksSubReport"].SetDataSource(movs);

            FormatHeader(doc);
            FormatReport(doc, filter, format);

            return(doc);
        }
예제 #12
0
 internal static string SELECT(long oid, bool lockTable)
 {
     return(SELECT(new QueryConditions {
         Serie = SerieInfo.New(oid)
     }, lockTable));
 }