示例#1
0
        public static void PrintToPrinter(EtiAplicacao etiApp, string DocFiscalYearCode, string DocSeccion, string DocType, int DocNumber)
        {
            Eticadata.Views.Reports.ReportsGcePOS report = new Views.Reports.ReportsGcePOS(etiApp, "", ERP.EtiEnums.ExportWebFormat.PDF);

            byte[] reportBytes;

            var rptProp = new Eticadata.Common.EtiReportProperties()
            {
                TpDocAEmitir        = TpDocumentoAEmitir.Vendas,
                AbrevTpDoc          = DocType,
                CodExercicio        = DocFiscalYearCode,
                CodSeccao           = DocSeccion,
                Numero              = DocNumber,
                EtiApp              = etiApp,
                ExportaFicheiro     = false,
                SoExportacao        = false,
                ToPrinter           = true,
                IncrementPrintCount = true,
                Application         = ReportApplication.BackOffice,
                ExportaFormato      = "1"
            };

            reportBytes = report.EmiteDocumentos(rptProp);

            if (!string.IsNullOrEmpty(rptProp.ErrorDescription))
            {
                throw new Exception(rptProp.ErrorDescription);
            }
        }
        public IHttpActionResult PrintReport([FromBody] PrintInput docParams)
        {
            try
            {
                Eticadata.Views.Reports.ReportsGcePOS report = new Views.Reports.ReportsGcePOS(Eti.Aplicacao, "", ERP.EtiEnums.ExportWebFormat.PDF);
                EtiAplicacao etiapp = new EtiAplicacao();

                byte[] reportBytes;

                var rptProp = new Eticadata.Common.EtiReportProperties()
                {
                    TpDocAEmitir        = TpDocumentoAEmitir.Vendas,
                    AbrevTpDoc          = docParams.DocType,
                    CodExercicio        = docParams.DocFiscalYearCode,
                    CodSeccao           = docParams.DocSeccion,
                    Numero              = docParams.DocNumber,
                    EtiApp              = Eti.Aplicacao,
                    ExportaFicheiro     = false,
                    SoExportacao        = false,
                    ToPrinter           = true,
                    IncrementPrintCount = true,
                    //FrontOffBackOff = ReportApplication.BackOffice,
                    ExportaFormato = "1"
                };

                reportBytes = report.EmiteDocumentos(rptProp);

                if (!string.IsNullOrEmpty(rptProp.ErrorDescription))
                {
                    return(BadRequest(rptProp.ErrorDescription));
                }

                return(Ok(reportBytes));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.ToString()));
            }
        }