테이블 - 범위가 지정됨, 전역
PDF 문서에 추가할 테이블 객체를 작성합니다. 각 셀에서 사용할 데이터를 정의하고 스타일, 여백 및 맞춤을 설정합니다.
이 API는 PDF 생성 유틸리티 플러그인(com.snc.apppdfgenerator)의 ServiceNow 일부이며 sn_pdfgeneratorutils 네임스페이스 내에서 제공됩니다. 플러그인은 기본적으로 활성화되어 있습니다.
이 API는 PDF를 생성하기 위해 문서 API 와 함께 사용되는 구성 요소입니다.
이 클래스의 메서드를 사용하여 Table 개체를 빌드합니다. 다음과 같은 추가 클래스를 사용하여 테이블에 셀, 단락 및 스타일을 추가할 수 있습니다.
- 셀 API
- Cell API를 사용하여 셀을 만듭니다. 그런 다음, 다음 방법 중 하나를 사용하여 테이블에 셀을 추가합니다.
- Table.addCell()을 호출합니다.
- Table.addCellWithStyle()을 호출합니다.
- Table.addHeaderCell()을 호출합니다.
- Table.addImageCell()을 호출합니다.
- Table.addParagraphCell()을 호출합니다.
- Table.addTextCell()을 호출합니다.
- 단락 API
- Paragraph API를 사용하여 단락을 만듭니다. Cell.addParagraph()를 사용하여 표의 셀에 단락을 추가합니다.
- 스타일 API
- Style API를 사용하여 스타일, 색 및 테두리를 설정합니다. 다음 방법 중 하나를 사용하여 테이블에 스타일을 추가합니다.
- Table.setDefaultStyle()을 호출합니다.
- Table.setHeaderStyle()을 호출합니다.
- Document API
- Document.addTable() 메서드를 사용하여 PDF 문서에 표를 추가합니다. Document.saveAsAttachment() 메서드를 사용하여 문서를 레코드에 첨부할 수 있습니다.
테이블 - Table(Boolean ltr, Array columnWidths, Boolean largeTable)
텍스트 방향, 열 너비 및 레이아웃 설정을 사용하여 새 Table 개체를 인스턴스화합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 리터 | 부울 | 테이블에서 언어의 텍스트 방향을 나타내는 플래그입니다. 자세한 내용은 W3C: 스크립트 방향 및 언어를 참조하세요. 유효한 값은 다음과 같습니다.
|
| columnWidths (열 폭) | 배열 | 테이블의 각 열 너비를 지정하는 숫자입니다. 크기는 비례를 기준으로 합니다. 예를 들어 var columnWidths = [2, 1, 1]; 은 첫 번째 열이 다른 두 열보다 두 배 큰 3열 테이블입니다.기본값: 각 열의 너비는 동일합니다. |
| largeTable | 부울 | 100% 너비 및 고정 레이아웃이 암시적으로 설정되었는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
기본값: false |
다음 예제에서는 2열 Table 개체를 만드는 방법을 보여 줍니다.
var table = new sn_pdfgeneratorutils.Table(true, [70,200], false);
테이블 – addCell(셀 셀)
테이블에 셀 요소를 추가합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 셀 | 셀 | 테이블에 추가할 셀 요소입니다. |
| 유형 | 설명 |
|---|---|
| 없음 |
이 예제에서는 인시던트 테이블에서 Table 개체를 만들고 각 행에 숫자와 간단한 설명 셀을 추가하는 방법을 보여 줍니다.
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");
테이블 – addCellWithStyle(셀 셀, 스타일 스타일)
스타일이 적용된 셀 요소를 테이블에 추가합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 셀 | 셀 | 테이블에 추가할 셀 객체입니다. |
| 스타일 | 스타일 | 셀에 적용할 스타일입니다. |
| 유형 | 설명 |
|---|---|
| 없음 |
이 예제에서는 지정된 Cell 개체에 스타일을 적용하고 문서를 레코드에 첨부 파일로 저장하는 방법을 보여 줍니다.
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");
테이블 – addHeaderCell(셀 셀)
테이블에 헤더 Cell 객체를 추가합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 셀 | 셀 | 테이블에 추가할 헤더 셀입니다. |
| 유형 | 설명 |
|---|---|
| 없음 |
이 예제에서는 Paragraph 개체가 포함된 테이블에 머리글 셀을 추가하는 방법을 보여 줍니다. Paragraph 개체에 대한 자세한 내용은 Paragraph API를 참조하세요.
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");
테이블 – addImageCell(Image image)
이미지가 포함된 셀을 테이블에 추가합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 이미지 | 이미지 | 셀에 추가할 이미지 객체입니다. |
| 유형 | 설명 |
|---|---|
| 없음 |
이 예제에서는 두 개의 이미지 셀이 있는 테이블을 만들고 문서를 레코드에 첨부하는 방법을 보여 줍니다.
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");
테이블 – addParagraphCell(단락 p)
단락이 포함된 셀을 표에 추가합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| P | 단락 | 셀에 추가할 단락 개체입니다. |
| 유형 | 설명 |
|---|---|
| 없음 |
이 예제에서는 단락 내용을 포함하는 단일 셀이 있는 테이블을 만드는 방법을 보여 줍니다.
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");
테이블 – addTextCell(문자열 텍스트)
테이블에 문자열이 포함된 셀을 추가합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 텍스트 | 문자열 | 셀에 추가할 텍스트입니다. |
| 유형 | 설명 |
|---|---|
| 없음 |
이 예제에서는 문자열이 포함된 단일 셀이 있는 테이블을 만드는 방법을 보여 줍니다.
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");
테이블 – complete()
의도한 모든 컨텐츠가 큰 테이블에 추가되었음을 나타냅니다.
Table.flush() 메서드와 함께 사용하여 문서에 이미 추가된 표에 내용을 추가합니다. 이 메서드는 생성자의 매개 변수가 true로 설정된 경우에만 largeTable 적용됩니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| 없음 |
이 예제에서는 문서에 이미 추가된 테이블에 내용을 추가하는 작업이 완료되었음을 나타내는 방법을 보여 줍니다.
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");
테이블 – donotSplitRowOnPageBreak(부울 값)
가능한 경우 한 행을 두 페이지로 분할하지 않도록 합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 값 | 부울 | 행을 두 페이지로 분할할지 또는 전체 행을 두 번째 페이지로 이동할지를 나타내는 플래그입니다. 그러나 행이 두 페이지 이상에 걸쳐 있는 경우에는 이 속성이 적용되지 않습니다. 유효한 값은 다음과 같습니다.
기본값: false |
| 유형 | 설명 |
|---|---|
| 없음 |
이 예제에서는 행이 두 페이지로 분할되지 않도록 하는 방법을 보여 줍니다.
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");
테이블 – flush()
문서에 이미 추가된 테이블에 내용을 추가합니다.
Table.complete() 메서드와 함께 사용하여 테이블에 모든 추가 내용을 추가했음을 나타냅니다. 이 메서드는 생성자의 매개 변수가 true로 설정된 경우에만 largeTable 적용됩니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| 없음 |
이 예제에서는 문서에 이미 추가된 테이블에 텍스트 셀을 추가하는 방법을 보여 줍니다.
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");
테이블 – getDefaultStyle()
기본 스타일을 반환합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| 스타일 | 기본 스타일입니다. |
이 예제에서는 기본 스타일을 설정한 다음 반환하는 방법을 보여 줍니다.
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);
테이블 – getHeaderStyle()
테이블 헤더에 적용되는 스타일을 반환합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| 스타일 | 테이블 헤더에 적용되는 스타일입니다. |
이 예제에서는 테이블의 머리글 스타일을 설정하고 반환하는 방법을 보여 줍니다.
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);
테이블 – setBorder(숫자 너비)
테이블의 외부 모서리 주위에 지정된 너비의 테두리를 설정합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| width | 번호 | 테두리의 너비입니다. 단위: 포인트 |
| 유형 | 설명 |
|---|---|
| 없음 |
이 예제에서는 2픽셀 테두리가 있는 테이블을 만들고 이 테이블을 레코드에 연결하는 방법을 보여 줍니다.
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");
테이블 – setDefaultbackGroundColor(Color color)
테이블의 기본 배경색을 설정합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 색상 | 색상 | 테이블의 기본 배경색으로 사용되는 색상 객체입니다. |
| 유형 | 설명 |
|---|---|
| 없음 |
이 예제에서는 테이블의 기본 배경색을 설정하는 방법을 보여 줍니다.
// 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");
테이블 – setDefaultStyle(Style defaultStyle)
테이블에 적용할 기본 스타일을 설정합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| defaultStyle | 스타일 | 테이블에 적용할 기본 스타일입니다. |
| 유형 | 설명 |
|---|---|
| 없음 |
이 예제에서는 테이블에 기본 스타일을 적용하는 방법을 보여 줍니다.
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);
테이블 – setFixedPosition(번호 페이지 번호, 왼쪽 번호, 번호 하단, 숫자 너비)
테이블을 페이지의 고정된 위치로 설정합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| pageNumber | 번호 | 테이블을 추가할 페이지의 번호입니다. |
| 왼쪽 | 번호 | 테이블을 추가할 왼쪽 여백의 픽셀 수입니다. 단위: 포인트 |
| 하단 | 번호 | 테이블을 추가할 아래쪽 여백의 픽셀 수입니다. 단위: 포인트 |
| width | 번호 | 테이블의 너비입니다. 단위: 포인트 |
| 유형 | 설명 |
|---|---|
| 없음 |
이 예제에서는 테이블을 페이지의 왼쪽 아래 모서리로 재배치하는 방법을 보여 줍니다.
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");
테이블 – setHeaderStyle(Style headerStyle)
표의 머리글에 적용할 Style 개체를 설정합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 헤더 스타일 | 스타일 | 테이블 헤더에 적용할 스타일 객체입니다. |
| 유형 | 설명 |
|---|---|
| 없음 |
이 예제에서는 테이블의 머리글 스타일을 설정하고 반환하는 방법을 보여 줍니다.
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);
테이블 – setHorizontalAlignment(String alignment)
테이블의 수평 맞춤을 설정합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 정렬 | 문자열 | 테이블에 대한 정렬입니다. 유효한 값은 다음과 같습니다.
|
| 유형 | 설명 |
|---|---|
| 없음 |
이 예제에서는 페이지 가운데에 정렬된 작은 테이블을 만드는 방법을 보여 줍니다.
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");
테이블 – setMargin(Number margin)
표 주위의 모든 여백을 같은 너비로 설정합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 마진 | 번호 | 위쪽, 오른쪽, 아래쪽 및 왼쪽 여백의 포인트 값입니다. |
| 유형 | 설명 |
|---|---|
| 없음 |
이 예제에서는 전체 테이블에 대해 여백을 설정하는 방법을 보여 줍니다.
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");
테이블 – setMarginBottom(Number margin)
페이지 아래쪽의 여백을 설정합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 마진 | 번호 | 아래쪽 여백의 높이(포인트)입니다. |
| 유형 | 설명 |
|---|---|
| 없음 |
이 예제에서는 페이지 아래쪽의 여백을 3포인트로 설정하는 방법을 보여 줍니다.
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");
테이블 – setMarginLeft(숫자 여백)
페이지 왼쪽의 여백을 설정합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 마진 | 번호 | 왼쪽 여백의 너비(포인트)입니다. |
| 유형 | 설명 |
|---|---|
| 없음 |
이 예제에서는 페이지 왼쪽의 여백을 설정하는 방법을 보여 줍니다.
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");
테이블 – setMarginRight(Number margin)
페이지 오른쪽의 여백을 설정합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 마진 | 번호 | 오른쪽 여백의 너비(포인트)입니다. |
| 유형 | 설명 |
|---|---|
| 없음 |
이 예제에서는 페이지 왼쪽의 여백을 설정하는 방법을 보여 줍니다.
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");
테이블 – setMarginTop(Number margin)
페이지 위쪽에 여백을 설정합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 마진 | 번호 | 위쪽 여백의 높이(포인트)입니다. |
| 유형 | 설명 |
|---|---|
| 없음 |
이 예제에서는 페이지 맨 위에 여백을 설정하는 방법을 보여 줍니다.
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");
테이블 – setWidth(숫자 너비)
테이블의 전체 너비를 설정합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| width | 번호 | 테이블의 너비입니다. 단위: 포인트 |
| 유형 | 설명 |
|---|---|
| 없음 |
이 예제에서는 너비가 90포인트인 테이블을 만들고 문서를 레코드에 첨부하는 방법을 보여 줍니다.
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");
테이블 – useAllAvailableWidth()
페이지에서 사용할 수 있는 전체 너비를 사용하도록 테이블을 확장합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| 없음 |
이 예제에서는 페이지에서 사용 가능한 너비로 확장되는 테이블을 만드는 방법을 보여 줍니다.
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");