realreport 1.8.2 → 1.8.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/realreport.css +1 -1
- package/dist/realreport.d.ts +325 -9
- package/dist/realreport.es.js +1 -1
- package/dist/realreport.js +1 -1
- package/package.json +1 -1
package/dist/realreport.css
CHANGED
package/dist/realreport.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/// <reference types="pdfkit" />
|
|
2
2
|
/**
|
|
3
|
-
* RealReport v1.8.
|
|
4
|
-
* commit
|
|
3
|
+
* RealReport v1.8.4
|
|
4
|
+
* commit 4cbf910
|
|
5
5
|
|
|
6
6
|
* Copyright (C) 2013-2024 WooriTech Inc.
|
|
7
7
|
https://real-report.com
|
|
@@ -9,10 +9,10 @@
|
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
|
-
* RealReport Core v1.8.
|
|
12
|
+
* RealReport Core v1.8.4
|
|
13
13
|
* Copyright (C) 2013-2024 WooriTech Inc.
|
|
14
14
|
* All Rights Reserved.
|
|
15
|
-
* commit
|
|
15
|
+
* commit 40d5438857ce09d15cfc240c2056d7d8ebee963f
|
|
16
16
|
*/
|
|
17
17
|
type ConfigObject$1 = {
|
|
18
18
|
[key: string]: any;
|
|
@@ -630,7 +630,6 @@ declare abstract class VisualContainer$1 extends EventAware$1 implements VisualT
|
|
|
630
630
|
private _offsetY;
|
|
631
631
|
private _rootElement;
|
|
632
632
|
private _feedbackElement;
|
|
633
|
-
private _printRoot;
|
|
634
633
|
private _eventHandlers;
|
|
635
634
|
private _eventNodes;
|
|
636
635
|
private _contextMenu;
|
|
@@ -1074,6 +1073,7 @@ declare enum PropCategory {
|
|
|
1074
1073
|
BAND = "band",
|
|
1075
1074
|
BAND_GROUP = "band group",
|
|
1076
1075
|
BAND_CELL = "band cell",
|
|
1076
|
+
SUB_BAND = "sub band",
|
|
1077
1077
|
FIELD = "field",
|
|
1078
1078
|
COLUMN = "column",
|
|
1079
1079
|
ROW = "row",
|
|
@@ -2406,6 +2406,9 @@ declare abstract class DataBand extends ReportGroupItem {
|
|
|
2406
2406
|
static readonly PROP_DATA_BAND_NO_SPLIT = "noSplit";
|
|
2407
2407
|
static readonly PROP_DATA_BAND_SORT_FIELD = "sortField";
|
|
2408
2408
|
static readonly PROP_DATA_BAND_SORT_DIRECTION = "sortDirection";
|
|
2409
|
+
static readonly PROP_DATA_BAND_MASTER_BAND_NAME = "masterBandName";
|
|
2410
|
+
static readonly PROP_DATA_BAND_MASTER_BAND_KEY_FIELDS = "masterBandKeyFields";
|
|
2411
|
+
static readonly PROP_DATA_BAND_SUB_BAND_KEY_FIELDS = "subBandKeyFields";
|
|
2409
2412
|
static readonly PROPINFOS: IPropInfo[];
|
|
2410
2413
|
private _sectionCount;
|
|
2411
2414
|
private _sectionLayout;
|
|
@@ -2427,10 +2430,15 @@ declare abstract class DataBand extends ReportGroupItem {
|
|
|
2427
2430
|
private _noSplit;
|
|
2428
2431
|
private _sortField;
|
|
2429
2432
|
private _sortDirection;
|
|
2433
|
+
private _masterBandName;
|
|
2434
|
+
private _masterBandKeyFields;
|
|
2435
|
+
private _subBandKeyFields;
|
|
2430
2436
|
private _detail;
|
|
2431
2437
|
private _master;
|
|
2432
2438
|
private _keyFlds;
|
|
2433
2439
|
private _masterFlds;
|
|
2440
|
+
private _subBandKeyFieldValues;
|
|
2441
|
+
private _subBandMasterKeyFieldValues;
|
|
2434
2442
|
pageNo: number;
|
|
2435
2443
|
prevHead: boolean;
|
|
2436
2444
|
prevIndex: number;
|
|
@@ -2438,6 +2446,7 @@ declare abstract class DataBand extends ReportGroupItem {
|
|
|
2438
2446
|
detailRows: number;
|
|
2439
2447
|
masterValues: any;
|
|
2440
2448
|
isNextPagePrintRow: boolean;
|
|
2449
|
+
hasSubBand: boolean;
|
|
2441
2450
|
_pr: number;
|
|
2442
2451
|
_currentPrintRow: number;
|
|
2443
2452
|
private _dataObj;
|
|
@@ -2601,6 +2610,12 @@ declare abstract class DataBand extends ReportGroupItem {
|
|
|
2601
2610
|
set sortField(value: string);
|
|
2602
2611
|
get sortDirection(): DataDirection;
|
|
2603
2612
|
set sortDirection(value: DataDirection);
|
|
2613
|
+
get masterBandName(): string;
|
|
2614
|
+
set masterBandName(value: string);
|
|
2615
|
+
get masterBandKeyFields(): string;
|
|
2616
|
+
set masterBandKeyFields(value: string);
|
|
2617
|
+
get subBandKeyFields(): string;
|
|
2618
|
+
set subBandKeyFields(value: string);
|
|
2604
2619
|
/**
|
|
2605
2620
|
* summary runtime
|
|
2606
2621
|
*/
|
|
@@ -2614,14 +2629,24 @@ declare abstract class DataBand extends ReportGroupItem {
|
|
|
2614
2629
|
*/
|
|
2615
2630
|
get currentPrintRow(): number;
|
|
2616
2631
|
set currentPrintRow(value: number);
|
|
2632
|
+
/**
|
|
2633
|
+
* band, master detail key values
|
|
2634
|
+
*/
|
|
2635
|
+
get masterFlds(): string[];
|
|
2636
|
+
get keyFlds(): string[];
|
|
2637
|
+
get subBandMasterKeyFieldValues(): string[];
|
|
2638
|
+
get subBandKeyFieldValues(): string[];
|
|
2617
2639
|
prepareIndices(ctx: PrintContext): void;
|
|
2618
2640
|
protected abstract _doPrepareIndices(ctx: PrintContext): void;
|
|
2619
2641
|
getColPoints(w: number, x?: number): number[];
|
|
2620
2642
|
getColWidth(w: number): number;
|
|
2621
2643
|
getValues(dataView: BandDataView, row: number, fields: string[]): any[];
|
|
2644
|
+
getNextSubBandDetailRows(dataView: BandDataView, from: number): number[];
|
|
2622
2645
|
protected _selectRow(dataView: BandDataView, row: number, idx: number): boolean;
|
|
2646
|
+
protected _selectSubBandRow(dataView: BandDataView, row: number, idx: number): boolean;
|
|
2623
2647
|
abstract getNextDetailRows(dataView: BandDataView, from?: number): number[];
|
|
2624
2648
|
protected _getNextDetailRows(dataView: BandDataView, from: number): number[];
|
|
2649
|
+
protected _getNextSubBandDetailRows(dataView: BandDataView, from: number): number[];
|
|
2625
2650
|
getRowsPerPage(): {
|
|
2626
2651
|
rowsPerPage: number;
|
|
2627
2652
|
breakRowsPerPage: boolean;
|
|
@@ -2637,6 +2662,7 @@ declare abstract class DataBand extends ReportGroupItem {
|
|
|
2637
2662
|
getMin(field: string, count: number, rows?: number[]): number;
|
|
2638
2663
|
getMax(field: string, count: number, rows?: number[]): number;
|
|
2639
2664
|
getAvg(field: string, count: number, rows?: number[]): number;
|
|
2665
|
+
getPropDomain(prop: IPropInfo): any[];
|
|
2640
2666
|
abstract containsInSection(item: ReportItem): boolean;
|
|
2641
2667
|
get designLevel(): number;
|
|
2642
2668
|
get dataDominant(): boolean;
|
|
@@ -3365,9 +3391,35 @@ declare class ReportElement extends VisualElement$1 {
|
|
|
3365
3391
|
protected _doPrint(doc: Document, ctx: PrintContext): void;
|
|
3366
3392
|
}
|
|
3367
3393
|
|
|
3394
|
+
/**
|
|
3395
|
+
*/
|
|
3396
|
+
declare class BandCollectionElement extends ReportGroupItemElement<DataBandCollection> {
|
|
3397
|
+
constructor(doc: Document, model: DataBandCollection);
|
|
3398
|
+
protected _doDispose(): void;
|
|
3399
|
+
get debugLabel(): string;
|
|
3400
|
+
protected _getCssSelector(): string;
|
|
3401
|
+
protected _needDesignBox(): boolean;
|
|
3402
|
+
protected _initDom(doc: Document, dom: HTMLElement): void;
|
|
3403
|
+
protected _doMeasure(ctx: PrintContext, dom: HTMLElement, hintWidth: number, hintHeight: number): Size$1;
|
|
3404
|
+
protected _doAfterMeasure(ctx: PrintContext, dom: HTMLElement, hintWidth: number, hintHeight: number, sz: Size$1): void;
|
|
3405
|
+
protected _doLayoutContent(ctx: PrintContext): void;
|
|
3406
|
+
}
|
|
3407
|
+
|
|
3368
3408
|
/** @internal */
|
|
3369
3409
|
declare abstract class ReportItemElement<T extends ReportItem> extends ReportElement {
|
|
3370
3410
|
static readonly FOLDED_HEIGHT = 22;
|
|
3411
|
+
/**
|
|
3412
|
+
* 리포트 아이템 표시 여부 확인하기
|
|
3413
|
+
*
|
|
3414
|
+
* - 디자인 시점: `model.printable`
|
|
3415
|
+
* - 프리뷰 시점: `visibleCallback(ctx, model, row, printValue)` (콜백 실행 오류 시, `model.printable`)
|
|
3416
|
+
*
|
|
3417
|
+
* @param context 출력 컨텍스트
|
|
3418
|
+
* @param model 리포트 아이템 모델
|
|
3419
|
+
* @param printValue 미리보기 시, 리포트 아이템에 적용할 value 값 (디자인 시점에서는 사용 안됨)
|
|
3420
|
+
* @returns 리포트 아이템 표시 여부
|
|
3421
|
+
*/
|
|
3422
|
+
static isReportItemPrintable(context: PrintContext, model: ReportItem, printValue: unknown): boolean;
|
|
3371
3423
|
protected _designView: HTMLDivElement;
|
|
3372
3424
|
protected _bindMarker: HTMLSpanElement;
|
|
3373
3425
|
private _a;
|
|
@@ -3416,6 +3468,7 @@ declare abstract class ReportItemElement<T extends ReportItem> extends ReportEle
|
|
|
3416
3468
|
findElementOf(dom: HTMLElement): ReportItemElement<ReportItem>;
|
|
3417
3469
|
getPrintValue(ctx: PrintContext, m: ReportItem, defaultValue?: any): any;
|
|
3418
3470
|
getPrintLinkValue(ctx: PrintContext, m: ReportItem): any;
|
|
3471
|
+
private $_getContextDataIndexValue;
|
|
3419
3472
|
protected _doModelChanged(oldModel: T): void;
|
|
3420
3473
|
protected _setX(dom: HTMLElement, x: number): void;
|
|
3421
3474
|
protected _setY(dom: HTMLElement, y: number): void;
|
|
@@ -3497,12 +3550,134 @@ declare abstract class ReportGroupItemElement<T extends ReportGroupItem> extends
|
|
|
3497
3550
|
protected _doPrint(doc: Document, ctx: PrintContext): void;
|
|
3498
3551
|
}
|
|
3499
3552
|
type ReportGroupItemView = ReportGroupItemElement<ReportGroupItem>;
|
|
3553
|
+
declare abstract class BandElement<T extends DataBand> extends ReportGroupItemElement<T> {
|
|
3554
|
+
static readonly END_ROW_MESSAGE_CLASS = "rr-end-row-message";
|
|
3555
|
+
static readonly END_ROW_CLASS = "rr-end-row";
|
|
3556
|
+
abstract get rowView(): ReportGroupItemView;
|
|
3557
|
+
private _needFooterView;
|
|
3558
|
+
get needFooterView(): boolean;
|
|
3559
|
+
set needFooterView(value: boolean);
|
|
3560
|
+
abstract getLines(): ReportItemView[];
|
|
3561
|
+
abstract printRow(ctx: PrintContext, row: number): any;
|
|
3562
|
+
getSibling(item: ReportItemView, delta: number): ReportItemView;
|
|
3563
|
+
abstract addMasterRow(page: HTMLDivElement, headerView: any, rowView: any, x: number, y: number): number;
|
|
3564
|
+
abstract prepareAsync(doc: Document, ctx: PrintContext, width: number, subRows: number[], masterRow: number): BandPrintInfo<any>;
|
|
3565
|
+
abstract prepareSubBand(doc: Document, ctx: PrintContext, width: number, dataRows: number[]): BandPrintInfo<any>;
|
|
3566
|
+
protected _prepareDetail(doc: Document, ctx: PrintContext, band: DataBand, details: DataBandCollection, detailViews: BandCollectionElement, r: number, rows: BandPrintRow[], width: number): void;
|
|
3567
|
+
protected _getNext(item: ReportItemView): ReportItemView;
|
|
3568
|
+
protected _getPrev(item: ReportItemView): ReportItemView;
|
|
3569
|
+
}
|
|
3570
|
+
|
|
3571
|
+
/**
|
|
3572
|
+
* @internal
|
|
3573
|
+
* Table element의 child가 아니다.
|
|
3574
|
+
* Td cell에 표시되는 element의 부모 conatiner 역할을 한다.
|
|
3575
|
+
*/
|
|
3576
|
+
declare class TableCellElementBase extends ReportGroupItemElement<TableCellItem> {
|
|
3577
|
+
static readonly STYLE = "rr-table-cell";
|
|
3578
|
+
private _table;
|
|
3579
|
+
private _row;
|
|
3580
|
+
private _col;
|
|
3581
|
+
constructor(doc: Document, table: TableElement<TableBase>, model: TableCellItem, name: string);
|
|
3582
|
+
protected _doDispose(): void;
|
|
3583
|
+
get table(): TableElement<TableBase>;
|
|
3584
|
+
get container(): VisualContainer$1;
|
|
3585
|
+
get debugLabel(): string;
|
|
3586
|
+
get designable(): boolean;
|
|
3587
|
+
get navigable(): boolean;
|
|
3588
|
+
get navigableParent(): ReportGroupItemView;
|
|
3589
|
+
protected _getCssSelector(): string;
|
|
3590
|
+
protected _needContentBox(): boolean;
|
|
3591
|
+
protected _initDom(doc: Document, dom: HTMLElement): void;
|
|
3592
|
+
protected _prepareChild(child: ReportItemView): void;
|
|
3593
|
+
protected _doLayoutContent(ctx: PrintContext): void;
|
|
3594
|
+
}
|
|
3500
3595
|
interface ITable {
|
|
3501
3596
|
colCount: number;
|
|
3502
3597
|
columns: TableColumnCollectionBase<ReportGroupItem, TableColumnBase>;
|
|
3503
3598
|
getColumn(index: number): TableColumnBase;
|
|
3504
3599
|
getColPoints(): number[];
|
|
3505
3600
|
}
|
|
3601
|
+
/** @internal */
|
|
3602
|
+
declare abstract class TableElement<T extends TableBase> extends ReportGroupItemElement<T> {
|
|
3603
|
+
static setTableStyle(table: HTMLTableElement, fill?: boolean): void;
|
|
3604
|
+
static getTable(elt: VisualElement$1): TableElement<any>;
|
|
3605
|
+
private _masterView;
|
|
3606
|
+
private _table;
|
|
3607
|
+
private _colgroup;
|
|
3608
|
+
private _tbody;
|
|
3609
|
+
private _tcells;
|
|
3610
|
+
private _ecells;
|
|
3611
|
+
private _spans;
|
|
3612
|
+
private _colPts;
|
|
3613
|
+
private _cellWidths;
|
|
3614
|
+
private _rowHeights;
|
|
3615
|
+
constructor(doc: Document, model: T, name: string);
|
|
3616
|
+
protected _doDispose(): void;
|
|
3617
|
+
get rowCount(): number;
|
|
3618
|
+
get cellCount(): number;
|
|
3619
|
+
get cellViews(): TableCellElementBase[];
|
|
3620
|
+
get hasCells(): boolean;
|
|
3621
|
+
/**
|
|
3622
|
+
* designer에서 호출한다.
|
|
3623
|
+
*/
|
|
3624
|
+
getColPoints(): number[];
|
|
3625
|
+
getColWidth(col: number): number;
|
|
3626
|
+
getRowPoints(): number[];
|
|
3627
|
+
getRowRect(row: number, count?: number): IRect;
|
|
3628
|
+
getColRect(col: number, count?: number): IRect;
|
|
3629
|
+
get blockable(): boolean;
|
|
3630
|
+
get debugLabel(): string;
|
|
3631
|
+
protected _needContentBox(): boolean;
|
|
3632
|
+
getCellOf(target: Element, deep: boolean): TableCell$1;
|
|
3633
|
+
findChildAt(x: number, y: number, hitTesting: boolean): VisualElement$1;
|
|
3634
|
+
findChildOf(dom: HTMLElement): VisualElement$1;
|
|
3635
|
+
findElement(modelName: string): ReportItemElement<ReportItem>;
|
|
3636
|
+
findElementOf(dom: HTMLElement): ReportItemElement<ReportItem>;
|
|
3637
|
+
getElementOf(model: ReportItem): ReportElement;
|
|
3638
|
+
setCellDoms(to: HTMLTableRowElement, from: HTMLTableRowElement): void;
|
|
3639
|
+
unsetCellDoms(to: HTMLTableRowElement, from: HTMLTableRowElement): void;
|
|
3640
|
+
replaceCellDoms(to: HTMLTableRowElement, from: HTMLTableRowElement): void;
|
|
3641
|
+
protected _setTableStyles(table: HTMLTableElement): void;
|
|
3642
|
+
protected _createDom(doc: Document): HTMLElement;
|
|
3643
|
+
protected _doModelChanged(oldModel: TableBase): void;
|
|
3644
|
+
$_refreshRowCells(ctx: PrintContext, hintWidth: number, hintHeight: number, force?: boolean): void;
|
|
3645
|
+
protected _isEmpty(): boolean;
|
|
3646
|
+
protected _doMeasure(ctx: PrintContext, dom: HTMLElement, hintWidth: number, hintHeight: number): Size$1;
|
|
3647
|
+
protected _doLayoutContent(ctx: PrintContext): void;
|
|
3648
|
+
protected abstract _createCellElement(doc: Document, cell: TableCellItem): TableCellElementBase;
|
|
3649
|
+
clear(): boolean;
|
|
3650
|
+
protected _buildItems(ctx: PrintContext, report: ReportView, model: T): void;
|
|
3651
|
+
protected _prepareCellStyles(ctx: PrintContext, table: TableBase, row: number, col: number, td: HTMLTableCellElement): void;
|
|
3652
|
+
protected _prepareChild(child: ReportElement): void;
|
|
3653
|
+
/**
|
|
3654
|
+
* 테이블 내에서 첫번째 item.
|
|
3655
|
+
*/
|
|
3656
|
+
getFirst(): ReportItemView;
|
|
3657
|
+
getLast(): ReportItemView;
|
|
3658
|
+
protected _getPrev(item: ReportItemView): ReportItemView;
|
|
3659
|
+
protected _getNext(item: ReportItemView): ReportItemView;
|
|
3660
|
+
getUpper(item: ReportItemView): ReportItemView;
|
|
3661
|
+
getLower(item: ReportItemView): ReportItemView;
|
|
3662
|
+
get $_trows(): HTMLCollectionOf<HTMLTableRowElement>;
|
|
3663
|
+
get $_trowsCopy(): HTMLTableRowElement[];
|
|
3664
|
+
$_cloneRow(tr: HTMLTableRowElement): HTMLTableRowElement;
|
|
3665
|
+
$_td(row: number, col: number): HTMLTableCellElement;
|
|
3666
|
+
private $_cellChanged;
|
|
3667
|
+
private $_prepareTable;
|
|
3668
|
+
protected _setRowStyles(tr: HTMLTableRowElement, row: number): void;
|
|
3669
|
+
private $_prepareColGroup;
|
|
3670
|
+
private $_prepareTableRow;
|
|
3671
|
+
private $_prepareTableRowCells;
|
|
3672
|
+
private $_calcCellWidths;
|
|
3673
|
+
private $_measureCellWidths;
|
|
3674
|
+
private $_calcRowHeights;
|
|
3675
|
+
private $_measureRowHeights;
|
|
3676
|
+
getCellBoundingRect(col: number, row: number, width: number, height: number): IRect;
|
|
3677
|
+
private $_layoutViewInCell;
|
|
3678
|
+
protected _findCell(model: TableCellItem): TableCellElementBase;
|
|
3679
|
+
createColGroup(doc: Document, width: number): HTMLTableColElement;
|
|
3680
|
+
}
|
|
3506
3681
|
|
|
3507
3682
|
declare class CrosstabFieldHeader extends ReportItem {
|
|
3508
3683
|
static readonly PROP_SUFFIX = "suffix";
|
|
@@ -4335,6 +4510,7 @@ declare abstract class ChartAxisCollection<T extends ChartItem, C = unknown> ext
|
|
|
4335
4510
|
get count(): number;
|
|
4336
4511
|
get items(): ChartAxis<T, C>[];
|
|
4337
4512
|
get visibleCount(): number;
|
|
4513
|
+
abstract getChartConfig(context: PrintContext): C[];
|
|
4338
4514
|
abstract getSaveLabel(): string;
|
|
4339
4515
|
defaultInit(): void;
|
|
4340
4516
|
load(loader: IReportLoader, source: ReportSource): void;
|
|
@@ -4506,7 +4682,7 @@ declare abstract class RCAxis<C = RCAxisConfig> extends ChartAxis<RealChartItem,
|
|
|
4506
4682
|
}
|
|
4507
4683
|
declare abstract class RCAxisCollection extends ChartAxisCollection<RealChartItem, RCAxisConfig> {
|
|
4508
4684
|
abstract get direction(): RCAxisDirection;
|
|
4509
|
-
|
|
4685
|
+
getChartConfig(context: PrintContext): RCAxisConfig[];
|
|
4510
4686
|
}
|
|
4511
4687
|
declare class RCXAxisCollection extends RCAxisCollection {
|
|
4512
4688
|
get outlineLabel(): string;
|
|
@@ -4539,6 +4715,7 @@ declare abstract class ChartSeriesCollection$1<T extends ChartItem, C = unknown>
|
|
|
4539
4715
|
get count(): number;
|
|
4540
4716
|
get items(): ChartSeries$1<T, C>[];
|
|
4541
4717
|
get visibleCount(): number;
|
|
4718
|
+
abstract getChartConfig(context: PrintContext): C[];
|
|
4542
4719
|
getSaveLabel(): string;
|
|
4543
4720
|
defaultInit(): void;
|
|
4544
4721
|
load(loader: IReportLoader, source: ReportSource): void;
|
|
@@ -4588,6 +4765,7 @@ declare abstract class ChartSeries$1<T extends ChartItem, C = unknown> extends C
|
|
|
4588
4765
|
set index(value: number);
|
|
4589
4766
|
get designVisible(): boolean;
|
|
4590
4767
|
set designVisible(value: boolean);
|
|
4768
|
+
hasSeriesData(context: PrintContext): boolean;
|
|
4591
4769
|
protected getVisible(context: PrintContext): boolean;
|
|
4592
4770
|
protected getSeriesData(context: PrintContext): number[];
|
|
4593
4771
|
get displayPath(): string;
|
|
@@ -4625,7 +4803,7 @@ declare abstract class RCSeries<C = RCSeriesConfig> extends ChartSeries$1<RealCh
|
|
|
4625
4803
|
protected _doSave(target: ReportTarget): void;
|
|
4626
4804
|
}
|
|
4627
4805
|
declare class RCSeriesCollection extends ChartSeriesCollection$1<RealChartItem, RCSeriesConfig> {
|
|
4628
|
-
|
|
4806
|
+
getChartConfig(context: PrintContext): RCSeriesConfig[];
|
|
4629
4807
|
protected _createSeries(loader: IReportLoader, src: ReportSource): RCSeries;
|
|
4630
4808
|
protected _seriesChanged(): void;
|
|
4631
4809
|
}
|
|
@@ -4841,10 +5019,30 @@ declare enum ReportItemType {
|
|
|
4841
5019
|
* Report Item들에 대한 정보를 한곳에 모아서 등록해놓고 용이하게 꺼내쓰기 위해 작성
|
|
4842
5020
|
*/
|
|
4843
5021
|
declare class ReportItemRegistry extends Base$1 {
|
|
5022
|
+
private readonly _masterBandItemTypes;
|
|
4844
5023
|
private _reportItemFlatMap;
|
|
4845
5024
|
constructor();
|
|
4846
|
-
add(
|
|
5025
|
+
add(item: ReportItem): void;
|
|
5026
|
+
remove(item: ReportItem | ReportPageItem): void;
|
|
4847
5027
|
getItemCount(type: ReportItemType): number;
|
|
5028
|
+
/**
|
|
5029
|
+
* 가장 최상위에 있는 밴드의 이름들을 반환해주기 위해 작성
|
|
5030
|
+
* @returns 가장 최상위 위치에 있는 밴드의 이름들을 모아서 반환
|
|
5031
|
+
*/
|
|
5032
|
+
getRootBandItemNames(): string[];
|
|
5033
|
+
getSubBandsByMasterName(masterName: string): DataBand[];
|
|
5034
|
+
getItemType(item: ReportItem): ReportItemType | undefined;
|
|
5035
|
+
private $_removeChildItems;
|
|
5036
|
+
}
|
|
5037
|
+
|
|
5038
|
+
declare class SubBandPage extends ReportPage {
|
|
5039
|
+
constructor(report: Report, name?: string);
|
|
5040
|
+
static readonly $_ctor: string;
|
|
5041
|
+
get outlineLabel(): string;
|
|
5042
|
+
protected _addSectionModel(): void;
|
|
5043
|
+
protected _doLoad(loader: IReportLoader, src: any): void;
|
|
5044
|
+
protected _ignoreItems(): boolean;
|
|
5045
|
+
protected _doSave(target: object): void;
|
|
4848
5046
|
}
|
|
4849
5047
|
|
|
4850
5048
|
declare enum PaperSize {
|
|
@@ -5111,9 +5309,11 @@ declare class Report extends EventAware$1 implements IEditCommandStackOwner, IPr
|
|
|
5111
5309
|
save(pageOnly?: boolean): object;
|
|
5112
5310
|
getPage(index: number): ReportPage;
|
|
5113
5311
|
addPage(): ReportPage;
|
|
5312
|
+
addSubBandPage(): SubBandPage;
|
|
5114
5313
|
removePage(index: number): boolean;
|
|
5115
5314
|
movePage(index: number, newIndex: number): void;
|
|
5116
5315
|
internalAddPage(page?: ReportPage): ReportPage;
|
|
5316
|
+
internalAddSubBandPage(page?: SubBandPage): SubBandPage;
|
|
5117
5317
|
internalRemovePage(page: ReportPage): boolean;
|
|
5118
5318
|
internalMovePage(index: number, newIndex: number): void;
|
|
5119
5319
|
getMaxPageCount(): number;
|
|
@@ -5250,8 +5450,12 @@ declare class Report extends EventAware$1 implements IEditCommandStackOwner, IPr
|
|
|
5250
5450
|
protected _createReportInfo(report: Report): ReportInfo;
|
|
5251
5451
|
protected _createReportLoader(): IReportLoader;
|
|
5252
5452
|
protected _createReportPage(report: Report): ReportPage;
|
|
5453
|
+
protected _createSubBandPage(report: Report): SubBandPage;
|
|
5454
|
+
private $_loadPages;
|
|
5253
5455
|
private $_addPage;
|
|
5456
|
+
private $_addSubBandPage;
|
|
5254
5457
|
private $_refreshInvalids;
|
|
5458
|
+
private $_refereshPages;
|
|
5255
5459
|
private $_resetPages;
|
|
5256
5460
|
protected onPageItemAdded(source: IEventAware, item: ReportPageItem, index: number, silent: boolean): void;
|
|
5257
5461
|
protected onPageItemsAdded(source: IEventAware, items: ReportPageItem[], index: number): void;
|
|
@@ -5274,6 +5478,7 @@ declare class Report extends EventAware$1 implements IEditCommandStackOwner, IPr
|
|
|
5274
5478
|
* 1. band는 body의 최상위 항목으로만 추가될 수 있다. 즉, 다른 항목의 자식이 될 수 없다.
|
|
5275
5479
|
*/
|
|
5276
5480
|
declare class ReportPage extends ReportGroupItem implements IEventAware {
|
|
5481
|
+
static readonly PROP_PAGE_TYPE = "type";
|
|
5277
5482
|
static readonly PROP_ORIENTATION = "orientation";
|
|
5278
5483
|
static readonly PROP_MARGIN_LEFT = "marginLeft";
|
|
5279
5484
|
static readonly PROP_MARGIN_RIGHT = "marginRight";
|
|
@@ -5287,6 +5492,7 @@ declare class ReportPage extends ReportGroupItem implements IEventAware {
|
|
|
5287
5492
|
static readonly COLLECTION_CHANGED = "onPageCollectionChanged";
|
|
5288
5493
|
static readonly $_ctor: string;
|
|
5289
5494
|
static readonly PROPINFOS: IPropInfo[];
|
|
5495
|
+
private _type;
|
|
5290
5496
|
private _orientation;
|
|
5291
5497
|
private _marginLeft;
|
|
5292
5498
|
private _marginRight;
|
|
@@ -5318,40 +5524,63 @@ declare class ReportPage extends ReportGroupItem implements IEventAware {
|
|
|
5318
5524
|
* report
|
|
5319
5525
|
*/
|
|
5320
5526
|
get report(): Report;
|
|
5527
|
+
/**
|
|
5528
|
+
* pageIndex
|
|
5529
|
+
*/
|
|
5530
|
+
get pageIndex(): number;
|
|
5531
|
+
set pageIndex(index: number);
|
|
5321
5532
|
/**
|
|
5322
5533
|
* reportHeader
|
|
5323
5534
|
*/
|
|
5324
5535
|
get reportHeader(): ReportHeader;
|
|
5536
|
+
set reportHeader(section: ReportHeader);
|
|
5325
5537
|
/**
|
|
5326
5538
|
* reportFooter
|
|
5327
5539
|
*/
|
|
5328
5540
|
get reportFooter(): ReportFooter;
|
|
5541
|
+
set reportFooter(section: ReportFooter);
|
|
5329
5542
|
/**
|
|
5330
5543
|
* pageHeader
|
|
5331
5544
|
*/
|
|
5332
5545
|
get pageHeader(): PageHeader;
|
|
5546
|
+
set pageHeader(section: PageHeader);
|
|
5333
5547
|
/**
|
|
5334
5548
|
* pageFooter
|
|
5335
5549
|
*/
|
|
5336
5550
|
get pageFooter(): PageFooter;
|
|
5551
|
+
set pageFooter(section: PageFooter);
|
|
5337
5552
|
/**
|
|
5338
5553
|
* body
|
|
5339
5554
|
*/
|
|
5340
5555
|
get body(): PageBody;
|
|
5556
|
+
set body(section: PageBody);
|
|
5341
5557
|
get backContainer(): PageItemContainer;
|
|
5558
|
+
set backContainer(section: PageItemContainer);
|
|
5342
5559
|
/**
|
|
5343
5560
|
* backItems
|
|
5344
5561
|
*/
|
|
5345
5562
|
get backItems(): ReportItem[];
|
|
5346
5563
|
get frontContainer(): PageItemContainer;
|
|
5564
|
+
set frontContainer(section: PageItemContainer);
|
|
5347
5565
|
/**
|
|
5348
5566
|
* frontItems
|
|
5349
5567
|
*/
|
|
5350
5568
|
get frontItems(): ReportItem[];
|
|
5569
|
+
/**
|
|
5570
|
+
* sections
|
|
5571
|
+
*/
|
|
5572
|
+
get sections(): ReportGroupItem[];
|
|
5573
|
+
set sections(groupItems: ReportGroupItem[]);
|
|
5351
5574
|
/**
|
|
5352
5575
|
* loading
|
|
5353
5576
|
*/
|
|
5354
5577
|
get loading(): boolean;
|
|
5578
|
+
set loading(value: boolean);
|
|
5579
|
+
/**
|
|
5580
|
+
* type
|
|
5581
|
+
*/
|
|
5582
|
+
get type(): ReportPageType;
|
|
5583
|
+
set type(type: ReportPageType);
|
|
5355
5584
|
/**
|
|
5356
5585
|
* orientation
|
|
5357
5586
|
*/
|
|
@@ -5401,6 +5630,7 @@ declare class ReportPage extends ReportGroupItem implements IEventAware {
|
|
|
5401
5630
|
item: ReportItem;
|
|
5402
5631
|
reason: string;
|
|
5403
5632
|
}[]): void;
|
|
5633
|
+
protected _addSectionModel(): void;
|
|
5404
5634
|
protected _createPageBody(): PageBody;
|
|
5405
5635
|
protected _createReportFooter(): ReportFooter;
|
|
5406
5636
|
/**
|
|
@@ -5752,6 +5982,33 @@ declare class PageBodyElement extends ReportElement {
|
|
|
5752
5982
|
protected _doLayoutContent(ctx: PrintContext): void;
|
|
5753
5983
|
layoutFloating(ctx: PrintContext): void;
|
|
5754
5984
|
private $_prepareAsync;
|
|
5985
|
+
/**
|
|
5986
|
+
* Normal Band일 경우 사용
|
|
5987
|
+
*/
|
|
5988
|
+
private $_prepareBandElement;
|
|
5989
|
+
/**
|
|
5990
|
+
* TODO: BandElement 쪽으로 로직을 옮기는게 좋아보임.
|
|
5991
|
+
* SubBandElement 연결되어있다면 해당 내용으로 준비
|
|
5992
|
+
*/
|
|
5993
|
+
private $_prepareSubBandElement;
|
|
5994
|
+
/**
|
|
5995
|
+
* 아래처럼 데이터 예시로 생성되는 PrintRows 모양 예시
|
|
5996
|
+
* masterData: [{ key: 1, key: 2, key: 3, key: 4}]
|
|
5997
|
+
* subData: [{ key:1, name: a }, {key: 1, name: b}, {key: 4, name: a}]
|
|
5998
|
+
* [
|
|
5999
|
+
* {
|
|
6000
|
+
* masterBandPrintRows: [0],
|
|
6001
|
+
* subBandPrintInfos: [{ subBandElement: BandElement, subBandPrintRows: [0, 1] }]
|
|
6002
|
+
* },
|
|
6003
|
+
* {
|
|
6004
|
+
* masterBandPrintRows: [1, 2, 3],
|
|
6005
|
+
* subBandPrintInfos: [{ subBandElement: BandElement, subBandPrintRows: [2] }]
|
|
6006
|
+
* }
|
|
6007
|
+
* ]
|
|
6008
|
+
*/
|
|
6009
|
+
private $_createSubBandPrintRows;
|
|
6010
|
+
private $_createSubBandPrintLines;
|
|
6011
|
+
private $_isLastChild;
|
|
5755
6012
|
}
|
|
5756
6013
|
|
|
5757
6014
|
/** @internal */
|
|
@@ -5854,6 +6111,7 @@ declare class PageView extends LayerElement$1 {
|
|
|
5854
6111
|
getUpper(elt: ReportItemView): ReportItemView;
|
|
5855
6112
|
getLower(elt: ReportItemView): ReportItemView;
|
|
5856
6113
|
itemOfDom(dom: Element): ReportItem;
|
|
6114
|
+
setSectionEnabled(options: PageViewOptions): void;
|
|
5857
6115
|
protected _getCssSelector(): string;
|
|
5858
6116
|
protected _createPageHeaderElement(doc: Document): PageHeaderElement;
|
|
5859
6117
|
protected _createPageFooterElement(doc: Document): PageFooterElement;
|
|
@@ -6168,6 +6426,41 @@ declare class HtmlItemElement extends ReportItemElement<HtmlItem> {
|
|
|
6168
6426
|
private $_validateHtmlTags;
|
|
6169
6427
|
}
|
|
6170
6428
|
|
|
6429
|
+
/**
|
|
6430
|
+
* Report Item Element들에 대한 정보를 한곳에 모아서 등록해놓고 용이하게 꺼내쓰기 위해 작성
|
|
6431
|
+
*/
|
|
6432
|
+
declare class ReportItemElementMap extends Base$1 {
|
|
6433
|
+
private _reportItemElements;
|
|
6434
|
+
constructor();
|
|
6435
|
+
add<T extends ReportItem>(itemElement: ReportItemElement<T>): void;
|
|
6436
|
+
getItemElementByModel<T extends ReportItem>(model: ReportItem): ReportItemElement<T> | undefined;
|
|
6437
|
+
getBandElementByModel<T extends DataBand>(model: DataBand): BandElement<T> | undefined;
|
|
6438
|
+
}
|
|
6439
|
+
declare class TableBandGroupSectionElement<T extends TableBandRowGroupSection> extends TableElement<T> {
|
|
6440
|
+
constructor(doc: Document, model: T, name: string);
|
|
6441
|
+
applyGroupStyles(tr: HTMLTableRowElement): void;
|
|
6442
|
+
protected _needDesignBox(): boolean;
|
|
6443
|
+
protected _createCellElement(doc: Document, cell: TableCellItem): TableCellElementBase;
|
|
6444
|
+
protected _doMeasure(ctx: PrintContext, dom: HTMLElement, hintWidth: number, hintHeight: number): Size$1;
|
|
6445
|
+
protected _doAfterMeasure(ctx: PrintContext, dom: HTMLElement, hintWidth: number, hintHeight: number, sz: Size$1): void;
|
|
6446
|
+
}
|
|
6447
|
+
interface ITableGroupPrintInfo extends IGroupPrintInfo {
|
|
6448
|
+
view: TableBandGroupSectionElement<TableBandRowGroupHeader | TableBandRowGroupFooter>;
|
|
6449
|
+
}
|
|
6450
|
+
type TableBandPrintRow = BandPrintRow | ITableGroupPrintInfo;
|
|
6451
|
+
|
|
6452
|
+
declare class SimpleBandGroupSectionElement<T extends SimpleBandRowGroupSection> extends StackContainerElement<T> {
|
|
6453
|
+
constructor(doc: Document, model: T, name: string);
|
|
6454
|
+
applyGroupStyles(elt: HTMLElement): void;
|
|
6455
|
+
protected _needDesignBox(): boolean;
|
|
6456
|
+
protected _doMeasure(ctx: PrintContext, dom: HTMLElement, hintWidth: number, hintHeight: number): Size$1;
|
|
6457
|
+
protected _doAfterMeasure(ctx: PrintContext, dom: HTMLElement, hintWidth: number, hintHeight: number, sz: Size$1): void;
|
|
6458
|
+
}
|
|
6459
|
+
interface ISimpleGroupPrintInfo extends IGroupPrintInfo {
|
|
6460
|
+
view: SimpleBandGroupSectionElement<SimpleBandRowGroupHeader | SimpleBandRowGroupFooter>;
|
|
6461
|
+
}
|
|
6462
|
+
type SimpleBandPrintRow = BandPrintRow | ISimpleGroupPrintInfo;
|
|
6463
|
+
|
|
6171
6464
|
interface AsyncLoadable {
|
|
6172
6465
|
loadAsync(ctx: PrintContext): Promise<void>;
|
|
6173
6466
|
}
|
|
@@ -6230,6 +6523,7 @@ declare class PrintContext extends Base$1 {
|
|
|
6230
6523
|
contextElements: {
|
|
6231
6524
|
[hash: string]: TextItemElementBase<any>;
|
|
6232
6525
|
};
|
|
6526
|
+
private _reportItemElementMap;
|
|
6233
6527
|
private _asyncLoadableElements;
|
|
6234
6528
|
constructor(printing?: boolean, compositePrinting?: boolean);
|
|
6235
6529
|
/**
|
|
@@ -6298,6 +6592,7 @@ declare class PrintContext extends Base$1 {
|
|
|
6298
6592
|
* compositePage index.
|
|
6299
6593
|
*/
|
|
6300
6594
|
get compositePage(): number;
|
|
6595
|
+
get reportItemElementMap(): ReportItemElementMap;
|
|
6301
6596
|
preparePrint(report?: Report): void;
|
|
6302
6597
|
preparePage(page: number, allPage: number): void;
|
|
6303
6598
|
setDetailPage(count: number, page: number): void;
|
|
@@ -6332,6 +6627,7 @@ declare class PrintContext extends Base$1 {
|
|
|
6332
6627
|
* @param itemElement 로드가 필요한 reportItemElement
|
|
6333
6628
|
*/
|
|
6334
6629
|
addAsyncLoadableElement(itemElement: AsyncLoadable): void;
|
|
6630
|
+
addReportItemElement(itemElement: ReportItemElement<any>): void;
|
|
6335
6631
|
/**
|
|
6336
6632
|
* 로드가 필요한 Elements에 대한 비동기 처리
|
|
6337
6633
|
*/
|
|
@@ -6349,6 +6645,11 @@ declare class EndRowMarker {
|
|
|
6349
6645
|
maxCount: number;
|
|
6350
6646
|
constructor(count: number, maxCount: number);
|
|
6351
6647
|
}
|
|
6648
|
+
interface IGroupPrintInfo {
|
|
6649
|
+
row: number;
|
|
6650
|
+
rowType: string;
|
|
6651
|
+
group: IBandRowGroup;
|
|
6652
|
+
}
|
|
6352
6653
|
type BandPrintRow = number | BandFooterPrintInfo | BandPrintInfo<any> | EndRowMarker;
|
|
6353
6654
|
declare abstract class BandPrintInfo<T extends ReportItem> {
|
|
6354
6655
|
band: T;
|
|
@@ -6382,6 +6683,10 @@ declare abstract class BandPrintInfo<T extends ReportItem> {
|
|
|
6382
6683
|
isBand(row: any): row is BandPrintInfo<any>;
|
|
6383
6684
|
isGroupHeader(row: any): boolean;
|
|
6384
6685
|
isGroupFooter(row: any): boolean;
|
|
6686
|
+
/**
|
|
6687
|
+
* 밴드아이템 출력중 가장 마지막 행이 포함되어서 출력중인지 판단
|
|
6688
|
+
*/
|
|
6689
|
+
isLastRowIncluded(lastRow: number, rows: TableBandPrintRow[] | SimpleBandPrintRow[]): boolean;
|
|
6385
6690
|
protected _setX(dom: HTMLElement, x: number): void;
|
|
6386
6691
|
protected _setY(dom: HTMLElement, y: number): void;
|
|
6387
6692
|
protected _setPos(dom: HTMLElement, x: number, y: number): void;
|
|
@@ -6416,7 +6721,10 @@ declare abstract class BandPrintInfo<T extends ReportItem> {
|
|
|
6416
6721
|
protected _resetRowIndex(row: BandPrintInfo<SimpleBand | TableBand>): void;
|
|
6417
6722
|
protected _prepareDetailBandPrintNext(ctx: PrintContext, band: DataBand, row: BandPrintInfo<SimpleBand | TableBand>, rows: BandPrintRow[], rowsPerPage: number): void;
|
|
6418
6723
|
}
|
|
6419
|
-
type PrintLine =
|
|
6724
|
+
type PrintLine = {
|
|
6725
|
+
line: HTMLElement | BandPrintInfo<any> | ReportFooterPrintInfo | PageBreaker;
|
|
6726
|
+
pageIndex: number;
|
|
6727
|
+
};
|
|
6420
6728
|
|
|
6421
6729
|
interface ISelectionSource {
|
|
6422
6730
|
selectItem: ReportPageItem;
|
|
@@ -8107,6 +8415,10 @@ declare enum ReportType {
|
|
|
8107
8415
|
REPORT = "report",
|
|
8108
8416
|
EMAIL = "email"
|
|
8109
8417
|
}
|
|
8418
|
+
declare enum ReportPageType {
|
|
8419
|
+
REPORT = "report",
|
|
8420
|
+
SUB_BAND = "subBand"
|
|
8421
|
+
}
|
|
8110
8422
|
declare enum BoxItemsAlign {
|
|
8111
8423
|
START = "start",
|
|
8112
8424
|
MIDDLE = "middle",
|
|
@@ -8277,6 +8589,10 @@ declare class PrintContainer extends VisualContainer$1 {
|
|
|
8277
8589
|
private $_buildOutput;
|
|
8278
8590
|
private $_buildNoPagingOutput;
|
|
8279
8591
|
private $_setFrontBackLayer;
|
|
8592
|
+
/**
|
|
8593
|
+
* 서브 밴드 페이지들은 다른 페이지들에 연결해서 사용되기 때문에 우선적으로 뷰를 준비한다.
|
|
8594
|
+
*/
|
|
8595
|
+
private $_prepareSubPageViews;
|
|
8280
8596
|
/**
|
|
8281
8597
|
* unitpost 한장 요약 HTML 요청으로 singlePage 별도 메서드로 분리
|
|
8282
8598
|
*/
|