Concatenar documentos desde un arreglo de archivos

<< Clic para mostrar Tabla de Contenidos >>

Concatenar documentos desde un arreglo de archivos

 

Concatenar documentos desde un arreglo de archivos

  •     Introducción
  •     Ejemplo
  •         Concatenando documentos de Word
  •         Concatenando documentos en PDF
  • Introducción

    Esta sección describe cómo hacer uso de la función para concatenar documentos desde un arreglo de archivos.

     

    Ejemplo

    En el siguiente proceso de ejemplo, asuma que se tiene una entidad de proceso llamada OfficeSupplyRequest.

    Este proceso tiene el siguiente modelo de datos:

     

    ProductRequestDataModel

     

    Se desea que el atributo Request Summary tenga todos los documentos que hayan sido cargados a la colección Quotations. Para lograrlo, se usará el método concatenar documentos de un arreglo de archivos.

     

    note_pin

    Los documentos a concatenar deben ser del mismo formato, sea PDF o Microsoft Word. De otra manera, el método no funcionará correctamente.

     

    Concatenando documentos de Word

    Para este caso la función sería:

     

    CHelper.ConcatDocumentsFromFilesArrayToWord(filesArray)

     

    El parámetro de esta función es:

    filesArray: el arreglo con los datos de los archivos a ser concatenados.

     

    Para concatenar los archivos del ejemplo, necesitará del editor de expresiones:

     

    concatdoc_array_doc

     

    La anterior expresión es de la siguiente manera:

    var quotations = CHelper.GetValueAsCollection(<OfficeSupplyRequest.Quotations.Quotation>);
    var fileList = new ArrayList();
    for(var i=0; i<quotations.size(); i++){
      var quotation = quotations.get(i);
      var fileData = quotation.getXPath("Data");
      fileList.Add(fileData);
    }
    if(fileList.Count > 0){
      var file = CHelper.ConcatDocumentsFromFilesArrayToWord(fileList);
      var File = Me.newCollectionItem("MyProcess.ResultFile");
      File.setXPath("FileName", "AllQuotations_" + Me.Case.Id + ".docx");
      File.setXPath("Data", file);
    } else {
      CHelper.ThrowValidationError("No files");
    }

     

    El archivo resultante tendrá como nombre AllQuotations_[CaseNumber].docx.

     

    note_pin

    Por favor asegúrese que la extensión del archivo concuerde con el tipo de documento que utiliza el método.

     

    Concatenando documentos en PDF

    Para este caso la función sería:

     

    CHelper.ConcatDocumentsFromFilesArrayToPdf(filesArray)

     

    El parámetro de esta función es:

    filesArray: el arreglo con los datos de los archivos a ser concatenados.

     

     

    Para concatenar los archivos del ejemplo, necesitará del editor de expresiones:

     

    concatdoc_array_pdf

     

    La anterior expresión es de la siguiente manera:

    var quotations = CHelper.GetValueAsCollection(<OfficeSupplyRequest.Quotations.Quotation>);
    var fileList = new ArrayList();
    for(var i=0; i<quotations.size(); i++){
      var quotation = quotations.get(i);
      var fileData = quotation.getXPath("Data");
      fileList.Add(fileData);
    }
    if(fileList.Count > 0){
      var file = CHelper.ConcatDocumentsFromFilesArrayToPdf(fileList);
      var File = Me.newCollectionItem("MyProcess.ResultFile");
      File.setXPath("FileName", "AllQuotations_" + Me.Case.Id + ".pdf");
      File.setXPath("Data", file);
    } else {
      CHelper.ThrowValidationError("No files");
    }

     

    El archivo resultante tendrá como nombre AllQuotations_[CaseNumber].pdf.

     

    note_pin

    Por favor asegúrese que la extensión del archivo concuerde con el tipo de documento que utiliza el método.

    En este articulo