Tabela - com escopo, global

  • Versão de lançamento: Xanadu
  • Atualizado 1 de ago. de 2024
  • 17 min. de leitura
  • Cria um objeto de tabela para adicionar a um documento PDF. Define os dados a serem usados em cada célula e define estilos, margens e alinhamento.

    Esta API faz parte do plug-in ServiceNow PDF Generator Utilities (com.snc.apppdfgenerator) e é fornecida no namespace sn_pdfgeneratorutils. O plug-in é ativado por padrão.

    Esta API é um componente usado com a API de documento para gerar um PDF.

    Crie um objeto Tabela usando os métodos nesta classe. Você pode usar essas classes adicionais para adicionar células, parágrafos e estilos à sua tabela:

    API da célula
    Crie uma célula usando a API da célula. Em seguida, adicione a célula à tabela usando um destes métodos:
    • Tabela.adicionarCélula()
    • Tabela.adicionarCélulaComEstilo()
    • Table.addHeaderCell ()
    • Tabela.adicionarCélulaDeImagem()
    • Table.addParagraphCell ()
    • Tabela.adicionarCélulaDeTexto()
    API de parágrafo
    Crie um parágrafo usando a API de parágrafo. Adicione o parágrafo a uma célula na tabela usando “Ccell.addParagraph()”.
    API de estilo
    Defina estilos, cores e bordas usando a API de estilo. Adicione os estilos à tabela usando um destes métodos:
    • Table.setDefaultStyle()
    • Table.setHeaderStyle()
    Você pode aplicar o objeto Tabela a um documento PDF usando a classe e o método a seguir.
    API Documento
    Use o método Document.addTable() para adicionar sua tabela a um documento PDF. Você pode usar o método Document.saveAsAttachment() para anexar o documento a um registro.

    Tabela - Tabela (booliano ltr, matriz columnWidths, booliano largeTable)

    Instancia um novo objeto de tabela com configurações de direção do texto, largura da coluna e layout.

    Tabela 1. Parâmetros
    Nome Tipo Descrição
    LTR Booliano

    Sinalizador que indica a direção do texto do idioma na tabela. Para obter informações, consulte W3C: direção de script e idiomas.

    Valores válidos:
    • verdadeiro: a direção do texto é da esquerda para a direita.
    • falso: a direção do texto é da direita para a esquerda.
    columnWidths Matriz Números que especificam a largura de cada coluna em uma tabela. Os tamanhos são baseados proporcionalmente. Por exemplo, var columnWidths = [2, 1, 1]; é uma tabela de três colunas com uma primeira coluna duas vezes maior que as outras duas.

    Padrão: cada coluna tem a mesma largura.

    largeTable Booliano Sinalizador que indica se a largura de 100% e o layout fixo estão definidos implicitamente.
    Valores válidos:
    • verdadeiro: a tabela usa 100% de largura com um layout fixo. Se verdadeiro, use o método complete() quando todo o conteúdo tiver sido adicionado para indicar que a tabela está concluída.
    • falso: tamanho automático da tabela.

    Padrão: falso

    O exemplo a seguir mostra como criar um objeto Tabela de 2 colunas.

    var table = new sn_pdfgeneratorutils.Table(true, [70,200], false);

    Tabela – addCell(Célula de célula)

    Adiciona um elemento de célula à tabela.

    Tabela 2. Parâmetros
    Nome Tipo Descrição
    célula Célula Elemento de célula a ser adicionado à tabela.
    Tabela 3. Retorna
    Tipo Descrição
    Nenhum(a)

    Este exemplo mostra como criar um objeto Tabela a partir da tabela de incidentes e adicionar uma célula Número e uma Descrição resumida a cada linha.

    var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
    var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
     
    var whiteColor =  sn_pdfgeneratorutils.Color([1,1,1]);
    var greyColor =  sn_pdfgeneratorutils.Color([0.8,0.8,0.8]);
    var headerBgColor = new sn_pdfgeneratorutils.Color([0.4,0.6,0.8]);
     
    // Query Incident
    var gr = new GlideRecord("incident");
    gr.query();
     
    // declare table by providing width array and Boolean for large table
    var table = new sn_pdfgeneratorutils.Table(true, [70,200], false);
     
    var headerStyle = new sn_pdfgeneratorutils.Style;
    headerStyle.setBackgroundColor(headerBgColor);
    headerStyle.setTextAlignment("text-center");
    headerStyle.setBold();
    headerStyle.setFontColor(whiteColor);
     
    table.setHeaderStyle(headerStyle);
     
    var nParagraph = new sn_pdfgeneratorutils.Paragraph("Number");
    var sParagraph = new sn_pdfgeneratorutils.Paragraph("Short Description");
     
    var hdrCell1 = new sn_pdfgeneratorutils.Cell;
    var hdrCell2 = new sn_pdfgeneratorutils.Cell;
     
    hdrCell1.addParagraph(nParagraph);
    hdrCell2.addParagraph(sParagraph);
     
    table.addHeaderCell(hdrCell1);
    table.addHeaderCell(hdrCell2);
     
    var row = 0;
     
    while(gr.next()) {
       var numCell = new sn_pdfgeneratorutils.Cell;
       var sdCell = new sn_pdfgeneratorutils.Cell;
     
       var numberParagraph = new sn_pdfgeneratorutils.Paragraph(gr.number);
       var sdParagraph = new sn_pdfgeneratorutils.Paragraph(gr.short_description);
      
       numCell.addParagraph(numberParagraph);
       sdCell.addParagraph(sdParagraph);
     
       if (row % 2 == 1) {
          table.setDefaultbackGroundColor(greyColor);
       } else {
          table.setDefaultbackGroundColor(whiteColor);
       }
     
       table.addCell(numCell);
       table.addCell(sdCell);
     
       row = row + 1;
     
    }
     
    document.addTable(table);
    document.saveAsAttachment("incident", "<record_sys_id>", "filename.pdf");

    Tabela – addCellWithStyle(Célula de célula, estilo de estilo)

    Adiciona um elemento de célula com um estilo aplicado à tabela.

    Tabela 4. Parâmetros
    Nome Tipo Descrição
    célula Célula Objeto de célula a ser adicionado à tabela.
    estilo Estilo Estilo a ser aplicado à célula.
    Tabela 5. Retorna
    Tipo Descrição
    Nenhum(a)

    Este exemplo mostra como aplicar um estilo a um objeto de célula especificado e salvar o documento como um anexo em um registro.

    var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
    var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
     
    var whiteColor =  sn_pdfgeneratorutils.Color([1,1,1]);
    var greyColor =  sn_pdfgeneratorutils.Color([0.8,0.8,0.8]);
    var cellBgColor = new sn_pdfgeneratorutils.Color([0.4,0.6,0.8]);
     
    // Query Incident
    var gr = new GlideRecord("incident");
    gr.query();
     
    // declare table by providing width array and Boolean for large table
    var table = new sn_pdfgeneratorutils.Table(true, [70,200], false);
     
    var cellStyle = new sn_pdfgeneratorutils.Style;
    cellStyle.setBackgroundColor(cellBgColor);
    cellStyle.setTextAlignment("text-center");
    cellStyle.setBold();
    cellStyle.setFontColor(whiteColor);
     
    var nParagraph = new sn_pdfgeneratorutils.Paragraph("Number");
    var sParagraph = new sn_pdfgeneratorutils.Paragraph("Short Description");
     
    var hdrCell1 = new sn_pdfgeneratorutils.Cell;
    var hdrCell2 = new sn_pdfgeneratorutils.Cell;
     
    hdrCell1.addParagraph(nParagraph);
    hdrCell2.addParagraph(sParagraph);
     
    table.addHeaderCell(hdrCell1);
    table.addHeaderCell(hdrCell2);
     
    var row = 0;
     
    while(gr.next()) {
       var numCell = new sn_pdfgeneratorutils.Cell;
       var sdCell = new sn_pdfgeneratorutils.Cell;
     
       var numberParagraph = new sn_pdfgeneratorutils.Paragraph(gr.number);
       var sdParagraph = new sn_pdfgeneratorutils.Paragraph(gr.short_description);
      
       numCell.addParagraph(numberParagraph);
       sdCell.addParagraph(sdParagraph);
     
       if (row % 2 == 1) {
          table.setDefaultbackGroundColor(greyColor);
       } else {
          table.setDefaultbackGroundColor(whiteColor);
       }
     
       table.addCellWithStyle(numCell, cellStyle);
       table.addCell(sdCell);
     
       row = row + 1;
     
    }
     
    document.addTable(table);
    document.saveAsAttachment("incident", "sys_id", "filename.pdf");

    Tabela – addHeaderCell(Célula da célula)

    Adiciona um objeto de célula de cabeçalho à tabela.

    Tabela 6. Parâmetros
    Nome Tipo Descrição
    célula Célula Célula de cabeçalho a ser adicionada à tabela.
    Tabela 7. Retorna
    Tipo Descrição
    Nenhum(a)

    Este exemplo mostra como adicionar uma célula de cabeçalho a uma tabela que contém um objeto de parágrafo. Para obter mais informações sobre objetos de parágrafo, consulte a API de parágrafo.

    var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
    var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
     
    var whiteColor =  sn_pdfgeneratorutils.Color([1,1,1]);
    var greyColor =  sn_pdfgeneratorutils.Color([0.8,0.8,0.8]);
    var headerBgColor = new sn_pdfgeneratorutils.Color([0.4,0.6,0.8]);
     
    // Query Incident
    var gr = new GlideRecord("incident");
    gr.query();
     
    // declare table by providing width array and Boolean for large table
    var table = new sn_pdfgeneratorutils.Table(true, [70,200], false);
     
    var headerStyle = new sn_pdfgeneratorutils.Style;
    headerStyle.setBackgroundColor(headerBgColor);
    headerStyle.setTextAlignment("text-center");
    headerStyle.setBold();
    headerStyle.setFontColor(whiteColor);
     
    table.setHeaderStyle(headerStyle);
     
    var nParagraph = new sn_pdfgeneratorutils.Paragraph("Number");
    var sParagraph = new sn_pdfgeneratorutils.Paragraph("Short Description");
     
    var hdrCell1 = new sn_pdfgeneratorutils.Cell;
    var hdrCell2 = new sn_pdfgeneratorutils.Cell;
     
    hdrCell1.addParagraph(nParagraph);
    hdrCell2.addParagraph(sParagraph);
     
    table.addHeaderCell(hdrCell1);
    table.addHeaderCell(hdrCell2);
     
    var row = 0;
     
    while(gr.next()) {
       var numCell = new sn_pdfgeneratorutils.Cell;
       var sdCell = new sn_pdfgeneratorutils.Cell;
     
       var numberParagraph = new sn_pdfgeneratorutils.Paragraph(gr.number);
       var sdParagraph = new sn_pdfgeneratorutils.Paragraph(gr.short_description);
      
       numCell.addParagraph(numberParagraph);
       sdCell.addParagraph(sdParagraph);
     
       if (row % 2 == 1) {
          table.setDefaultbackGroundColor(greyColor);
       } else {
          table.setDefaultbackGroundColor(whiteColor);
       }
     
       table.addCell(numCell);
       table.addCell(sdCell);
     
       row = row + 1;
     
    }
     
    document.addTable(table);
    document.saveAsAttachment("incident", "<record_sys_id>", "filename.pdf");

    Tabela – addImageCell(Image image)

    Adiciona uma célula que contém uma imagem à tabela.

    Tabela 8. Parâmetros
    Nome Tipo Descrição
    imagem Imagem Objeto de imagem a ser adicionado à célula.
    Tabela 9. Retorna
    Tipo Descrição
    Nenhum(a)

    Este exemplo mostra como criar uma tabela com duas células de imagem e anexar o documento a um registro.

    var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
    var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
     
    // declare table by providing width array and Boolean for large table
    var table = new sn_pdfgeneratorutils.Table(true, [70,200], false);
     
    var icon = new sn_pdfgeneratorutils.Image("<sys_id>");
    var picture = new sn_pdfgeneratorutils.Image("<sys_id>");
     
    table.addImageCell(icon);
    table.addImageCell(picture);
     
    document.addTable(table);
    document.saveAsAttachment("incident", "<record_sys_id>", "filename.pdf");

    Tabela – addParagraphCell(Paragraph p)

    Adiciona uma célula que contém um parágrafo à tabela.

    Tabela 10. Parâmetros
    Nome Tipo Descrição
    p Parágrafo Objeto de parágrafo a ser adicionado à célula.
    Tabela 11. Retorna
    Tipo Descrição
    Nenhum(a)

    Este exemplo mostra como criar uma tabela com uma única célula contendo conteúdo de parágrafo.

    var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
    var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
     
    // declare table by providing width array and Boolean for large table
    var table = new sn_pdfgeneratorutils.Table(true, [1], false);
     
    var paragraph = new sn_pdfgeneratorutils.Paragraph("Content to add to the cell");
     
    table.addParagraphCell(paragraph);
     
    document.addTable(table);
    document.saveAsAttachment("incident", "<record_sys_id>", "filename.pdf");

    Tabela – addTextCell(cadeia de caracteres text)

    Adiciona uma célula que contém uma cadeia de caracteres à tabela.

    Tabela 12. Parâmetros
    Nome Tipo Descrição
    texto Cadeia de caracteres Texto a ser adicionado à célula.
    Tabela 13. Retorna
    Tipo Descrição
    Nenhum(a)

    Este exemplo mostra como criar uma tabela com uma única célula que contém uma cadeia de caracteres.

    var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
    var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
     
    // declare table by providing width array and Boolean for large table
    var table = new sn_pdfgeneratorutils.Table(true, [1], false);
     
    table.addTextCell("Text to add to the cell");
     
    document.addTable(table);
    document.saveAsAttachment("incident", "record_sys_id", "filename.pdf");

    Tabela – complete()

    Indica que todo o conteúdo pretendido foi adicionado a uma tabela grande.

    Use com o método Table.flush() para adicionar conteúdo adicional a uma tabela já adicionada a um documento. Este método se aplica somente quando o parâmetro largeTable no construtor está definido como verdadeiro.

    Tabela 14. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 15. Retorna
    Tipo Descrição
    Nenhum(a)

    Este exemplo mostra como indicar que a adição de conteúdo a uma tabela já adicionada a um documento está concluída.

    var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
    var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
     
    var whiteColor =  sn_pdfgeneratorutils.Color([1,1,1]);
    var greyColor =  sn_pdfgeneratorutils.Color([0.8,0.8,0.8]);
    var headerBgColor = new sn_pdfgeneratorutils.Color([0.4,0.6,0.8]);
     
    // Query Incident
    var gr = new GlideRecord("incident");
    gr.query();
     
    // declare table by providing width array and Boolean for large table
    var table = new sn_pdfgeneratorutils.Table(true, [1,2,1,1], true);
     
    var headerStyle = new sn_pdfgeneratorutils.Style;
    headerStyle.setBackgroundColor(headerBgColor);
    headerStyle.setTextAlignment("text-center");
    headerStyle.setBold();
    headerStyle.setFontColor(whiteColor);
     
    table.setHeaderStyle(headerStyle);
     
    var numberParagraph = new sn_pdfgeneratorutils.Paragraph("Number");
    var descParagraph = new sn_pdfgeneratorutils.Paragraph("Short Description");
    var stateParagraph = new sn_pdfgeneratorutils.Paragraph("State");
    var assignedParagraph = new sn_pdfgeneratorutils.Paragraph("Assigned to");
    
     
    var hdrCell1 = new sn_pdfgeneratorutils.Cell;
    var hdrCell2 = new sn_pdfgeneratorutils.Cell;
    var hdrCell3 = new sn_pdfgeneratorutils.Cell;
    var hdrCell4 = new sn_pdfgeneratorutils.Cell;
     
    hdrCell1.addParagraph(numberParagraph);
    hdrCell2.addParagraph(descParagraph);
    hdrCell3.addParagraph(stateParagraph);
    hdrCell4.addParagraph(assignedParagraph);
     
    table.addHeaderCell(hdrCell1);
    table.addHeaderCell(hdrCell2);
    table.addHeaderCell(hdrCell3);
    table.addHeaderCell(hdrCell4);
    
    var row = 0;
     
    while(gr.next()) {
       var numCell = new sn_pdfgeneratorutils.Cell;
       var sdCell = new sn_pdfgeneratorutils.Cell;
       var stateCell = new sn_pdfgeneratorutils.Cell;
       var assignedCell = new sn_pdfgeneratorutils.Cell;
    
     
       var numberParagraph = new sn_pdfgeneratorutils.Paragraph(gr.number);
       var sdParagraph = new sn_pdfgeneratorutils.Paragraph(gr.short_description);
       var stateParagraph = new sn_pdfgeneratorutils.Paragraph(gr.state);
       var assignedParagraph = new sn_pdfgeneratorutils.Paragraph(gr.assigned_to);
      
       numCell.addParagraph(numberParagraph);
       sdCell.addParagraph(sdParagraph);
       stateCell.addParagraph(stateParagraph);
       assignedCell.addParagraph(assignedParagraph);
    
     
       if (row % 2 == 1) {
          table.setDefaultbackGroundColor(greyColor);
       } else {
          table.setDefaultbackGroundColor(whiteColor);
       }
     
       table.addCell(numCell);
       table.addCell(sdCell);
       table.addCell(stateCell);
       table.addCell(assignedCell);
     
       row = row + 1;
     
    }
    
    document.addTable(table);
    table.addTextCell("A cell added later");
    table.flush();
    table.complete();
    document.saveAsAttachment("incident", "<record_sys_id>", "filename.pdf");

    Tabela – donotSplitRowOnPageBreak(Boolean value)

    Impede a divisão de uma linha em duas páginas, quando possível.

    Tabela 16. Parâmetros
    Nome Tipo Descrição
    valor Booliano Sinalizador que indica se uma linha deve ser dividida em duas páginas ou movida a linha inteira para a segunda página. No entanto, esta propriedade não se aplica quando a linha abrange mais de uma página.
    Valores válidos:
    • verdadeiro: se a parte restante de uma página não for grande o suficiente para a linha, adiciona a linha inteira a uma nova página.
    • falso: se a parte restante de uma página não for grande o suficiente para a linha, dividirá a linha em duas páginas.

    Padrão: falso

    Tabela 17. Retorna
    Tipo Descrição
    Nenhum(a)

    Este exemplo mostra como evitar a divisão de uma linha em duas páginas.

    var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
    var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
     
    // declare table by providing width array and Boolean for large table
    var table = new sn_pdfgeneratorutils.Table(true, [25,25,25,75,400], false);
     
    table.addTextCell("Text to add to the cell");
    table.addTextCell("More text to add to the cell");
    table.addTextCell("Even more text to add to the cell");
    table.addTextCell("Even more text to add to the cell");
    table.addTextCell("Even more text to add to the cell");
    
    table.donotSplitRowOnPageBreak(true);
     
    document.addTable(table);
    document.saveAsAttachment("incident", "record_sys_id", "filename.pdf");

    Tabela – Flush()

    Adiciona conteúdo adicional a uma tabela que já foi adicionada a um documento.

    Use com o método Table.complete() para indicar que você adicionou todo o conteúdo adicional à tabela. Este método se aplica somente quando o parâmetro largeTable no construtor está definido como verdadeiro.

    Tabela 18. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 19. Retorna
    Tipo Descrição
    Nenhum(a)

    Este exemplo mostra como adicionar uma célula de texto a uma tabela que já foi adicionada a um documento.

    var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
    var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
     
    var whiteColor =  sn_pdfgeneratorutils.Color([1,1,1]);
    var greyColor =  sn_pdfgeneratorutils.Color([0.8,0.8,0.8]);
    var headerBgColor = new sn_pdfgeneratorutils.Color([0.4,0.6,0.8]);
     
    // Query Incident
    var gr = new GlideRecord("incident");
    gr.query();
     
    // declare table by providing width array and Boolean for large table
    var table = new sn_pdfgeneratorutils.Table(true, [1,2,1,1], true);
     
    var headerStyle = new sn_pdfgeneratorutils.Style;
    headerStyle.setBackgroundColor(headerBgColor);
    headerStyle.setTextAlignment("text-center");
    headerStyle.setBold();
    headerStyle.setFontColor(whiteColor);
     
    table.setHeaderStyle(headerStyle);
     
    var numberParagraph = new sn_pdfgeneratorutils.Paragraph("Number");
    var descParagraph = new sn_pdfgeneratorutils.Paragraph("Short Description");
    var stateParagraph = new sn_pdfgeneratorutils.Paragraph("State");
    var assignedParagraph = new sn_pdfgeneratorutils.Paragraph("Assigned to");
    
     
    var hdrCell1 = new sn_pdfgeneratorutils.Cell;
    var hdrCell2 = new sn_pdfgeneratorutils.Cell;
    var hdrCell3 = new sn_pdfgeneratorutils.Cell;
    var hdrCell4 = new sn_pdfgeneratorutils.Cell;
     
    hdrCell1.addParagraph(numberParagraph);
    hdrCell2.addParagraph(descParagraph);
    hdrCell3.addParagraph(stateParagraph);
    hdrCell4.addParagraph(assignedParagraph);
     
    table.addHeaderCell(hdrCell1);
    table.addHeaderCell(hdrCell2);
    table.addHeaderCell(hdrCell3);
    table.addHeaderCell(hdrCell4);
    
    var row = 0;
     
    while(gr.next()) {
       var numCell = new sn_pdfgeneratorutils.Cell;
       var sdCell = new sn_pdfgeneratorutils.Cell;
       var stateCell = new sn_pdfgeneratorutils.Cell;
       var assignedCell = new sn_pdfgeneratorutils.Cell;
    
     
       var numberParagraph = new sn_pdfgeneratorutils.Paragraph(gr.number);
       var sdParagraph = new sn_pdfgeneratorutils.Paragraph(gr.short_description);
       var stateParagraph = new sn_pdfgeneratorutils.Paragraph(gr.state);
       var assignedParagraph = new sn_pdfgeneratorutils.Paragraph(gr.assigned_to);
      
       numCell.addParagraph(numberParagraph);
       sdCell.addParagraph(sdParagraph);
       stateCell.addParagraph(stateParagraph);
       assignedCell.addParagraph(assignedParagraph);
    
     
       if (row % 2 == 1) {
          table.setDefaultbackGroundColor(greyColor);
       } else {
          table.setDefaultbackGroundColor(whiteColor);
       }
     
       table.addCell(numCell);
       table.addCell(sdCell);
       table.addCell(stateCell);
       table.addCell(assignedCell);
     
       row = row + 1;
     
    }
    
    document.addTable(table);
    table.addTextCell("A cell added later");
    table.flush();
    table.complete();
    document.saveAsAttachment("incident", "<record_sys_id>", "filename.pdf");

    Tabela – getDefaultStyle()

    Retorna o estilo padrão.

    Tabela 20. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 21. Retorna
    Tipo Descrição
    Estilo Estilo padrão.

    Este exemplo mostra como definir e retornar o estilo padrão.

    var table = new sn_pdfgeneratorutils.Table(true, [1], false);
    
    var style = new sn_pdfgeneratorutils.Style();
    
    style.setItalic();
    
    table.setDefaultStyle(style);
     
    table.addTextCell("Text to add to the cell");
    
    var defaultStyle = table.getDefaultStyle();
    
    gs.info(defaultStyle);

    Tabela – getHeaderStyle()

    Retorna o estilo aplicado ao cabeçalho da tabela.

    Tabela 22. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 23. Retorna
    Tipo Descrição
    Estilo Estilo aplicado ao cabeçalho da tabela.

    Este exemplo mostra como definir e retornar o estilo de cabeçalho da tabela.

    var table = new sn_pdfgeneratorutils.Table(true, [1,1], false);
    
    var whiteColor =  sn_pdfgeneratorutils.Color([1,1,1]);
    var headerBgColor = new sn_pdfgeneratorutils.Color([0.4,0.6,0.8]);
    
    var headerStyle = new sn_pdfgeneratorutils.Style;
    headerStyle.setBackgroundColor(headerBgColor);
    headerStyle.setTextAlignment("text-center");
    headerStyle.setBold();
    headerStyle.setFontColor(whiteColor);
     
    table.setHeaderStyle(headerStyle);
    
    var hdrCell1 = new sn_pdfgeneratorutils.Cell;
    var hdrCell2 = new sn_pdfgeneratorutils.Cell;
     
    table.addHeaderCell(hdrCell1);
    table.addHeaderCell(hdrCell2);
    
    var styleObject = table.getHeaderStyle();
    
    gs.info(styleObject);

    Tabela – setBorder(largura do número)

    Define uma borda de largura designada ao redor das bordas externas da tabela.

    Tabela 24. Parâmetros
    Nome Tipo Descrição
    largura Número Largura da borda.

    Unidade: pontos

    Tabela 25. Retorna
    Tipo Descrição
    Nenhum(a)

    Este exemplo mostra como criar uma tabela com borda de dois pixels e anexar a tabela a um registro.

    var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
    var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
     
    // declare table by providing width array and Boolean for large table
    var table = new sn_pdfgeneratorutils.Table(true, [1], false);
     
    table.addTextCell("Text to add to the cell");
    table.setBorder(2);
     
    document.addTable(table);
    "document.saveAsAttachment("incident", "<record_sys_id>", "filename.pdf");

    Tabela – setDefaultbackGundColor(Color color)

    Define a cor de fundo padrão da tabela.

    Tabela 26. Parâmetros
    Nome Tipo Descrição
    cor Cor Objeto de cor usado como a cor de fundo padrão da tabela.
    Tabela 27. Retorna
    Tipo Descrição
    Nenhum(a)

    Este exemplo mostra como definir a cor de fundo padrão da tabela.

    // declare table by providing width array with automatic table size
    var table = new sn_pdfgeneratorutils.Table(true, [1], false);
    
    var color = new sn_pdfgeneratorutils.Color([0.8,0.8,0.8]);
    
    table.setDefaultbackGroundColor(color);
     
    table.addTextCell("Text to add to the cell");

    Tabela – setDefaultStyle(Estilo defaultStyle)

    Define o estilo padrão a ser aplicado à tabela.

    Tabela 28. Parâmetros
    Nome Tipo Descrição
    estilopadrão Estilo Estilo padrão a ser aplicado à tabela.
    Tabela 29. Retorna
    Tipo Descrição
    Nenhum(a)

    Este exemplo mostra como aplicar um estilo padrão a uma tabela.

    var table = new sn_pdfgeneratorutils.Table(true, [1], false);
    
    var style = new sn_pdfgeneratorutils.Style();
    
    style.setItalic();
    
    table.setDefaultStyle(style);
     
    table.addTextCell("Text to add to the cell");
    
    var defaultStyle = table.getDefaultStyle();
    
    gs.info(defaultStyle);

    Tabela – setFixedPosition(Number pageNumber, Número restante, Número inferior, Número de largura)

    Define a tabela para uma posição fixa na página.

    Tabela 30. Parâmetros
    Nome Tipo Descrição
    pageNumber Número Número da página à qual a tabela será adicionada.
    esquerda Número Número de pixels da margem esquerda para adicionar a tabela.

    Unidade: pontos

    parte inferior Número Número de pixels da margem inferior para adicionar a tabela.

    Unidade: pontos

    largura Número Largura da tabela.

    Unidade: pontos

    Tabela 31. Retorna
    Tipo Descrição
    Nenhum(a)

    Este exemplo mostra como reposicionar a tabela no canto inferior esquerdo da página.

    var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
    var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
     
    // declare table by providing width array and Boolean for large table
    var table = new sn_pdfgeneratorutils.Table(true, [1], false);
     
    table.addTextCell("Text to add to the cell");
    table.setFixedPosition(1,36,36,500);
     
    document.addTable(table);
    "document.saveAsAttachment("incident", "<record_sys_id>", "filename.pdf");

    Tabela – setHeaderStyle(Estilo headerStyle)

    Define o objeto de estilo a ser aplicado ao cabeçalho da tabela.

    Tabela 32. Parâmetros
    Nome Tipo Descrição
    estilocabeçalho Estilo Objeto de estilo a ser aplicado ao cabeçalho da tabela.
    Tabela 33. Retorna
    Tipo Descrição
    Nenhum(a)

    Este exemplo mostra como definir e retornar o estilo de cabeçalho da tabela.

    var table = new sn_pdfgeneratorutils.Table(true, [1,1], false);
    
    var whiteColor =  sn_pdfgeneratorutils.Color([1,1,1]);
    var headerBgColor = new sn_pdfgeneratorutils.Color([0.4,0.6,0.8]);
    
    var headerStyle = new sn_pdfgeneratorutils.Style;
    headerStyle.setBackgroundColor(headerBgColor);
    headerStyle.setTextAlignment("text-center");
    headerStyle.setBold();
    headerStyle.setFontColor(whiteColor);
     
    table.setHeaderStyle(headerStyle);
    
    var hdrCell1 = new sn_pdfgeneratorutils.Cell;
    var hdrCell2 = new sn_pdfgeneratorutils.Cell;
     
    table.addHeaderCell(hdrCell1);
    table.addHeaderCell(hdrCell2);
    
    var styleObject = table.getHeaderStyle();
    
    gs.info(styleObject);

    Tabela – setHorizontalAlignment(cadeia de caracteres alinhamento)

    Define o alinhamento horizontal da tabela.

    Tabela 34. Parâmetros
    Nome Tipo Descrição
    alinhamento Cadeia de caracteres Alinhamento da tabela.
    Valores válidos:
    • center: alinha o conteúdo ao centro.
    • left: alinha o conteúdo à esquerda.
    • à direita: alinha o conteúdo à direita.
    Tabela 35. Retorna
    Tipo Descrição
    Nenhum(a)

    Este exemplo mostra como criar uma pequena tabela alinhada no centro da página.

    var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
    var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
     
    // declare table by providing width array and Boolean for large table
    var table = new sn_pdfgeneratorutils.Table(true, [1], false);
     
    table.addTextCell("Text to add to the cell");
    table.setWidth(90);
    table.setHorizontalAlignment("center");
     
    document.addTable(table);
    document.saveAsAttachment("incident", "<record_sys_id>", "filename.pdf");

    Tabela – setMargin(Margem numérica)

    Define todas as margens ao redor da tabela com a mesma largura.

    Tabela 36. Parâmetros
    Nome Tipo Descrição
    margem Número Valor das margens superior, direita, inferior e esquerda em pontos.
    Tabela 37. Retorna
    Tipo Descrição
    Nenhum(a)

    Este exemplo mostra como definir uma margem para a tabela inteira.

    var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
    var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
     
    // declare table by providing width array and Boolean for large table
    var table = new sn_pdfgeneratorutils.Table(true, [1], false);
     
    table.addTextCell("Text to add to the cell");
    table.setMargin(3);
     
    document.addTable(table);
    document.saveAsAttachment("incident", "<record_sys_id>", "filename.pdf");

    Tabela – setMarginBottom(Margem numérica)

    Define a margem na parte inferior da página.

    Tabela 38. Parâmetros
    Nome Tipo Descrição
    margem Número Altura da margem inferior em pontos.
    Tabela 39. Retorna
    Tipo Descrição
    Nenhum(a)

    Este exemplo mostra como definir uma margem para a parte inferior da página como três pontos.

    var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
    var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
     
    var whiteColor =  sn_pdfgeneratorutils.Color([1,1,1]);
    var greyColor =  sn_pdfgeneratorutils.Color([0.8,0.8,0.8]);
    var headerBgColor = new sn_pdfgeneratorutils.Color([0.4,0.6,0.8]);
     
    // Query Incident
    var gr = new GlideRecord("incident");
    gr.query();
     
    // declare table by providing width array and Boolean for large table
    var table = new sn_pdfgeneratorutils.Table(true, [70,200], false);
     
    var headerStyle = new sn_pdfgeneratorutils.Style;
    headerStyle.setBackgroundColor(headerBgColor);
    headerStyle.setTextAlignment("text-center");
    headerStyle.setBold();
    headerStyle.setFontColor(whiteColor);
     
    table.setHeaderStyle(headerStyle);
     
    var nParagraph = new sn_pdfgeneratorutils.Paragraph("Number");
    var sParagraph = new sn_pdfgeneratorutils.Paragraph("Short Description");
     
    var hdrCell1 = new sn_pdfgeneratorutils.Cell;
    var hdrCell2 = new sn_pdfgeneratorutils.Cell;
     
    hdrCell1.addParagraph(nParagraph);
    hdrCell2.addParagraph(sParagraph);
     
    table.addHeaderCell(hdrCell1);
    table.addHeaderCell(hdrCell2);
    
    // set the bottom margin to three points
    table.setBottomMargin(3);
     
    var row = 0;
     
    while(gr.next()) {
       var numCell = new sn_pdfgeneratorutils.Cell;
       var sdCell = new sn_pdfgeneratorutils.Cell;
     
       var numberParagraph = new sn_pdfgeneratorutils.Paragraph(gr.number);
       var sdParagraph = new sn_pdfgeneratorutils.Paragraph(gr.short_description);
      
       numCell.addParagraph(numberParagraph);
       sdCell.addParagraph(sdParagraph);
     
       if (row % 2 == 1) {
          table.setDefaultbackGroundColor(greyColor);
       } else {
          table.setDefaultbackGroundColor(whiteColor);
       }
     
       table.addCell(numCell);
       table.addCell(sdCell);
     
       row = row + 1;
     
    }
     
    document.addTable(table);
    document.saveAsAttachment("incident", "<record_sys_id>", "filename.pdf");

    Tabela – setMarginLeft(Margem numérica)

    Define a margem no lado esquerdo da página.

    Tabela 40. Parâmetros
    Nome Tipo Descrição
    margem Número Largura da margem esquerda em pontos.
    Tabela 41. Retorna
    Tipo Descrição
    Nenhum(a)

    Este exemplo mostra como definir uma margem para o lado esquerdo da página.

    var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
    var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
     
    // declare table by providing width array and Boolean for large table
    var table = new sn_pdfgeneratorutils.Table(true, [1], false);
     
    table.addTextCell("Text to add to the cell");
    table.setMarginLeft(100);
     
    document.addTable(table);
    document.saveAsAttachment("incident", "<record_sys_id>", "filename.pdf");

    Tabela – setMarginRight(Margem numérica)

    Define a margem no lado direito da página.

    Tabela 42. Parâmetros
    Nome Tipo Descrição
    margem Número Largura da margem direita em pontos.
    Tabela 43. Retorna
    Tipo Descrição
    Nenhum(a)

    Este exemplo mostra como definir uma margem para o lado esquerdo da página.

    var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
    var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
     
    // declare table by providing width array and Boolean for large table
    var table = new sn_pdfgeneratorutils.Table(true, [1], false);
     
    table.addTextCell("Text to add to the cell");
    table.setMarginRight(100);
     
    document.addTable(table);
    "document.saveAsAttachment("incident", "<record_sys_id>", "filename.pdf");

    Tabela – setMarginTop(Margem numérica)

    Define uma margem na parte superior da página.

    Tabela 44. Parâmetros
    Nome Tipo Descrição
    margem Número Altura da margem superior em pontos.
    Tabela 45. Retorna
    Tipo Descrição
    Nenhum(a)

    Este exemplo mostra como definir uma margem na parte superior da página.

    var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
    var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
     
    // declare table by providing width array and Boolean for large table
    var table = new sn_pdfgeneratorutils.Table(true, [1], false);
     
    table.addTextCell("Text to add to the cell");
    table.setMarginTop(100);
     
    document.addTable(table);
    document.saveAsAttachment("incident", "<record_sys_id>", "filename.pdf");

    Tabela – setWidth(largura do número)

    Define a largura total da tabela.

    Tabela 46. Parâmetros
    Nome Tipo Descrição
    largura Número Largura da tabela.

    Unidade: pontos

    Tabela 47. Retorna
    Tipo Descrição
    Nenhum(a)

    Este exemplo mostra como criar uma tabela com 90 pontos de largura e anexar o documento a um registro.

    var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
    var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
     
    // declare table by providing width array and Boolean for large table
    var table = new sn_pdfgeneratorutils.Table(true, [1], false);
     
    table.addTextCell("Text to add to the cell");
    table.setWidth(90);
    table.setHorizontalAlignment("center");
     
    document.addTable(table);
    document.saveAsAttachment("incident", "<record_sys_id>", "filename.pdf");

    Tabela – useAllAvailableWidth()

    Expande a tabela para usar toda a largura disponível na página.

    Tabela 48. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 49. Retorna
    Tipo Descrição
    Nenhum(a)

    Este exemplo mostra como criar uma tabela que se expande até a largura disponível na página.

    var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
    var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
     
    // declare table by providing width array and Boolean for large table
    var table = new sn_pdfgeneratorutils.Table(true, [1], false);
     
    table.addTextCell("Text to add to the cell");
    table.useAllAvailableWidth();
     
    document.addTable(table);
    document.saveAsAttachment("incident", "<record_sys_id>", "filename.pdf");