@hitc/netsuite-types 2021.2.5 → 2021.2.10

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/N/crypto.d.ts CHANGED
@@ -14,7 +14,7 @@ export interface CipherPayload {
14
14
  /** The result of the ciphering process. For example, to take the cipher payload and send it to another system. */
15
15
  ciphertext: string;
16
16
  /** Initialization vector for the cipher payload. You can pass in the iv value to crypto.createDecipher(options). */
17
- iv: number;
17
+ iv: string;
18
18
  }
19
19
 
20
20
  /** Encapsulates a decipher. This object has methods that decrypt. */
package/N/dataset.d.ts CHANGED
@@ -33,9 +33,9 @@ interface Condition {
33
33
  }
34
34
 
35
35
  /**
36
- * Encapsulates joined records used in the dataset. This object is created using the dataset.createJoin(options) method.
37
- * For more information on using joins in SuiteAnalytics, see Joining Records Types in a Dataset.
38
- */
36
+ * Encapsulates joined records used in the dataset. This object is created using the dataset.createJoin(options) method.
37
+ * For more information on using joins in SuiteAnalytics, see Joining Records Types in a Dataset.
38
+ */
39
39
  interface Join {
40
40
  readonly fieldId: string;
41
41
  readonly join: Join;
@@ -45,7 +45,12 @@ interface Join {
45
45
 
46
46
  /** Encapsulates the entire dataset, including columns, conditions, and joins. This object is created using the dataset.create(options) method. */
47
47
  export interface Dataset {
48
- getExpressionFromColumn(options: { columnId: number, alias?: string }): Expression;
48
+ /**
49
+ * Returns an expression which can be used in workbook.
50
+ * The Help Center documentation shows alias is optional and columnId is required.
51
+ * Testing on version 2021.2 indicates that alias is required and columnId is optional.
52
+ */
53
+ getExpressionFromColumn(options: { alias: string, columnId?: number }): Expression;
49
54
  /** Executes the dataset and returns the result set (the same as in N/query Module). */
50
55
  run(): ResultSet;
51
56
  runPaged(): PagedData;
@@ -0,0 +1,54 @@
1
+ /**
2
+ * Load the N/datasetLink module to link datasets. When you link two datasets, you can use data from both datasets in your workbooks.
3
+ *
4
+ * The N/datasetLink module lets you logically link two datasets and use data from both datasets in your workbook visualizations (such as pivots).
5
+ * Linking datasets is useful when you cannot use joins in the SuiteAnalytics Workbook UI or the Workbook API to join record types explicitly.
6
+ * Linking datasets does not merge or join the datasets.
7
+ * Instead, you specify an expression (which usually represents a column that shares common data between the two datasets, such as a date), and this expression is used to link the datasets.
8
+ * After datasets are linked, you can access all of the data in both datasets to use in workbook visualizations.
9
+ * For example, when you create a pivot in a workbook, you can specify a linked dataset (as a datasetLink.DatasetLink object) to use as the data source for the pivot.
10
+ * You can use fields in both datasets to create data dimensions, data measures, sections, and other elements of the pivot.
11
+ *
12
+ * For more information about linking datasets in SuiteAnalytics Workbook, see Dataset Linking in SuiteAnalytics Workbook.
13
+ */
14
+ import { Dataset } from "./dataset";
15
+ import { Expression } from "./workbook";
16
+
17
+
18
+ interface CreateDatasetLinkOptions {
19
+ /**
20
+ * The datasets to link.
21
+ */
22
+ datasets: Dataset[];
23
+ /**
24
+ * The column expressions to use to link the datasets.
25
+ */
26
+ expressions: Array<Expression[]>;
27
+ /**
28
+ * The ID of the linked dataset.
29
+ * The Help Center indicates this is optional, but testing on 2021.2 indicates it is required.
30
+ */
31
+ id: string;
32
+ }
33
+
34
+ /** A representation of two datasets that are linked using datasetLink.create(options). */
35
+ interface DatasetLink {
36
+ /**
37
+ * The linked datasets that the datasetLink.DatasetLink object represents.
38
+ */
39
+ datasets: Dataset[];
40
+ /**
41
+ * The column expressions for the datasetLink.DatasetLink object.
42
+ */
43
+ expressions: Array<Expression[]>;
44
+ id: string;
45
+ }
46
+
47
+ /**
48
+ * Links two datasets using a common column expression.
49
+ * To link two datasets, both datasets must include a column that shares common data, such as a date.
50
+ * You use Dataset.getExpressionFromColumn(options) to obtain expressions for each column, then you specify these expressions (and the datasets they are part of) when you call datasetLink.create(options).
51
+ * @throws {SuiteScriptError} NO_DATASET_DEFINED if the value of the options.datasets parameter is an empty array.
52
+ */
53
+ export function create(option: CreateDatasetLinkOptions): DatasetLink
54
+
package/N/query.d.ts CHANGED
@@ -313,7 +313,7 @@ export interface Query {
313
313
  * Create a Column object based on the root component of the Query. This is a shortcut for Query.root.createColumn.
314
314
  * @see Component.createColumn
315
315
  */
316
- createColumn(options: CreateColumnOptions): Column;
316
+ createColumn(options: CreateColumnOptions | CreateColumnWithFormulaOptions): Column;
317
317
 
318
318
  /**
319
319
  * Create a Sort object based on the root component of the Query. This is a shortcut for Query.root.createSort.
package/N/record.d.ts CHANGED
@@ -238,7 +238,7 @@ interface SetCurrentSublistTextOptions {
238
238
  forceSyncSourcing?: boolean
239
239
  }
240
240
 
241
- interface SetValueOptions {
241
+ export interface SetValueOptions {
242
242
  /** The internal ID of a standard or custom body field. */
243
243
  fieldId: string;
244
244
  /**
package/N/sftp.d.ts CHANGED
@@ -71,15 +71,19 @@ interface CreateSFTPConnectionWithKeyOptions extends CreateSFTPConnectionOptions
71
71
  /** The Key ID for the private key file uploaded to NetSuite */
72
72
  keyId: string;
73
73
  }
74
+ interface CreateSFTPConnectionWithSecretOptions extends CreateSFTPConnectionOptions {
75
+ /** The script ID of the secret used for authentication. Secrets are stored at Setup > Company > API Secrets. Since 2021.1. */
76
+ secret: string;
77
+ }
74
78
 
75
- /**
79
+ /**
76
80
  * Establishes a connection to a remote FTP server.
77
81
  * To generate the passwordguid, you can create a suitelet that uses Form.addCredentialField(options).
78
82
  * Use the N/https Module to fetch the GUID value returned from the Suitelet's credential field.
79
83
  * For a Suitelet example, see N/https Module Script Sample.
80
84
  * For more information about supported SFTP protocol, see Supported Cipher Suites and Host Key Types
81
85
  */
82
- export function createConnection(options: CreateSFTPConnectionWithKeyOptions | CreateSFTPConnectionWithPasswordOptions): Connection;
86
+ export function createConnection(options: CreateSFTPConnectionWithKeyOptions | CreateSFTPConnectionWithPasswordOptions | CreateSFTPConnectionWithSecretOptions): Connection;
83
87
 
84
88
  export enum Sort {
85
89
  DATE,
package/N/types.d.ts CHANGED
@@ -3,9 +3,11 @@ import * as N_portlet from './portlet';
3
3
  import * as N_record from './record';
4
4
  import * as N_search from './search';
5
5
  import * as N_ui_serverWidget from './ui/serverWidget';
6
- import * as N_FiConnectivity from "./plugins/fiConnectivityPlugin"
7
- import * as N_FiParser from "./plugins/fiParserPlugin"
8
-
6
+ import * as N_FiConnectivity from "./plugins/fiConnectivityPlugin";
7
+ import * as N_FiParser from "./plugins/fiParserPlugin";
8
+ import * as N_dataset from "./dataset";
9
+ import * as N_workbook from "./workbook";
10
+
9
11
  /*Don't export these into the Namespace as we don't
10
12
  want to accidentally use a comparison like this:
11
13
  export var beforeSubmit: EntryPoints.UserEvent.beforeSubmit = (ctx) => {
@@ -466,6 +468,30 @@ export namespace EntryPoints {
466
468
  type getAccounts = N_FiConnectivity.getAccounts;
467
469
  type getConfigurationIFrameUrl = N_FiConnectivity.getConfigurationIFrameUrl;
468
470
  }
471
+
472
+ namespace DatasetBuilder {
473
+ interface createDatasetContext {
474
+ dataset: N_dataset.Dataset;
475
+ readonly description: string;
476
+ readonly name: string;
477
+ readonly owner: number;
478
+ readonly role: number;
479
+ }
480
+
481
+ type createDataset = (scriptContext: createDatasetContext) => void;
482
+ }
483
+
484
+ namespace WorkbookBuilder {
485
+ interface createWorkbookContext {
486
+ workbook: N_workbook.Workbook;
487
+ readonly description: string;
488
+ readonly name: string;
489
+ readonly owner: number;
490
+ readonly role: number;
491
+ }
492
+
493
+ type createWorkbook = (scriptContext: createWorkbookContext) => void;
494
+ }
469
495
  }
470
496
  }
471
497
 
package/N/workbook.d.ts CHANGED
@@ -1,13 +1,19 @@
1
1
  /** Load the N/workbook module when you want to create a new workbook, load an existing workbook, or list all existing workbooks. */
2
2
 
3
- import { Dataset } from "./dataset";
4
- import {SortLocale} from "N/query";
3
+ import { Dataset } from "N/dataset";
4
+ import { PagedData, ResultSet, SortLocale } from "N/query";
5
+ import { DatasetLink } from "N/datasetLink";
5
6
 
6
7
  interface Aspect {
7
8
  measure: Measure;
8
9
  type: AspectType;
9
10
  }
10
11
 
12
+ interface CalculatedMeasure {
13
+ expression: Expression;
14
+ label: string | Expression;
15
+ }
16
+
11
17
  interface Category {
12
18
  axis: ChartAxis;
13
19
  /** The root data (i.e., fields) that defines the category. */
@@ -53,6 +59,17 @@ interface ChartDefinition {
53
59
  chartType: ChartType;
54
60
  }
55
61
 
62
+ /**
63
+ * A color, which is made up of red, green, blue, and alpha components.
64
+ * Object is called `Color` in documentation, used different name here to avoid naming collision with `Color` enum.
65
+ */
66
+ interface ColorRGBA {
67
+ alpha: number;
68
+ blue: number;
69
+ green: number;
70
+ red: number;
71
+ }
72
+
56
73
  /**
57
74
  * A conditional filter.
58
75
  * A conditional filter can be used when you create a pivot definition or a chart definition.
@@ -71,6 +88,22 @@ interface ConditionalFilter {
71
88
  row: boolean;
72
89
  }
73
90
 
91
+ interface ConditionalFormat {
92
+ rules: ConditionalFormatRule[];
93
+ }
94
+
95
+ interface ConditionalFormatRule {
96
+ /** The filter that determines which rows or cells to apply the conditional format to. */
97
+ filter: TableColumnFilter;
98
+ style: Style;
99
+ }
100
+
101
+ interface Currency {
102
+ amount: number;
103
+ /** The ID of the currency (for example, USD, EUR, GBP, and so on). */
104
+ id: string;
105
+ }
106
+
74
107
  /**
75
108
  * A data dimension. A data dimension can be used when you create a category, a legend, a pivot axis, a dimension selector, or a section.
76
109
  * You can create a data dimension using workbook.createDataDimension(options).
@@ -95,6 +128,25 @@ interface DataDimensionItem {
95
128
  label: string;
96
129
  }
97
130
 
131
+ interface DataDimensionItemValue {
132
+ item: DataDimensionItem;
133
+ value: string | number | boolean | Record | Currency | Range | Duration;
134
+ }
135
+
136
+ interface DataDimensionValue {
137
+ dataDimension: DataDimension;
138
+ itemValues: DataDimensionItemValue[];
139
+ }
140
+
141
+ interface DataMeasure {
142
+ aggregation: string;
143
+ /** This property is used if the data measure is a single-expression measure. */
144
+ expression: Expression;
145
+ /** This property is used if the data measure is a multiple-expression measure. */
146
+ expressions: Expression[];
147
+ label: string;
148
+ }
149
+
98
150
  /**
99
151
  * A dimension selector. A dimension selector is used when you create a path selector, a sort definition, a conditional filter, a limiting filter or a measure sort.
100
152
  * You can create a dimension selector using workbook.createDimensionSelector(options).
@@ -115,6 +167,11 @@ interface DimensionSort {
115
167
  sort: Sort;
116
168
  }
117
169
 
170
+ interface Duration {
171
+ amount: number;
172
+ units: unknown;
173
+ }
174
+
118
175
  /**
119
176
  * An expression. An expression can be used when you create a pivot definition, a chart definition, a data dimension item, a measure, a conditional filter, or a constant.
120
177
  * You can create an expression using workbook.createExpression(options).
@@ -137,6 +194,15 @@ interface FieldContext {
137
194
  parameters: Object;
138
195
  }
139
196
 
197
+ /**
198
+ * A font size.
199
+ * Object is called `FontSize` in documentation, used different name here to avoid naming collision with `FontSize` enum.
200
+ */
201
+ interface FontSizeObj {
202
+ size: number;
203
+ unit: string;
204
+ }
205
+
140
206
  /**
141
207
  * A legend. A legend can be used when you create a chart definition.
142
208
  * You can create a legend using workbook.createLegend(options).
@@ -180,6 +246,10 @@ interface Measure {
180
246
  label: string;
181
247
  }
182
248
 
249
+ interface MeasureSelector {
250
+ measures: CalculatedMeasure[] | DataMeasure;
251
+ }
252
+
183
253
  /**
184
254
  * A measure sort. A measure sort can be used when you create a limiting filter or a sort definition.
185
255
  * You can create a measure sort using workbook.createMeasureSort(options).
@@ -193,6 +263,17 @@ interface MeasureSort {
193
263
  sort: Sort;
194
264
  }
195
265
 
266
+ interface MeasureValue {
267
+ measure: Measure;
268
+ value: string | number | boolean | Record | Currency | Range | Duration;
269
+ }
270
+
271
+ interface MeasureValueSelector {
272
+ columnSelector: DimensionSelector | PathSelector;
273
+ measureSelector: MeasureSelector[];
274
+ rowSelector: DimensionSelector | PathSelector;
275
+ }
276
+
196
277
  /**
197
278
  * A path selector. A path selector can be used when you create a sort definition, a conditional filter, a limiting filter, or a measure sort.
198
279
  * You can create a path selector using workbook.createPathSelector(options).
@@ -211,6 +292,73 @@ interface PivotAxis {
211
292
  /** The sort definitions of the pivot axis. */
212
293
  sortDefinitions: SortDefinition
213
294
  }
295
+
296
+ /**
297
+ * A pivot is a workbook component that enables you to pivot your dataset query results by defining measures and dimensions, so that you can analyze different subsets of data.
298
+ * You can create a pivot using workbook.createPivot(options).
299
+ */
300
+ interface Pivot {
301
+ aggregationFilters: (ConditionalFilter|LimitingFilter)[];
302
+ columnAxis: PivotAxis;
303
+ dataset: Dataset;
304
+ filterExpressions: Expression[];
305
+ id: string;
306
+ name: string;
307
+ rowAxis: PivotAxis;
308
+ }
309
+
310
+ interface PivotIntersection {
311
+ column: DataDimensionValue | SectionValue;
312
+ measureValues: MeasureValue[];
313
+ row: DataDimensionValue | SectionValue;
314
+ }
315
+
316
+ interface PositionPercent {
317
+ percentX: number;
318
+ percentY: number;
319
+ }
320
+
321
+ interface PositionUnits {
322
+ unit: string;
323
+ x: number;
324
+ y: number;
325
+ }
326
+
327
+ interface PositionValues {
328
+ horizontal: string;
329
+ vertical: string;
330
+ }
331
+
332
+ /**
333
+ * A date or date-time range.
334
+ * The dates in the range are formatted according to the user’s preferences in their account. This object can be returned from a pivot execution.
335
+ */
336
+ interface Range {
337
+ end: string;
338
+ start: string;
339
+ }
340
+
341
+ interface Record {
342
+ name: string;
343
+ primaryKey: number;
344
+ properties: unknown;
345
+ }
346
+
347
+ interface RecordKey {
348
+ properties: unknown
349
+ }
350
+
351
+ interface ReportStyle {
352
+ rules: ReportStyleRule[];
353
+ selectors: MeasureValueSelector[];
354
+ }
355
+
356
+ interface ReportStyleRule {
357
+ /** A Boolean expression indicating whether the style should be applied. */
358
+ expression: Expression;
359
+ style: Style;
360
+ }
361
+
214
362
  /**
215
363
  * A section. A section can be used when you create a category, a legend, a data dimension, a dimension selector, a pivot axis, or a pivot definition.
216
364
  * You can create a section using workbook.createSection(options).
@@ -222,6 +370,10 @@ interface Section {
222
370
  totalLine: TotalLine;
223
371
  }
224
372
 
373
+ interface SectionValue {
374
+ section: Section;
375
+ }
376
+
225
377
  /**
226
378
  * A series in a workbook. A series is used when you create a chart definition.
227
379
  * You can create a series using workbook.createSeries(options).
@@ -257,6 +409,31 @@ interface SortDefinition {
257
409
  sortBys: DimensionSelector|MeasureSort[];
258
410
  }
259
411
 
412
+ interface SortByDataDimensionItem {
413
+ item: DataDimensionItem;
414
+ sort: Sort;
415
+ }
416
+
417
+ interface SortByMeasure {
418
+ measure: CalculatedMeasure | DataMeasure;
419
+ otherAxisSelector: PathSelector | DimensionSelector;
420
+ sort: Sort;
421
+ }
422
+
423
+ interface Style {
424
+ backgroundColor: string | Color | ColorRGBA;
425
+ backgroundImage: string;
426
+ backgroundPosition: PositionPercent | PositionUnits | PositionValues;
427
+ color: string | ColorRGBA;
428
+ fontSize: string | FontSizeObj;
429
+ fontStyle: string;
430
+ fontWeight: string;
431
+ textAlign: string;
432
+ textDecorationColor: string | Color | ColorRGBA;
433
+ textDecorationLine: string;
434
+ textDecorationStyle: string;
435
+ }
436
+
260
437
  /**
261
438
  * A table column. A table column is used when you create a table definition.
262
439
  * You can create a table column using workbook.createTableColumn(options).
@@ -271,7 +448,7 @@ interface TableColumn {
271
448
  /** The field context specification for the field used in the table column. */
272
449
  fieldContext: FieldContext;
273
450
  /** The filters for the table column. */
274
- filters: TableFilter[];
451
+ filters: TableColumnFilter[];
275
452
  /** The label of table column. */
276
453
  label: string;
277
454
  /** The sort of the table column. */
@@ -299,7 +476,7 @@ interface TableDefinition {
299
476
  * A table filter. A table filter can be used when you create a table column.
300
477
  * You can create a table filter using workbook.createTableFilter(options).
301
478
  * */
302
- interface TableFilter {
479
+ interface TableColumnFilter {
303
480
  /** The operator of the table filter. */
304
481
  operator: Operator;
305
482
  /** The values of the table filter. */
@@ -313,10 +490,11 @@ interface TableFilter {
313
490
  * A workbook can include tables, pivots, and charts. A workbook is created using workbook.create(options).
314
491
  */
315
492
  export interface Workbook {
493
+ runPivot(options: RunPivot): PivotIntersection[];
316
494
  /** Executes the table and returns the result set (the same as in N/query Module). */
317
- runTable(options: RunTable): Workbook;
495
+ runTable(options: RunTable): ResultSet;
318
496
  /** Executes the table and returns paginated data (the same as in N/query Module). */
319
- runTablePaged(options: RunTablePaged): Workbook;
497
+ runTablePaged(options: RunTablePaged): PagedData;
320
498
  /** Chart definitions that can be included in a workbook when you create a new workbook. */
321
499
  chartDefinitions: ChartDefinition;
322
500
  /** The description of the workbook. This is set when you create a workbook. */
@@ -326,20 +504,9 @@ export interface Workbook {
326
504
  /** The name of the workbook. */
327
505
  name: string;
328
506
  /** Pivot definitions that can be included in a workbook when you create a new workbook. */
329
- pivotDefinitions: PivotDefinition[];
507
+ pivots: Pivot[];
330
508
  /** *Table definitions that can be included in a workbook when you create a new workbook. */
331
- tableDefinitions: TableDefinition[];
332
- }
333
-
334
- /**
335
- * An expression. An expression can be used when you create a pivot definition, a chart definition, a data dimension item, a measure, a conditional filter, or a constant.
336
- * You can create an expression using workbook.createExpression(options).
337
- */
338
- interface Expression {
339
- /** The ID of the function used in the expression. */
340
- functionId: ExpressionType
341
- /** The parameters for the expression. */
342
- parameters: Object;
509
+ tables: TableDefinition[];
343
510
  }
344
511
 
345
512
  /**
@@ -350,21 +517,11 @@ interface AllSubNodesSelector {
350
517
  // TODO Update this as it is empty with NS Help
351
518
  }
352
519
 
353
- interface PivotDefinition {
354
- aggregationFilters: (ConditionalFilter|LimitingFilter)[];
355
- columnAxis: PivotAxis;
356
- dataset: Dataset;
357
- filterExpressions: Expression[];
358
- id: string;
359
- name: string;
360
- rowAxis: PivotAxis;
361
- }
362
-
363
520
  interface CreateOptions {
364
521
  chartDefinition?: ChartDefinition[];
365
522
  description?: string;
366
523
  name?: string;
367
- pivotDefinitions?: PivotDefinition[];
524
+ pivots?: Pivot[];
368
525
  tableDefinitions?: TableDefinition[];
369
526
  }
370
527
 
@@ -373,6 +530,14 @@ interface CreateAspectOptions {
373
530
  type?: AspectType;
374
531
  }
375
532
 
533
+ interface CreateCalculatedMeasure {
534
+ expression: Expression;
535
+ label?: string | Expression;
536
+ name?: string;
537
+ pivotDefinitions?: Pivot[];
538
+ tableDefinitions?: TableDefinition[];
539
+ }
540
+
376
541
  interface CreateCategoryOptions {
377
542
  axis: ChartAxis;
378
543
  root: DataDimension|Section;
@@ -398,6 +563,13 @@ interface CreateChartDefinition {
398
563
  type: ChartType;
399
564
  }
400
565
 
566
+ interface CreateColor {
567
+ alpha?: number;
568
+ blue?: number;
569
+ green?: number;
570
+ red?: number;
571
+ }
572
+
401
573
  interface CreateConditionalFilter {
402
574
  filteredNodesSelector: AllSubNodesSelector|DimensionSelector|PathSelector;
403
575
  measure: Measure;
@@ -406,6 +578,15 @@ interface CreateConditionalFilter {
406
578
  row: boolean;
407
579
  }
408
580
 
581
+ interface CreateConditionalFormat {
582
+ rules: ConditionalFormatRule[];
583
+ }
584
+
585
+ interface CreateConditionalFormatRule {
586
+ filter: TableColumnFilter;
587
+ style: Style;
588
+ }
589
+
409
590
  interface CreateConstant {
410
591
  constant: string|number|boolean|Date;
411
592
  tye?: ConstantType;
@@ -413,7 +594,7 @@ interface CreateConstant {
413
594
 
414
595
  interface CreateDataDimension {
415
596
  children?: (DataDimension|Section|Measure)[];
416
- items: DataDimensionItem;
597
+ items: DataDimensionItem[];
417
598
  totalLine?: string;
418
599
  }
419
600
 
@@ -422,6 +603,13 @@ interface CreateDataDimensionItem {
422
603
  label?: string;
423
604
  }
424
605
 
606
+ interface CreateDataMeasure {
607
+ aggregation: string;
608
+ expression?: Expression;
609
+ expressions?: Expression[];
610
+ label: string;
611
+ }
612
+
425
613
  interface CreateDimensionSelector {
426
614
  dimension: DataDimension|Section;
427
615
  }
@@ -441,6 +629,11 @@ interface CreateFieldContext {
441
629
  parameters?: Object;
442
630
  }
443
631
 
632
+ interface CreateFontSize {
633
+ size: number;
634
+ unit: string;
635
+ }
636
+
444
637
  interface CreateLegend {
445
638
  axes: ChartAxis[];
446
639
  root: Section|DataDimension;
@@ -456,11 +649,15 @@ interface CreateLimitingFilter {
456
649
 
457
650
  interface CreateMeasure {
458
651
  aggregation?: string;
459
- expression: Expression;
460
- expressions: Expression[];
652
+ expression?: Expression;
653
+ expressions?: Expression[];
461
654
  label: string;
462
655
  }
463
656
 
657
+ interface CreateMeasureSelector {
658
+ measures: (CalculatedMeasure | DataMeasure)[];
659
+ }
660
+
464
661
  interface CreateMeasureSort {
465
662
  measure: Measure;
466
663
  otherAxisSelector: AllSubNodesSelector|DimensionSelector|PathSelector;
@@ -468,6 +665,12 @@ interface CreateMeasureSort {
468
665
  sort: Sort;
469
666
  }
470
667
 
668
+ interface CreateMeasureValueSelector {
669
+ columnSelector: DimensionSelector | PathSelector;
670
+ measureSelector: MeasureSelector;
671
+ rowSelector: DimensionSelector | PathSelector;
672
+ }
673
+
471
674
  interface CreatePathSelector {
472
675
  elements: (AllSubNodesSelector|DimensionSelector)[];
473
676
  }
@@ -480,15 +683,42 @@ interface CreatePivotAxis {
480
683
  interface CreatePivotDefinition {
481
684
  aggregationFilters?: (ConditionalFilter|LimitingFilter)[];
482
685
  columnAxis: PivotAxis;
483
- dataset: Dataset;
686
+ dataset?: Dataset;
484
687
  filterExpressions?: Expression[];
485
688
  id: string;
486
689
  name: string;
487
690
  rowAxis: PivotAxis;
691
+ datasetLink?: DatasetLink;
692
+ }
693
+
694
+ interface CreatePositionPercent {
695
+ percentX: number;
696
+ percentY: number;
697
+ }
698
+
699
+ interface CreatePositionUnits {
700
+ unit: string;
701
+ x: number;
702
+ y: number;
703
+ }
704
+
705
+ interface CreatePositionValues {
706
+ horizontal: string;
707
+ vertical: string;
708
+ }
709
+
710
+ interface CreateReportStyle {
711
+ rules: ReportStyleRule[];
712
+ selectors: MeasureValueSelector[];
713
+ }
714
+
715
+ interface CreateReportStyleRule {
716
+ expression: Expression;
717
+ style: Style;
488
718
  }
489
719
 
490
720
  interface CreateSection {
491
- children: (DataDimension|Measure|Section)[];
721
+ children: (DataDimension|Measure|Section|DataMeasure)[];
492
722
  totalLine?: TotalLine;
493
723
  }
494
724
 
@@ -503,17 +733,43 @@ interface CreateSort {
503
733
  nullsLast?: boolean;
504
734
  }
505
735
 
736
+ interface CreateSortByDataDimensionItem {
737
+ item: DataDimensionItem;
738
+ sort: Sort;
739
+ }
740
+
741
+ interface CreateSortByMeasure {
742
+ measure: Measure;
743
+ otherAxisSelector: (DimensionSelector | PathSelector)[];
744
+ selector: (DimensionSelector | PathSelector)[];
745
+ sort: Sort;
746
+ }
747
+
506
748
  interface CreateSortDefinition {
507
749
  selector: AllSubNodesSelector|DimensionSelector|PathSelector;
508
750
  sortBys: (DimensionSort|MeasureSort)[];
509
751
  }
510
752
 
753
+ interface CreateStyle {
754
+ backgroundColor?: Color | string;
755
+ backgroundImage?: string;
756
+ backgroundPosition?: PositionPercent | PositionUnits | PositionValues;
757
+ color?: Color | string;
758
+ fontSize?: string;
759
+ fontStyle?: string;
760
+ fontWeight?: string;
761
+ textAlign?: string;
762
+ textDecorationColor?: Color | string;
763
+ textDecorationLine?: string;
764
+ textDecorationStyle?: string;
765
+ }
766
+
511
767
  interface CreateTableColumn {
512
768
  alias?: string;
513
769
  datasetColumnAlias: string;
514
770
  datasetColumnId: number;
515
771
  fieldContext?: FieldContext;
516
- filters?: TableFilter;
772
+ filters?: TableColumnFilter;
517
773
  label?: string;
518
774
  sort: Sort;
519
775
  width?: number;
@@ -526,7 +782,7 @@ interface CreateTableDefinition {
526
782
  name: string;
527
783
  }
528
784
 
529
- interface CreateTableFilter {
785
+ interface CreateTableColumnFilter {
530
786
  operator: string;
531
787
  values?: (null|Object|number|string|boolean|Date)[];
532
788
  }
@@ -544,6 +800,10 @@ interface RunTablePaged {
544
800
  pageSize?: number;
545
801
  }
546
802
 
803
+ interface RunPivot {
804
+ id: string;
805
+ }
806
+
547
807
  /**
548
808
  * Creates a new workbook. Workbooks are where you analyze the results of your dataset queries using different components, such as table views, pivot tables, and charts.
549
809
  * All workbooks are based on a dataset, and a single dataset can be used as the basis for multiple workbooks.
@@ -559,17 +819,22 @@ export function createAllSubNodesSelector(): AllSubNodesSelector;
559
819
  /**
560
820
  * Creates an aspect for a chart series. An aspect includes a measure and an aspect type.
561
821
  */
562
- export function createAspect(options: CreateAspectOptions): Workbook;
822
+ export function createAspect(options: CreateAspectOptions): Aspect;
823
+
824
+ /**
825
+ * Creates a calculated measure.
826
+ */
827
+ export function createCalculatedMeasure(options: CreateCalculatedMeasure): CalculatedMeasure;
563
828
 
564
829
  /**
565
830
  * Creates a chart category, which includes an axis, a data root, and a sort definition. A chart category is used in a workbook.ChartDefinition.
566
831
  */
567
- export function createCategory(options: CreateCategoryOptions): Workbook;
832
+ export function createCategory(options: CreateCategoryOptions): Category;
568
833
 
569
834
  /**
570
835
  * Creates an X-axis or a Y-axis for the chart.
571
836
  */
572
- export function createChartAxis(options: CreateChartAxis): Workbook;
837
+ export function createChartAxis(options: CreateChartAxis): ChartAxis;
573
838
 
574
839
  /**
575
840
  * Creates a chart definition.
@@ -579,125 +844,200 @@ export function createChartAxis(options: CreateChartAxis): Workbook;
579
844
  */
580
845
  export function createChartDefinition(options: CreateChartDefinition): Workbook;
581
846
 
847
+ /**
848
+ * Creates a color.
849
+ */
850
+ export function createColor(options: CreateColor): ColorRGBA;
851
+
582
852
  /**
583
853
  * Creates a conditional filter, which includes a selector of what to filter, a row axis and other axis, a measure and a predicate.
584
854
  * Conditional filters can be used in pivot definitions and chart definitions.
585
855
  */
586
- export function createConditionalFilter(options: CreateConditionalFilter): Workbook;
856
+ export function createConditionalFilter(options: CreateConditionalFilter): ConditionalFilter;
857
+
858
+ /**
859
+ * Creates a conditional format.
860
+ */
861
+ export function createConditionalFormat(options: CreateConditionalFormat): ConditionalFormat;
862
+
863
+ /**
864
+ * Creates a conditional format rule.
865
+ */
866
+ export function createConditionalFormatRule(options: CreateConditionalFormatRule): ConditionalFormatRule;
587
867
 
588
868
  /**
589
869
  * Creates a constant expression.
590
870
  */
591
- export function createConstant(options: CreateConstant): Workbook;
871
+ export function createConstant(options: CreateConstant): Expression;
592
872
 
593
873
  /**
594
874
  * Creates a data dimension, which includes items, child data items, and a total line.
595
875
  * A data dimension is used in a workbook.Category, a workbook.Legend a workbook.PivotAxis, a workbook.DimensionSelector, and a workbook.Section.
596
876
  */
597
- export function createDataDimension(options: CreateDataDimension): Workbook;
877
+ export function createDataDimension(options: CreateDataDimension): DataDimension;
598
878
 
599
879
  /**
600
880
  * Creates a data dimension item, which includes an expression and a label.
601
881
  */
602
- export function createDataDimensionItem(options: CreateDataDimensionItem): Workbook;
882
+ export function createDataDimensionItem(options: CreateDataDimensionItem): DataDimensionItem;
883
+
884
+ /**
885
+ * Creates a data measure.
886
+ */
887
+ export function createDataMeasure(options: CreateDataMeasure): DataMeasure;
603
888
 
604
889
  /**
605
890
  * Creates a dimension selector.
606
891
  */
607
- export function createDimensionSelector(options: CreateDimensionSelector): Workbook;
892
+ export function createDimensionSelector(options: CreateDimensionSelector): DimensionSelector;
608
893
 
609
894
  /**
610
895
  * Creates a dimension sort.
611
896
  */
612
- export function createDimensionSort(options: CreateDimensionSort): Workbook;
897
+ export function createDimensionSort(options: CreateDimensionSort): DimensionSort;
613
898
 
614
899
  /**
615
900
  * Creates an expression, that includes a function ID and parameters.
616
901
  * Expressions can be used to create a pivot definition, a chart definition, a data dimension item, a measure, a conditional filter, and a dimension sort.
617
902
  */
618
- export function createExpression(options: CreateExpression): Workbook;
903
+ export function createExpression(options: CreateExpression): Expression;
619
904
 
620
905
  /**
621
906
  * Creates a field context for a table definition column.
622
907
  */
623
- export function createFieldContext(options: CreateFieldContext): Workbook;
908
+ export function createFieldContext(options: CreateFieldContext): FieldContext;
909
+
910
+ /**
911
+ * Creates a font size defined using units.
912
+ */
913
+ export function createFontSize(options: CreateFontSize): FontSizeObj;
624
914
 
625
915
  /**
626
916
  * Creates a chart legend.
627
917
  */
628
- export function createLegend(options: CreateLegend): Workbook;
918
+ export function createLegend(options: CreateLegend): Legend;
629
919
 
630
920
  /**
631
921
  * Creates a limiting filter, which includes a selector of what to filter, a row axis, a limit, and a sorting order.
632
922
  * Limiting filters can be used in pivot definitions and chart definitions to limit the data shown on a pivot or chart.
633
923
  */
634
- export function createLimitingFilter(options: CreateLimitingFilter): Workbook;
924
+ export function createLimitingFilter(options: CreateLimitingFilter): LimitingFilter;
635
925
 
636
926
  /**
637
927
  * Creates a measure, which includes an aggregation, a label, and one or more expressions.
638
928
  */
639
- export function createMeasure(options: CreateMeasure): Workbook;
929
+ export function createMeasure(options: CreateMeasure): Measure;
930
+
931
+ /**
932
+ * Creates a measure selector.
933
+ */
934
+ export function createMeasureSelector(options: CreateMeasureSelector): MeasureSelector;
640
935
 
641
936
  /**
642
937
  * Creates a measure sort, which defines a sort on a measure.
643
938
  */
644
- export function createMeasureSort(options: CreateMeasureSort): Workbook;
939
+ export function createMeasureSort(options: CreateMeasureSort): MeasureSort;
940
+
941
+ /**
942
+ * Creates a measure value selector.
943
+ */
944
+ export function createMeasureValueSelector(options: CreateMeasureValueSelector): MeasureValueSelector;
645
945
 
646
946
  /**
647
947
  * Creates a path selector.
648
948
  */
649
- export function createPathSelector(options: CreatePathSelector): Workbook;
949
+ export function createPathSelector(options: CreatePathSelector): PathSelector;
650
950
 
651
951
  /**
652
952
  * Creates a pivot axis, which includes a data root and a sort definition.
653
953
  */
654
- export function createPivotAxis(options: CreatePivotAxis): Workbook;
954
+ export function createPivotAxis(options: CreatePivotAxis): PivotAxis;
655
955
 
656
956
  /**
657
957
  * Creates a pivot definition.
658
958
  * A pivot is a workbook component that enables you to pivot your dataset query results by defining measures and dimensions, so that you can analyze different subsets of data.
659
959
  * A pivot definition is based on an underlying dataset and can include an ID, a name, a row axis, a column axis, conditional/limiting filters, and filter expressions.
660
960
  */
661
- export function createPivotDefinition(options: CreatePivotDefinition): Workbook;
961
+ export function createPivot(options: CreatePivotDefinition): Pivot;
962
+
963
+ /**
964
+ * Creates a percent-defined background position.
965
+ */
966
+ export function createPositionPercent(options: CreatePositionPercent): PositionPercent;
967
+
968
+ /**
969
+ * Creates a background position defined using x-y coordinates and units.
970
+ */
971
+ export function createPositionUnits(options: CreatePositionUnits): PositionUnits;
972
+
973
+ /**
974
+ * Creates a background position defined using position values.
975
+ */
976
+ export function createPositionValues(options: CreatePositionValues): PositionValues;
977
+
978
+ /**
979
+ * Creates a report style.
980
+ */
981
+ export function createReportStyle(options: CreateReportStyle): ReportStyle;
982
+
983
+ /**
984
+ * Creates a report style formatting rule.
985
+ */
986
+ export function createReportStyleRule(options: CreateReportStyleRule): ReportStyleRule;
662
987
 
663
988
  /**
664
989
  * Creates a section, which includes children and a total line.
665
990
  */
666
- export function createSection(options: CreateSection): Workbook;
991
+ export function createSection(options: CreateSection): Section;
667
992
 
668
993
  /**
669
994
  * Creates a chart series, which is a set of aspects.
670
995
  */
671
- export function createSeries(options: CreateSeries): Workbook;
996
+ export function createSeries(options: CreateSeries): Series;
672
997
 
673
998
  /**
674
999
  * Creates a sort, which includes indicators for sorting in ascending order, case sensitivity, sort locale, and whether nulls should be placed last.
675
1000
  */
676
- export function createSort(options: CreateSort): Workbook;
1001
+ export function createSort(options: CreateSort): Sort;
1002
+
1003
+ /**
1004
+ * Creates a sort based on data dimension items.
1005
+ */
1006
+ export function createSortByDataDimensionItem(options: CreateSortByDataDimensionItem): SortByDataDimensionItem;
1007
+
1008
+ /**
1009
+ * Creates a sort based on a measure.
1010
+ */
1011
+ export function createSortByMeasure(options: CreateSortByMeasure): SortByMeasure;
677
1012
 
678
1013
  /**
679
1014
  * Creates a sort definition.
680
1015
  * A sort definition is used to specify sorting for a category, legend, pivot definition, or pivot axis.
681
1016
  */
682
- export function createSortDefinition(options: CreateSortDefinition): Workbook;
1017
+ export function createSortDefinition(options: CreateSortDefinition): SortDefinition;
1018
+
1019
+ /**
1020
+ * Creates a style to be used for conditional formatting.
1021
+ */
1022
+ export function createStyle(options: CreateStyle): Style;
683
1023
 
684
1024
  /**
685
1025
  * Creates a table column.
686
1026
  * Table columns are used in table definitions, and include an alias, dataset column alias/ID, filters, a label, sorts, and a column width.
687
1027
  */
688
- export function createTableColumn(options: CreateTableColumn): Workbook;
1028
+ export function createTableColumn(options: CreateTableColumn): TableColumn;
689
1029
 
690
1030
  /**
691
1031
  * Creates a table.
692
1032
  * A table is a workbook component that enables you to view your dataset query results in a simple table.
693
1033
  * A table is based on an underlying dataset and can include an ID, a name, a dataset, and table columns,
694
1034
  */
695
- export function createTableDefinition(options: CreateTableDefinition): Workbook;
1035
+ export function createTableDefinition(options: CreateTableDefinition): TableDefinition;
696
1036
 
697
1037
  /**
698
1038
  * Creates a table filter, which includes an operator and values.
699
1039
  */
700
- export function createTableFilter(options: CreateTableFilter): Workbook;
1040
+ export function createTableColumnFilter(options: CreateTableColumnFilter): TableColumnFilter;
701
1041
 
702
1042
  /**
703
1043
  * Lists all existing workbooks.
@@ -723,6 +1063,20 @@ declare enum AspectType {
723
1063
  VALUE = 'value'
724
1064
  }
725
1065
 
1066
+ declare enum Color {
1067
+ BLACK,
1068
+ BLUE,
1069
+ BROWN,
1070
+ GRAY,
1071
+ GREEN,
1072
+ ORANGE,
1073
+ PINK,
1074
+ PURPLE,
1075
+ RED,
1076
+ WHITE,
1077
+ YELLOW
1078
+ }
1079
+
726
1080
  declare enum ChartType {
727
1081
  AREA,
728
1082
  BAR,
@@ -781,12 +1135,99 @@ declare enum ExpressionType {
781
1135
  TRUNCATE_DATE_TIME
782
1136
  }
783
1137
 
1138
+ declare enum FontSize {
1139
+ LARGE,
1140
+ LARGER,
1141
+ MEDIUM,
1142
+ SMALL,
1143
+ SMALLER,
1144
+ XX_LARGE,
1145
+ XX_SMALL,
1146
+ X_LARGE,
1147
+ X_SMALL
1148
+ }
1149
+
1150
+ declare enum FontStyle {
1151
+ ITALIC,
1152
+ NORMAL,
1153
+ OBLIQUE,
1154
+ }
1155
+
1156
+ declare enum FontWeight {
1157
+ BOLD,
1158
+ NORMAL
1159
+ }
1160
+
1161
+ declare enum Image {
1162
+ EXCLAMATION,
1163
+ QUESTION,
1164
+ SMILE
1165
+ }
1166
+
1167
+ declare enum Position {
1168
+ BOTTOM,
1169
+ CENTER,
1170
+ LEFT,
1171
+ RIGHT,
1172
+ TOP
1173
+ }
1174
+
784
1175
  declare enum Stacking {
785
1176
  DISABLED,
786
1177
  NORMAL,
787
1178
  PERCENT
788
1179
  }
789
1180
 
1181
+ declare enum TemporalUnit {
1182
+ HOURS,
1183
+ MINUTES
1184
+ }
1185
+
1186
+ declare enum TextAlign {
1187
+ CENTER,
1188
+ JUSTIFY,
1189
+ LEFT,
1190
+ RIGHT
1191
+ }
1192
+
1193
+ declare enum TextDecorationLine {
1194
+ LINE_THROUGH,
1195
+ NONE,
1196
+ OVERLINE,
1197
+ UNDERLINE
1198
+ }
1199
+
1200
+ declare enum TextDecorationStyle {
1201
+ DASHED,
1202
+ DOTTED,
1203
+ DOUBLE,
1204
+ SOLID,
1205
+ WAVY
1206
+ }
1207
+
1208
+ declare enum TotalLine {
1209
+ FIRST_LINE,
1210
+ HIDDEN,
1211
+ LAST_LINE
1212
+ }
1213
+
1214
+ declare enum Unit {
1215
+ CH,
1216
+ CM,
1217
+ EM,
1218
+ EX,
1219
+ IN,
1220
+ MM,
1221
+ PC,
1222
+ PT,
1223
+ PX,
1224
+ REM,
1225
+ VH,
1226
+ VMAX,
1227
+ VMIN,
1228
+ VW
1229
+ }
1230
+
790
1231
  declare enum Operator {
791
1232
  AFTER = 'AFTER',
792
1233
  AFTER_NOT = 'AFTER_NOT',
@@ -830,10 +1271,4 @@ declare enum Operator {
830
1271
  START_WITH_NOT = 'START_WITH_NOT',
831
1272
  WITHIN = 'WITHIN',
832
1273
  WITHIN_NOT = 'WITHIN_NOT'
833
- }
834
-
835
- declare enum TotalLine {
836
- FIRST_LINE,
837
- HIDDEN,
838
- LAST_LINE
839
1274
  }
package/package.json CHANGED
@@ -8,7 +8,7 @@
8
8
  "posttest": "npm run cleanup"
9
9
  },
10
10
  "homepage": "https://github.com/headintheclouddev/typings-suitescript-2.0",
11
- "version": "2021.2.5",
11
+ "version": "2021.2.10",
12
12
  "main": "index.d.ts",
13
13
  "author": "Head in the Cloud Development <gurus@headintheclouddev.com> (www.headintheclouddev.com)",
14
14
  "license": "MIT",
@@ -1,10 +0,0 @@
1
- import {Dataset} from "N/dataset";
2
-
3
- /** Context object for the main createDataset() plugin interface function. */
4
- interface CreateDatasetContext {
5
- dataset: Dataset;
6
- readonly description: string
7
- readonly name: string;
8
- readonly owner: number;
9
- readonly role: number;
10
- }
@@ -1,9 +0,0 @@
1
- import {Workbook} from "N/workbook";
2
-
3
- interface CreateWorkbookContext {
4
- readonly description: string;
5
- readonly name: string;
6
- readonly owner: number;
7
- readonly role: number;
8
- workbook: Workbook;
9
- }