@bimatrix-aud-platform/aud_mcp_server 1.1.14 → 1.1.16
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/index.js +333 -28
- package/package.json +1 -1
- package/schemas/ds.interface.ts +68 -0
- package/schemas/ds.schema.json +102 -0
- package/schemas/json2.interface.ts +503 -0
- package/schemas/json2.schema.json +605 -0
- package/schemas/mtsd.interface.ts +599 -17
- package/schemas/mtsd.schema.json +316 -7
package/schemas/mtsd.schema.json
CHANGED
|
@@ -180,11 +180,17 @@
|
|
|
180
180
|
"Type": {
|
|
181
181
|
"type": "string",
|
|
182
182
|
"enum": [
|
|
183
|
-
"Label", "Button", "
|
|
184
|
-
"
|
|
185
|
-
"
|
|
186
|
-
"
|
|
187
|
-
"
|
|
183
|
+
"Label", "Button", "Image",
|
|
184
|
+
"TextBox", "MaskTextBox", "NumberBox", "RichTextBox",
|
|
185
|
+
"ComboBox", "MultiComboBox", "PickList",
|
|
186
|
+
"CheckBox", "RadioButton", "Tree", "TreeView",
|
|
187
|
+
"ColorPicker", "ColorSelector", "Slider",
|
|
188
|
+
"Calendar", "CalendarYear", "CalendarYM", "CalendarFromTo", "CalendarWeeklyFromTo",
|
|
189
|
+
"FileUpload", "FileUploadButton",
|
|
190
|
+
"DataGrid", "TreeGrid", "OlapGrid", "iGrid", "CompactDataGrid", "ListGrid",
|
|
191
|
+
"Chart", "PieChart", "ScatterChart", "PolygonChart",
|
|
192
|
+
"Group", "Tab", "TableLayout", "AddIn", "UserComponent",
|
|
193
|
+
"Browser", "WebContainer", "DiagramControl", "Slicer"
|
|
188
194
|
],
|
|
189
195
|
"description": "컨트롤 타입"
|
|
190
196
|
},
|
|
@@ -249,6 +255,90 @@
|
|
|
249
255
|
{
|
|
250
256
|
"if": { "properties": { "Type": { "const": "OlapGrid" } } },
|
|
251
257
|
"then": { "$ref": "#/$defs/OlapGridElement" }
|
|
258
|
+
},
|
|
259
|
+
{
|
|
260
|
+
"if": { "properties": { "Type": { "const": "RadioButton" } } },
|
|
261
|
+
"then": { "$ref": "#/$defs/RadioButtonElement" }
|
|
262
|
+
},
|
|
263
|
+
{
|
|
264
|
+
"if": { "properties": { "Type": { "const": "MaskTextBox" } } },
|
|
265
|
+
"then": { "$ref": "#/$defs/MaskTextBoxElement" }
|
|
266
|
+
},
|
|
267
|
+
{
|
|
268
|
+
"if": { "properties": { "Type": { "const": "MultiComboBox" } } },
|
|
269
|
+
"then": { "$ref": "#/$defs/MultiComboBoxElement" }
|
|
270
|
+
},
|
|
271
|
+
{
|
|
272
|
+
"if": { "properties": { "Type": { "const": "Tab" } } },
|
|
273
|
+
"then": { "$ref": "#/$defs/TabElement" }
|
|
274
|
+
},
|
|
275
|
+
{
|
|
276
|
+
"if": { "properties": { "Type": { "const": "Calendar" } } },
|
|
277
|
+
"then": { "$ref": "#/$defs/CalendarElement" }
|
|
278
|
+
},
|
|
279
|
+
{
|
|
280
|
+
"if": { "properties": { "Type": { "const": "CalendarYear" } } },
|
|
281
|
+
"then": { "$ref": "#/$defs/CalendarElement" }
|
|
282
|
+
},
|
|
283
|
+
{
|
|
284
|
+
"if": { "properties": { "Type": { "const": "CalendarYM" } } },
|
|
285
|
+
"then": { "$ref": "#/$defs/CalendarElement" }
|
|
286
|
+
},
|
|
287
|
+
{
|
|
288
|
+
"if": { "properties": { "Type": { "const": "Chart" } } },
|
|
289
|
+
"then": { "$ref": "#/$defs/ChartElement" }
|
|
290
|
+
},
|
|
291
|
+
{
|
|
292
|
+
"if": { "properties": { "Type": { "const": "PieChart" } } },
|
|
293
|
+
"then": { "$ref": "#/$defs/ChartElement" }
|
|
294
|
+
},
|
|
295
|
+
{
|
|
296
|
+
"if": { "properties": { "Type": { "const": "ScatterChart" } } },
|
|
297
|
+
"then": { "$ref": "#/$defs/ChartElement" }
|
|
298
|
+
},
|
|
299
|
+
{
|
|
300
|
+
"if": { "properties": { "Type": { "const": "PolygonChart" } } },
|
|
301
|
+
"then": { "$ref": "#/$defs/ChartElement" }
|
|
302
|
+
},
|
|
303
|
+
{
|
|
304
|
+
"if": { "properties": { "Type": { "const": "TreeGrid" } } },
|
|
305
|
+
"then": { "$ref": "#/$defs/TreeGridElement" }
|
|
306
|
+
},
|
|
307
|
+
{
|
|
308
|
+
"if": { "properties": { "Type": { "const": "iGrid" } } },
|
|
309
|
+
"then": { "$ref": "#/$defs/iGridElement" }
|
|
310
|
+
},
|
|
311
|
+
{
|
|
312
|
+
"if": { "properties": { "Type": { "const": "TableLayout" } } },
|
|
313
|
+
"then": { "$ref": "#/$defs/TableLayoutElement" }
|
|
314
|
+
},
|
|
315
|
+
{
|
|
316
|
+
"if": { "properties": { "Type": { "const": "WebContainer" } } },
|
|
317
|
+
"then": { "$ref": "#/$defs/WebContainerElement" }
|
|
318
|
+
},
|
|
319
|
+
{
|
|
320
|
+
"if": { "properties": { "Type": { "const": "Slider" } } },
|
|
321
|
+
"then": { "$ref": "#/$defs/SliderElement" }
|
|
322
|
+
},
|
|
323
|
+
{
|
|
324
|
+
"if": { "properties": { "Type": { "const": "ColorSelector" } } },
|
|
325
|
+
"then": { "$ref": "#/$defs/ColorSelectorElement" }
|
|
326
|
+
},
|
|
327
|
+
{
|
|
328
|
+
"if": { "properties": { "Type": { "const": "FileUploadButton" } } },
|
|
329
|
+
"then": { "$ref": "#/$defs/FileUploadButtonElement" }
|
|
330
|
+
},
|
|
331
|
+
{
|
|
332
|
+
"if": { "properties": { "Type": { "const": "PickList" } } },
|
|
333
|
+
"then": { "$ref": "#/$defs/PickListElement" }
|
|
334
|
+
},
|
|
335
|
+
{
|
|
336
|
+
"if": { "properties": { "Type": { "const": "CalendarFromTo" } } },
|
|
337
|
+
"then": { "$ref": "#/$defs/CalendarElement" }
|
|
338
|
+
},
|
|
339
|
+
{
|
|
340
|
+
"if": { "properties": { "Type": { "const": "CalendarWeeklyFromTo" } } },
|
|
341
|
+
"then": { "$ref": "#/$defs/CalendarElement" }
|
|
252
342
|
}
|
|
253
343
|
]
|
|
254
344
|
},
|
|
@@ -501,13 +591,232 @@
|
|
|
501
591
|
"properties": {
|
|
502
592
|
"DataSource": { "type": "string", "description": "바인딩할 데이터소스 이름" },
|
|
503
593
|
"ServerScript": { "type": "string", "description": "서버 스크립트 이름" },
|
|
504
|
-
"AutoRefresh": { "type": "boolean", "description": "데이터
|
|
594
|
+
"AutoRefresh": { "type": "boolean", "description": "보고서 로딩 시 데이터 조회 여부" },
|
|
505
595
|
"DoRefresh": { "type": "boolean", "description": "수동 새로고침 버튼 표시 여부" },
|
|
506
|
-
"DoExport": { "type": "boolean", "description": "내보내기
|
|
596
|
+
"DoExport": { "type": "boolean", "description": "파일 내보내기(다운로드) 가능 여부" },
|
|
507
597
|
"iOLAPView": { "$ref": "#/$defs/OlapViewModel", "description": "iOLAP 뷰 모델 직렬화 데이터" },
|
|
508
598
|
"ExtraOption": { "$ref": "#/$defs/OlapGridExtraOption", "description": "OLAP 그리드 추가 옵션" }
|
|
509
599
|
}
|
|
510
600
|
},
|
|
601
|
+
"RadioButtonElement": {
|
|
602
|
+
"type": "object",
|
|
603
|
+
"description": "라디오 버튼 컨트롤",
|
|
604
|
+
"required": ["LanguageCode", "Text", "TextPosition", "GroupName", "CheckedValue", "Checked"],
|
|
605
|
+
"properties": {
|
|
606
|
+
"LanguageCode": { "type": "string", "description": "다국어 키 코드" },
|
|
607
|
+
"Text": { "type": "string", "description": "라디오 버튼 옆 텍스트" },
|
|
608
|
+
"TextPosition": { "type": "string", "description": "텍스트 위치 (front, back)" },
|
|
609
|
+
"GroupName": { "type": "string", "description": "라디오 버튼 그룹명" },
|
|
610
|
+
"CheckedValue": { "type": "string", "description": "선택 시 반환값" },
|
|
611
|
+
"Checked": { "type": "boolean", "description": "초기 선택 상태" },
|
|
612
|
+
"BindingInfo": { "$ref": "#/$defs/BindingInfo", "description": "데이터 바인딩 정보" }
|
|
613
|
+
}
|
|
614
|
+
},
|
|
615
|
+
"MaskTextBoxElement": {
|
|
616
|
+
"type": "object",
|
|
617
|
+
"description": "마스크 텍스트 입력 컨트롤",
|
|
618
|
+
"properties": {
|
|
619
|
+
"Format": { "type": "string", "description": "입력 마스크 패턴" },
|
|
620
|
+
"Formula": { "type": "string", "description": "동적 수식" },
|
|
621
|
+
"IsReadOnly": { "type": "boolean", "description": "읽기 전용" },
|
|
622
|
+
"Text": { "type": "string", "description": "텍스트 값" },
|
|
623
|
+
"Value": { "description": "입력 값" },
|
|
624
|
+
"BindingInfo": { "$ref": "#/$defs/BindingInfo", "description": "데이터 바인딩 정보" },
|
|
625
|
+
"MxBinding": { "type": "string", "description": "MX-Grid 바인딩" }
|
|
626
|
+
}
|
|
627
|
+
},
|
|
628
|
+
"MultiComboBoxElement": {
|
|
629
|
+
"type": "object",
|
|
630
|
+
"description": "다중 선택 콤보박스 컨트롤",
|
|
631
|
+
"properties": {
|
|
632
|
+
"DataSource": { "type": "string", "description": "데이터소스 이름" },
|
|
633
|
+
"EditValue": { "type": "string", "description": "선택된 값 (쉼표 구분)" },
|
|
634
|
+
"CaptionText": { "type": "string", "description": "캡션 텍스트" },
|
|
635
|
+
"InitType": { "description": "초기화 타입" },
|
|
636
|
+
"InitValue": { "type": "string", "description": "초기값" },
|
|
637
|
+
"RefreshType": { "description": "새로고침 타입" },
|
|
638
|
+
"IsReadOnly": { "type": "boolean", "description": "읽기 전용" },
|
|
639
|
+
"SortType": { "description": "정렬 타입" },
|
|
640
|
+
"AutoRefresh": { "type": "boolean", "description": "자동 새로고침" },
|
|
641
|
+
"AfterRefresh": { "type": "string", "description": "새로고침 후 호출 함수" },
|
|
642
|
+
"IsMultiSelect": { "type": "boolean", "description": "다중 선택 여부" },
|
|
643
|
+
"AutoExpandLevel": { "type": "number", "description": "트리 자동 확장 레벨" },
|
|
644
|
+
"DialogWidth": { "type": "number", "description": "팝업 너비" },
|
|
645
|
+
"DialogHeight": { "type": "number", "description": "팝업 높이" },
|
|
646
|
+
"UseAllItems": { "type": "boolean", "description": "전체 항목 사용" },
|
|
647
|
+
"DataSourceInfo": {
|
|
648
|
+
"type": "object",
|
|
649
|
+
"properties": {
|
|
650
|
+
"ParentField": { "type": "string" },
|
|
651
|
+
"ChildField": { "type": "string" },
|
|
652
|
+
"CaptionField": { "type": "string" },
|
|
653
|
+
"ValueField": { "type": "string" }
|
|
654
|
+
}
|
|
655
|
+
},
|
|
656
|
+
"BindingInfo": { "$ref": "#/$defs/BindingInfo", "description": "데이터 바인딩 정보" }
|
|
657
|
+
}
|
|
658
|
+
},
|
|
659
|
+
"PickListElement": {
|
|
660
|
+
"type": "object",
|
|
661
|
+
"description": "픽리스트 컨트롤",
|
|
662
|
+
"properties": {
|
|
663
|
+
"IsReadOnly": { "type": "boolean", "description": "읽기 전용" },
|
|
664
|
+
"AfterRefresh": { "type": "string", "description": "새로고침 후 호출 함수" },
|
|
665
|
+
"DialogWidth": { "type": "number", "description": "팝업 너비" },
|
|
666
|
+
"DialogHeight": { "type": "number", "description": "팝업 높이" }
|
|
667
|
+
}
|
|
668
|
+
},
|
|
669
|
+
"TabElement": {
|
|
670
|
+
"type": "object",
|
|
671
|
+
"description": "탭 컨테이너 컨트롤",
|
|
672
|
+
"properties": {
|
|
673
|
+
"TabButtonPosition": { "type": "integer", "description": "탭 버튼 위치 (enTabPositionType)" },
|
|
674
|
+
"TabButtonHeight": { "type": "number", "description": "탭 버튼 높이" },
|
|
675
|
+
"ActiveStyle": { "type": "object", "description": "활성 탭 스타일" },
|
|
676
|
+
"InactiveStyle": { "type": "object", "description": "비활성 탭 스타일" },
|
|
677
|
+
"MouseOverStyle": { "type": "object", "description": "마우스 오버 스타일" },
|
|
678
|
+
"MouseDownStyle": { "type": "object", "description": "마우스 다운 스타일" },
|
|
679
|
+
"DoExport": { "type": "boolean", "description": "내보내기 버튼 표시" },
|
|
680
|
+
"TabItems": { "type": "array", "description": "탭 아이템 배열 (각 탭 페이지와 자식 컨트롤)" }
|
|
681
|
+
}
|
|
682
|
+
},
|
|
683
|
+
"CalendarElement": {
|
|
684
|
+
"type": "object",
|
|
685
|
+
"description": "달력 컨트롤 (Calendar, CalendarYear, CalendarYM 공통)",
|
|
686
|
+
"properties": {
|
|
687
|
+
"InitDate": { "type": "string", "description": "초기 날짜 (예: TODAY, TODAY-7)" },
|
|
688
|
+
"DataFormat": { "type": "string", "description": "데이터 포맷 (예: yyyyMMdd)" },
|
|
689
|
+
"ViewFormat": { "type": "string", "description": "표시 포맷 (예: yyyy-MM-dd)" },
|
|
690
|
+
"IsReadOnly": { "type": "boolean", "description": "읽기 전용" },
|
|
691
|
+
"Text": { "type": "string", "description": "텍스트 값" },
|
|
692
|
+
"MinDate": { "type": "string", "description": "최소 날짜" },
|
|
693
|
+
"MaxDate": { "type": "string", "description": "최대 날짜" },
|
|
694
|
+
"BindingInfo": { "$ref": "#/$defs/BindingInfo", "description": "데이터 바인딩 정보" },
|
|
695
|
+
"MxBinding": { "type": "string", "description": "MX-Grid 바인딩" }
|
|
696
|
+
}
|
|
697
|
+
},
|
|
698
|
+
"ChartElement": {
|
|
699
|
+
"type": "object",
|
|
700
|
+
"description": "차트 컨트롤 (Chart, PieChart, ScatterChart, PolygonChart 공통)",
|
|
701
|
+
"properties": {
|
|
702
|
+
"DataSource": { "type": "string", "description": "데이터소스 코드" },
|
|
703
|
+
"AutoRefresh": { "type": "boolean", "description": "자동 새로고침" },
|
|
704
|
+
"DoRefresh": { "type": "boolean", "description": "수동 새로고침 버튼" },
|
|
705
|
+
"DoExport": { "type": "boolean", "description": "내보내기 버튼" },
|
|
706
|
+
"PivotGrid": { "type": "string", "description": "피벗 그리드 컨트롤 이름" },
|
|
707
|
+
"DataGrid": { "type": "string", "description": "데이터 그리드 컨트롤 이름" },
|
|
708
|
+
"Chart": { "type": "object", "description": "차트 옵션 (ChartType 등)" },
|
|
709
|
+
"Axis": { "type": "object", "description": "축 설정 (XAxis, Y1Axis, Y2Axis)" },
|
|
710
|
+
"PlotOptions": { "type": "object", "description": "플롯 옵션" },
|
|
711
|
+
"Title": { "type": "object", "description": "차트 제목" },
|
|
712
|
+
"Legend": { "type": "object", "description": "범례 설정" },
|
|
713
|
+
"SeriesSet": { "type": "array", "description": "시리즈 배열" }
|
|
714
|
+
}
|
|
715
|
+
},
|
|
716
|
+
"TreeGridElement": {
|
|
717
|
+
"type": "object",
|
|
718
|
+
"description": "트리 구조 그리드 컨트롤",
|
|
719
|
+
"properties": {
|
|
720
|
+
"CellMargin": { "type": "string", "description": "셀 내부 여백" },
|
|
721
|
+
"Columns": { "type": "array", "items": { "$ref": "#/$defs/GridColumn" } },
|
|
722
|
+
"DataSource": { "type": "string", "description": "바인딩할 데이터소스" },
|
|
723
|
+
"AutoRefresh": { "type": "boolean", "description": "자동 새로고침" },
|
|
724
|
+
"DoRefresh": { "type": "boolean", "description": "수동 새로고침 버튼" },
|
|
725
|
+
"DoExport": { "type": "boolean", "description": "내보내기 버튼" },
|
|
726
|
+
"TreeMargin": { "type": "number", "description": "트리 들여쓰기 여백" },
|
|
727
|
+
"ToggleBtnSize": { "type": "number", "description": "토글 버튼 크기" },
|
|
728
|
+
"TreeInfo": { "type": "object", "description": "트리 설정 (계층 구조 정의)" },
|
|
729
|
+
"AutoExpandLevel": { "type": "number", "description": "자동 확장 레벨" },
|
|
730
|
+
"IndentWidth": { "type": "number", "description": "들여쓰기 폭" },
|
|
731
|
+
"MaxLevel": { "type": "number", "description": "최대 레벨 수" },
|
|
732
|
+
"Editable": { "type": "boolean", "description": "셀 편집 가능" }
|
|
733
|
+
}
|
|
734
|
+
},
|
|
735
|
+
"iGridElement": {
|
|
736
|
+
"type": "object",
|
|
737
|
+
"description": "인터랙티브 그리드 (MXGrid) 컨트롤",
|
|
738
|
+
"properties": {
|
|
739
|
+
"ServerScript": { "type": "string", "description": "서버 스크립트 이름" },
|
|
740
|
+
"AutoRefresh": { "type": "boolean", "description": "자동 새로고침" },
|
|
741
|
+
"DoRefresh": { "type": "boolean", "description": "수동 새로고침 버튼" },
|
|
742
|
+
"DoExport": { "type": "boolean", "description": "내보내기 버튼" },
|
|
743
|
+
"TemplateCode": { "type": "string", "description": "템플릿 코드" },
|
|
744
|
+
"ActiveSheet": { "type": "string", "description": "활성 시트" },
|
|
745
|
+
"UseMultiSheet": { "type": "boolean", "description": "다중 시트 사용" },
|
|
746
|
+
"EnableZoom": { "type": "boolean", "description": "줌 활성화" },
|
|
747
|
+
"FreezeRow": { "type": "number", "description": "고정 행 수" },
|
|
748
|
+
"FreezeColumn": { "type": "number", "description": "고정 열 수" },
|
|
749
|
+
"Controls": { "type": "array", "description": "자식 컨트롤 배열" }
|
|
750
|
+
}
|
|
751
|
+
},
|
|
752
|
+
"TableLayoutElement": {
|
|
753
|
+
"type": "object",
|
|
754
|
+
"description": "테이블 레이아웃 컨테이너 컨트롤",
|
|
755
|
+
"properties": {
|
|
756
|
+
"FontSize": { "type": "number", "description": "폰트 크기" },
|
|
757
|
+
"BasicMargin": { "description": "기본 여백" },
|
|
758
|
+
"IsFixed": { "type": "boolean", "description": "고정 레이아웃" },
|
|
759
|
+
"BorderVisible": { "type": "boolean", "description": "테두리 표시" },
|
|
760
|
+
"Cols": { "type": "array", "description": "컬럼 정의 배열" },
|
|
761
|
+
"Rows": { "type": "array", "description": "행 정의 배열" },
|
|
762
|
+
"MergeCellList": { "type": "array", "description": "셀 병합 정의" }
|
|
763
|
+
}
|
|
764
|
+
},
|
|
765
|
+
"WebContainerElement": {
|
|
766
|
+
"type": "object",
|
|
767
|
+
"description": "웹 브라우저 컨테이너 컨트롤",
|
|
768
|
+
"properties": {
|
|
769
|
+
"TargetURL": { "type": "string", "description": "대상 URL" },
|
|
770
|
+
"AutoRefresh": { "type": "boolean", "description": "자동 새로고침" },
|
|
771
|
+
"DoRefresh": { "type": "boolean", "description": "수동 새로고침 버튼" }
|
|
772
|
+
}
|
|
773
|
+
},
|
|
774
|
+
"SliderElement": {
|
|
775
|
+
"type": "object",
|
|
776
|
+
"description": "슬라이더 컨트롤",
|
|
777
|
+
"properties": {
|
|
778
|
+
"DataSource": { "type": "string", "description": "데이터소스" },
|
|
779
|
+
"SliderInfo": {
|
|
780
|
+
"type": "object",
|
|
781
|
+
"properties": {
|
|
782
|
+
"IsReadOnly": { "type": "boolean" },
|
|
783
|
+
"Grid": { "type": "number" },
|
|
784
|
+
"Step": { "type": "number" },
|
|
785
|
+
"Format": { "type": "string" },
|
|
786
|
+
"Type": { "type": "string" }
|
|
787
|
+
}
|
|
788
|
+
},
|
|
789
|
+
"DataSourceInfo": {
|
|
790
|
+
"type": "object",
|
|
791
|
+
"properties": {
|
|
792
|
+
"Min": { "type": "number" },
|
|
793
|
+
"Max": { "type": "number" },
|
|
794
|
+
"From": { "type": "number" },
|
|
795
|
+
"To": { "type": "number" }
|
|
796
|
+
}
|
|
797
|
+
}
|
|
798
|
+
}
|
|
799
|
+
},
|
|
800
|
+
"ColorSelectorElement": {
|
|
801
|
+
"type": "object",
|
|
802
|
+
"description": "색상 선택기 컨트롤",
|
|
803
|
+
"properties": {
|
|
804
|
+
"ColorValue": { "type": "string", "description": "색상 값 (hex)" },
|
|
805
|
+
"ShowButton": { "type": "boolean", "description": "버튼 표시 여부" }
|
|
806
|
+
}
|
|
807
|
+
},
|
|
808
|
+
"FileUploadButtonElement": {
|
|
809
|
+
"type": "object",
|
|
810
|
+
"description": "파일 업로드 버튼 컨트롤",
|
|
811
|
+
"properties": {
|
|
812
|
+
"LanguageCode": { "type": "string", "description": "다국어 키 코드" },
|
|
813
|
+
"Value": { "type": "string", "description": "버튼 텍스트" },
|
|
814
|
+
"Cursor": { "type": "string", "description": "마우스 커서 스타일" },
|
|
815
|
+
"AllowExt": { "type": "string", "description": "허용 파일 확장자" },
|
|
816
|
+
"SaveLimitSize": { "type": "number", "description": "업로드 크기 제한" },
|
|
817
|
+
"SaveFolderName": { "type": "string", "description": "저장 폴더명" }
|
|
818
|
+
}
|
|
819
|
+
},
|
|
511
820
|
"OlapGridExtraOption": {
|
|
512
821
|
"type": "object",
|
|
513
822
|
"description": "OlapGrid ExtraOption (eniPivotSerializeOption 기반)",
|