I have a script to get information from a PDF file in a module from CRM but it is bringing it to me as base64, I need to convert it to PDF to be able to view it from zoho creator.
Please help me..,
SCRIPT:
void obtenerPDFsDesdeCRM(int IDlead)
{
LeadRec = Add_New_Lead[ID == IDlead];
response_process = Map();
// info LeadRec.toMap();
if(LeadRec != null && LeadRec.IDContactCRM != null)
{
// Configurar parámetros de la API
optionalmap = Map();
optionalmap.put("module","Contacts");
// Obtener los registros relacionados con el contacto, incluyendo los archivos adjuntos
archivosAdjuntos = zoho.crm.getRelatedRecords("Attachments","Contacts",LeadRec.IDContactCRM,1,200);
// info archivosAdjuntos;
listaPDFs = List();
if(archivosAdjuntos != null)
{
// Filtrar solo los archivos PDF
for each archivo in archivosAdjuntos
{
idArchivo = archivo.get("$file_id");
nombreArchivo = archivo.get("File_Name");
if(nombreArchivo.endsWith(".pdf"))
{
// Concatenar el enlace de descarga del PDF a la cadena
listaPDFs.add(idArchivo);
}
}
}
// Eliminar la última coma si existen enlaces
if(listaPDFs != "")
{
idFile = listaPDFs.get(0);
token = "xxxxxx";
//headers
headers = Map();
headers.put("Authorization","Bearer " + " " + token);
headers.put("Accept","application/pdf");
info "header::: " + headers;
info "URL" + url;
pdfContent = invokeurl
[
url :url
type :GET
headers:headers
];
// info "pdfContent" + pdfContent;
// info "idFile" + idFile;
// response_process.put("pdf",idFile);
encoded_file = zoho.encryption.base64Encode(pdfContent);
// info encoded_file;
// archivo = encoded_file.toFile("archivoEjemplo.pdf");
LeadRec.EnlacePDF=archivo;
info "LINK" + LeadRec.EnlacePDF;
}
}
else
{
info "No se encontró el Lead o IDContactCRM no está definido.";
}
}