예제 #1
0
        public ReportClass GetListReport(OutputInvoiceList list, SerieList series)
        {
            if (list.Count == 0)
            {
                return(null);
            }

            OutputInvoiceListRpt doc = new OutputInvoiceListRpt();

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

            foreach (OutputInvoiceInfo item in list)
            {
                pList.Add(OutputInvoicePrint.New(item,
                                                 null,
                                                 null,
                                                 series.GetItem(item.OidSerie),
                                                 false));
            }

            doc.SetDataSource(pList);

            FormatHeader(doc);

            return(doc);
        }
예제 #2
0
        public ReportClass GetBenefitsReport(OutputInvoiceList list)
        {
            if (list.Count == 0)
            {
                return(null);
            }

            InformeBeneficioFacturaRpt doc = new InformeBeneficioFacturaRpt();

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

            foreach (OutputInvoiceInfo item in list)
            {
                pList.Add(OutputInvoicePrint.New(item, null, null, null, false));
            }

            doc.SetDataSource(pList);

            FormatHeader(doc);

            return(doc);
        }
        public string Encode(QREncodeVersion version, ETipoEntidad tipo, object source)
        {
            String txtEncodeData = string.Empty;

            txtEncodeData = "<l v=" + ((long)version).ToString() + " t=" + ((long)tipo).ToString() + " oid=OID_ITEM>";

            switch (tipo)
            {
            case ETipoEntidad.FacturaEmitida:
            {
                OutputInvoicePrint item = (OutputInvoicePrint)source;

                txtEncodeData = txtEncodeData.Replace("OID_ITEM", item.Oid.ToString());

                txtEncodeData += "<p>"
                                 + item.NumeroSerie + "|"
                                 + item.Fecha.ToShortDateString() + "|"
                                 + item.VatNumber + "|"
                                 + item.Codigo + "|"
                                 + item.Cliente + "|"
                                 + item.BaseImponible.ToString() + "|"
                                 + item.Impuestos.ToString() + "|"
                                 + item.Total.ToString() + "|"
                                 + "</p>";
            }
            break;

            case ETipoEntidad.Cobro:
            {
                CobroPrint item = (CobroPrint)source;

                txtEncodeData = txtEncodeData.Replace("OID_ITEM", item.Oid.ToString());

                txtEncodeData += "<p>"
                                 + item.Codigo + "|"
                                 + item.Fecha.ToShortDateString() + "|"
                                 + item.IDCobroS + "|"
                                 + item.EMedioPagoPrintLabel + "|"
                                 + item.NCliente + "|"
                                 + item.Cliente + "|"
                                 + item.Importe + "|"
                                 + item.CuentaBancaria + "|"
                                 + "</p>";

                if (item.CobroFacturas != null)
                {
                    txtEncodeData += "<sl t=" + ((long)ETipoEntidad.CobroFactura).ToString() + ">";

                    foreach (CobroFacturaInfo cf in item.CobroFacturas)
                    {
                        txtEncodeData += "<p>"
                                         + cf.CodigoFactura + "|"
                                         + cf.Cantidad + "|"
                                         + "</p>";
                    }

                    txtEncodeData += "</sl>";
                }
            }
            break;
            }

            txtEncodeData += "</l>";
            return(txtEncodeData);
        }
예제 #4
0
        public ReportClass GetDetailReport(OutputInvoiceInfo item,
                                           SerieInfo serie,
                                           ClienteInfo cliente,
                                           TransporterInfo transporter,
                                           FormatConfFacturaAlbaranReport conf)
        {
            if (item == null)
            {
                return(null);
            }

            List <OutputInvoiceLinePrint> conceptos = new List <OutputInvoiceLinePrint>();
            List <OutputInvoicePrint>     pList     = new List <OutputInvoicePrint>();

            foreach (OutputInvoiceLineInfo cfi in item.ConceptoFacturas)
            {
                conceptos.Add(cfi.GetPrintObject());
            }

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

            pList.Add(OutputInvoicePrint.New(item, cliente, transporter, serie));

            ProductList productos = ProductList.GetList(false);

            foreach (OutputInvoiceLinePrint cfp in conceptos)
            {
                if (cfp.OidProducto == 0)
                {
                    continue;
                }

                ProductInfo prod = productos.GetItem(cfp.OidProducto);
                if (prod != null)
                {
                    continue;
                }

                if (prod.AyudaKilo > 0)
                {
                    cfp.Concepto += " *";
                }
            }

            List <ImpuestoResumen> impuestos = new List <ImpuestoResumen>();

            foreach (DictionaryEntry impuesto in item.GetImpuestos())
            {
                impuestos.Add((ImpuestoResumen)impuesto.Value);
            }

            ReportClass doc = null;

            try
            {
                doc = GetReportFromName("Invoice", "OutputInvoiceRpt");
            }
            catch
            {
                doc = new OutputInvoiceRpt();
            }

            doc.SetDataSource(pList);
            doc.Subreports["ConceptosRpt"].SetDataSource(conceptos);

            if (doc.Subreports["ImpuestoResumenRpt"] != null)
            {
                doc.Subreports["ImpuestoResumenRpt"].SetDataSource(impuestos);
            }

            Library.Common.CompanyInfo empresa = Library.Common.CompanyInfo.Get(Schema.Oid, false);
            doc.SetParameterValue("nombreEmpresa", empresa.Name);
            doc.SetParameterValue("dirEmpresa", empresa.Direccion);
            doc.SetParameterValue("dir2Empresa", empresa.CodPostal + ". " + empresa.Municipio + ". " + empresa.Provincia);
            doc.SetParameterValue("CIFEmpresa", empresa.VatNumber);
            doc.SetParameterValue("TlfEmpresa", empresa.Telefonos);
            doc.SetParameterValue("FaxEmpresa", empresa.Fax);
            doc.SetParameterValue("WebEmpresa", empresa.Url);
            doc.SetParameterValue("nota", conf.nota);
            doc.SetParameterValue("ACuenta", (item.CobroFacturas != null) ? item.CobroFacturas.GetTotal() : 0);
            doc.SetParameterValue("CPEmpresa", empresa.CodPostal);
            doc.SetParameterValue("municipioEmpresa", empresa.Municipio);

            return(doc);
        }