예제 #1
0
        /// <summary>
        /// Obtiene el PDF desde febos de los documentos seleccionados en grilla y levante el PDF en programa predeterminado.
        /// </summary>
        public static ResultMessage GestionarVisualizar(SAPbouiCOM.Form oForm, Int32 Row)
        {
            ResultMessage result = new ResultMessage();

            try
            {
                SAPbouiCOM.Matrix oMatrix = oForm.Items.Item("oMtx").Specific;
                String            FebosId = oMatrix.Columns.Item("col_FebId").Cells.Item(Row).Specific.Value;

                // Descargar PDF
                var clientGetPDF  = new RestClient();
                var requestGetPDF = new RestRequest(String.Format(ConfigurationManager.AppSettings["GetXML"], FebosId), Method.GET);

                requestGetPDF.RequestFormat = DataFormat.Json;
                requestGetPDF.AddHeader("token", FuncionesComunes.ObtenerToken());
                requestGetPDF.AddHeader("empresa", FuncionesComunes.ObtenerRut());
                requestGetPDF.AddHeader("imagen", "si");
                requestGetPDF.AddHeader("tipoImagen", "0");

                IRestResponse responseGetPDF = clientGetPDF.Execute(requestGetPDF);

                if (responseGetPDF.StatusDescription.Equals("OK"))
                {
                    RootObjectGetXML x = JsonConvert.DeserializeObject <RootObjectGetXML>(responseGetPDF.Content);

                    String link = x.imagenLink;

                    ProcessStartInfo info = new ProcessStartInfo();
                    info.FileName    = link;
                    info.Verb        = "open";
                    info.WindowStyle = ProcessWindowStyle.Maximized;
                    Process.Start(info);
                }
                result.Success = true;
                return(result);
            }
            catch (Exception ex)
            {
                result.Success = false;
                result.Mensaje = ex.Message;
                return(result);
            }
        }