pict-section-form 1.0.61 → 1.0.62
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/debug/PICTSection-TabularManifests.json +119 -21
- package/debug/TabularManifestCSV.csv +60 -54
- package/debug/data/DefaultFormManifest.json +119 -21
- package/debug/data/MathExampleForm.json +119 -21
- package/example_applications/complex_table/Complex-Tabular-Application.js +8 -1
- package/package.json +1 -1
- package/source/providers/Pict-Provider-DynamicSolver.js +5 -0
- package/source/providers/Pict-Provider-InputExtension.js +24 -0
- package/source/providers/dynamictemplates/Pict-DynamicTemplates-DefaultFormTemplates.js +24 -2
- package/source/providers/inputs/Pict-Provider-Input-PreciseNumber.js +83 -0
- package/source/services/ManifestFactory.js +35 -3
|
@@ -117,7 +117,7 @@
|
|
|
117
117
|
"Row": "1",
|
|
118
118
|
"Width": "6",
|
|
119
119
|
"Section": "Basic_Geometry",
|
|
120
|
-
"Group": "
|
|
120
|
+
"Group": "BasicGeoGrp"
|
|
121
121
|
},
|
|
122
122
|
"Default": "7.25"
|
|
123
123
|
},
|
|
@@ -130,7 +130,7 @@
|
|
|
130
130
|
"Row": "1",
|
|
131
131
|
"Width": "6",
|
|
132
132
|
"Section": "Basic_Geometry",
|
|
133
|
-
"Group": "
|
|
133
|
+
"Group": "BasicGeoGrp"
|
|
134
134
|
},
|
|
135
135
|
"Default": "10.3571"
|
|
136
136
|
},
|
|
@@ -143,7 +143,7 @@
|
|
|
143
143
|
"Row": "2",
|
|
144
144
|
"Width": "3",
|
|
145
145
|
"Section": "Basic_Geometry",
|
|
146
|
-
"Group": "
|
|
146
|
+
"Group": "BasicGeoGrp",
|
|
147
147
|
"Units": "unrounded"
|
|
148
148
|
}
|
|
149
149
|
},
|
|
@@ -156,7 +156,7 @@
|
|
|
156
156
|
"Row": "2",
|
|
157
157
|
"Width": "3",
|
|
158
158
|
"Section": "Basic_Geometry",
|
|
159
|
-
"Group": "
|
|
159
|
+
"Group": "BasicGeoGrp",
|
|
160
160
|
"Units": "default"
|
|
161
161
|
}
|
|
162
162
|
},
|
|
@@ -169,7 +169,7 @@
|
|
|
169
169
|
"Row": "2",
|
|
170
170
|
"Width": "3",
|
|
171
171
|
"Section": "Basic_Geometry",
|
|
172
|
-
"Group": "
|
|
172
|
+
"Group": "BasicGeoGrp",
|
|
173
173
|
"Units": "3"
|
|
174
174
|
}
|
|
175
175
|
},
|
|
@@ -182,7 +182,7 @@
|
|
|
182
182
|
"Row": "2",
|
|
183
183
|
"Width": "3",
|
|
184
184
|
"Section": "Basic_Geometry",
|
|
185
|
-
"Group": "
|
|
185
|
+
"Group": "BasicGeoGrp",
|
|
186
186
|
"Units": "5"
|
|
187
187
|
}
|
|
188
188
|
},
|
|
@@ -476,6 +476,12 @@
|
|
|
476
476
|
"Name": "Rectangles",
|
|
477
477
|
"DataAddress": "Rectangle",
|
|
478
478
|
"DataType": "Array"
|
|
479
|
+
},
|
|
480
|
+
"Cylinders": {
|
|
481
|
+
"Hash": "Cylinders",
|
|
482
|
+
"Name": "Cylinders",
|
|
483
|
+
"DataAddress": "Cylinders",
|
|
484
|
+
"DataType": "Array"
|
|
479
485
|
}
|
|
480
486
|
},
|
|
481
487
|
"Sections": [
|
|
@@ -534,7 +540,7 @@
|
|
|
534
540
|
"Groups": [
|
|
535
541
|
{
|
|
536
542
|
"Name": "Rectangle",
|
|
537
|
-
"Hash": "
|
|
543
|
+
"Hash": "BasicGeoGrp",
|
|
538
544
|
"Rows": [],
|
|
539
545
|
"RecordSetSolvers": []
|
|
540
546
|
},
|
|
@@ -548,12 +554,12 @@
|
|
|
548
554
|
},
|
|
549
555
|
{
|
|
550
556
|
"Name": "Box Collection",
|
|
551
|
-
"Hash": "
|
|
557
|
+
"Hash": "BoxCollSec",
|
|
552
558
|
"Solvers": [],
|
|
553
559
|
"Groups": [
|
|
554
560
|
{
|
|
555
561
|
"Name": "Boxes",
|
|
556
|
-
"Hash": "
|
|
562
|
+
"Hash": "BoxCollGrp",
|
|
557
563
|
"Rows": [],
|
|
558
564
|
"RecordSetSolvers": [
|
|
559
565
|
"BoxFloorspace = BoxWidth * BoxDepth",
|
|
@@ -640,6 +646,26 @@
|
|
|
640
646
|
"RecordManifest": "Rectangles"
|
|
641
647
|
}
|
|
642
648
|
]
|
|
649
|
+
},
|
|
650
|
+
{
|
|
651
|
+
"Name": "Cylinders",
|
|
652
|
+
"Hash": "Cylinders",
|
|
653
|
+
"Solvers": [],
|
|
654
|
+
"Groups": [
|
|
655
|
+
{
|
|
656
|
+
"Name": "Cylinders",
|
|
657
|
+
"Hash": "Cylinders",
|
|
658
|
+
"Rows": [],
|
|
659
|
+
"RecordSetSolvers": [
|
|
660
|
+
"Circumference = 2 * PI() * Radius",
|
|
661
|
+
"Area = (2 * PI() * Radius * Height) + (2 * PI() * Radius ^2)"
|
|
662
|
+
],
|
|
663
|
+
"ShowTitle": false,
|
|
664
|
+
"Layout": "Tabular",
|
|
665
|
+
"RecordSetAddress": "Cylinders",
|
|
666
|
+
"RecordManifest": "Cylinders"
|
|
667
|
+
}
|
|
668
|
+
]
|
|
643
669
|
}
|
|
644
670
|
],
|
|
645
671
|
"ReferenceManifests": {
|
|
@@ -654,8 +680,8 @@
|
|
|
654
680
|
"PictForm": {
|
|
655
681
|
"Row": "1",
|
|
656
682
|
"Width": "1",
|
|
657
|
-
"Section": "
|
|
658
|
-
"Group": "
|
|
683
|
+
"Section": "BoxCollSec",
|
|
684
|
+
"Group": "BoxCollGrp"
|
|
659
685
|
},
|
|
660
686
|
"IsTabular": true
|
|
661
687
|
},
|
|
@@ -667,8 +693,8 @@
|
|
|
667
693
|
"PictForm": {
|
|
668
694
|
"Row": "1",
|
|
669
695
|
"Width": "1",
|
|
670
|
-
"Section": "
|
|
671
|
-
"Group": "
|
|
696
|
+
"Section": "BoxCollSec",
|
|
697
|
+
"Group": "BoxCollGrp"
|
|
672
698
|
},
|
|
673
699
|
"IsTabular": true
|
|
674
700
|
},
|
|
@@ -680,8 +706,8 @@
|
|
|
680
706
|
"PictForm": {
|
|
681
707
|
"Row": "1",
|
|
682
708
|
"Width": "1",
|
|
683
|
-
"Section": "
|
|
684
|
-
"Group": "
|
|
709
|
+
"Section": "BoxCollSec",
|
|
710
|
+
"Group": "BoxCollGrp"
|
|
685
711
|
},
|
|
686
712
|
"IsTabular": true
|
|
687
713
|
},
|
|
@@ -693,8 +719,8 @@
|
|
|
693
719
|
"PictForm": {
|
|
694
720
|
"Row": "1",
|
|
695
721
|
"Width": "1",
|
|
696
|
-
"Section": "
|
|
697
|
-
"Group": "
|
|
722
|
+
"Section": "BoxCollSec",
|
|
723
|
+
"Group": "BoxCollGrp"
|
|
698
724
|
},
|
|
699
725
|
"IsTabular": true
|
|
700
726
|
},
|
|
@@ -706,8 +732,8 @@
|
|
|
706
732
|
"PictForm": {
|
|
707
733
|
"Row": "1",
|
|
708
734
|
"Width": "1",
|
|
709
|
-
"Section": "
|
|
710
|
-
"Group": "
|
|
735
|
+
"Section": "BoxCollSec",
|
|
736
|
+
"Group": "BoxCollGrp"
|
|
711
737
|
},
|
|
712
738
|
"IsTabular": true
|
|
713
739
|
},
|
|
@@ -719,8 +745,8 @@
|
|
|
719
745
|
"PictForm": {
|
|
720
746
|
"Row": "1",
|
|
721
747
|
"Width": "1",
|
|
722
|
-
"Section": "
|
|
723
|
-
"Group": "
|
|
748
|
+
"Section": "BoxCollSec",
|
|
749
|
+
"Group": "BoxCollGrp"
|
|
724
750
|
},
|
|
725
751
|
"IsTabular": true
|
|
726
752
|
}
|
|
@@ -786,6 +812,78 @@
|
|
|
786
812
|
},
|
|
787
813
|
"Sections": [],
|
|
788
814
|
"ReferenceManifests": {}
|
|
815
|
+
},
|
|
816
|
+
"Cylinders": {
|
|
817
|
+
"Scope": "Cylinders",
|
|
818
|
+
"Descriptors": {
|
|
819
|
+
"Identifier": {
|
|
820
|
+
"Hash": "Identifier",
|
|
821
|
+
"Name": "Identifier",
|
|
822
|
+
"DataAddress": "Identifier",
|
|
823
|
+
"DataType": "String",
|
|
824
|
+
"PictForm": {
|
|
825
|
+
"Row": "1",
|
|
826
|
+
"Width": "1",
|
|
827
|
+
"Section": "Cylinders",
|
|
828
|
+
"Group": "Cylinders"
|
|
829
|
+
},
|
|
830
|
+
"IsTabular": true
|
|
831
|
+
},
|
|
832
|
+
"Radius": {
|
|
833
|
+
"Hash": "Radius",
|
|
834
|
+
"Name": "Radius",
|
|
835
|
+
"DataAddress": "Radius",
|
|
836
|
+
"DataType": "PreciseNumber",
|
|
837
|
+
"PictForm": {
|
|
838
|
+
"Row": "1",
|
|
839
|
+
"Width": "1",
|
|
840
|
+
"Section": "Cylinders",
|
|
841
|
+
"Group": "Cylinders"
|
|
842
|
+
},
|
|
843
|
+
"IsTabular": true
|
|
844
|
+
},
|
|
845
|
+
"Height": {
|
|
846
|
+
"Hash": "Height",
|
|
847
|
+
"Name": "Height",
|
|
848
|
+
"DataAddress": "Height",
|
|
849
|
+
"DataType": "PreciseNumber",
|
|
850
|
+
"PictForm": {
|
|
851
|
+
"Row": "1",
|
|
852
|
+
"Width": "1",
|
|
853
|
+
"Section": "Cylinders",
|
|
854
|
+
"Group": "Cylinders"
|
|
855
|
+
},
|
|
856
|
+
"IsTabular": true
|
|
857
|
+
},
|
|
858
|
+
"Circumference": {
|
|
859
|
+
"Hash": "Circumference",
|
|
860
|
+
"Name": "Circumference",
|
|
861
|
+
"DataAddress": "Circumference",
|
|
862
|
+
"DataType": "PreciseNumber",
|
|
863
|
+
"PictForm": {
|
|
864
|
+
"Row": "1",
|
|
865
|
+
"Width": "1",
|
|
866
|
+
"Section": "Cylinders",
|
|
867
|
+
"Group": "Cylinders"
|
|
868
|
+
},
|
|
869
|
+
"IsTabular": true
|
|
870
|
+
},
|
|
871
|
+
"Area": {
|
|
872
|
+
"Hash": "Area",
|
|
873
|
+
"Name": "Area",
|
|
874
|
+
"DataAddress": "Area",
|
|
875
|
+
"DataType": "PreciseNumber",
|
|
876
|
+
"PictForm": {
|
|
877
|
+
"Row": "1",
|
|
878
|
+
"Width": "1",
|
|
879
|
+
"Section": "Cylinders",
|
|
880
|
+
"Group": "Cylinders"
|
|
881
|
+
},
|
|
882
|
+
"IsTabular": true
|
|
883
|
+
}
|
|
884
|
+
},
|
|
885
|
+
"Sections": [],
|
|
886
|
+
"ReferenceManifests": {}
|
|
789
887
|
}
|
|
790
888
|
}
|
|
791
889
|
}
|
|
@@ -1,54 +1,60 @@
|
|
|
1
|
-
Form,Form Name,SubManifest,DataOnly,Section Name,Group Name,Group CSS,Group Show Title,Row,Width,Minimum Row Count,Maximum Row Count,Input Address,Input Name,Input Hash,Input Extra,Units,DataType,InputType,Equation,Default,Description,Tooltip,Input Notes,,Entity,EntityColumnFilter,EntityDestination,SingleRecord,TriggerGroup,TriggerAddress,MarshalEmptyValues
|
|
2
|
-
MathExampleForm,Math Example Form,,,Header
|
|
3
|
-
MathExampleForm,,,,Header
|
|
4
|
-
MathExampleForm,,,,Header
|
|
5
|
-
MathExampleForm,,,,Header
|
|
6
|
-
MathExampleForm,,,,Header
|
|
7
|
-
MathExampleForm,,,,Header
|
|
8
|
-
MathExampleForm,,,,Header
|
|
9
|
-
MathExampleForm,,,,Header
|
|
10
|
-
MathExampleForm,,,,Header
|
|
11
|
-
MathExampleForm,,,,Bridge
|
|
12
|
-
MathExampleForm,,,,MatheMagic
|
|
13
|
-
MathExampleForm,,,,Basic Geometry,
|
|
14
|
-
MathExampleForm,,,,Basic Geometry,
|
|
15
|
-
MathExampleForm,,,,Basic Geometry,
|
|
16
|
-
MathExampleForm,,,,Basic Geometry,
|
|
17
|
-
MathExampleForm,,,,Basic Geometry,
|
|
18
|
-
MathExampleForm,,,,Basic Geometry,
|
|
19
|
-
MathExampleForm,,,,Basic Geometry
|
|
20
|
-
MathExampleForm,,,,Basic Geometry
|
|
21
|
-
MathExampleForm,,,,Basic Geometry
|
|
22
|
-
MathExampleForm,,,,Basic Geometry
|
|
23
|
-
MathExampleForm,,,,Basic Geometry
|
|
24
|
-
MathExampleForm,,BoxCollectionData,1,Box Collection,Boxes
|
|
25
|
-
MathExampleForm,,BoxCollectionData,,Box Collection,Boxes
|
|
26
|
-
MathExampleForm,,BoxCollectionData,,Box Collection,Boxes
|
|
27
|
-
MathExampleForm,,BoxCollectionData,,Box Collection,Boxes
|
|
28
|
-
MathExampleForm,,BoxCollectionData,,Box Collection,Boxes
|
|
29
|
-
MathExampleForm,,BoxCollectionData,,Box Collection,Boxes
|
|
30
|
-
MathExampleForm,,BoxCollectionData,,Box Collection,Boxes
|
|
31
|
-
MathExampleForm,,,1,Box Summary Data
|
|
32
|
-
MathExampleForm,,,1,Box Summary Data
|
|
33
|
-
MathExampleForm,,,1,Box Summary Data
|
|
34
|
-
MathExampleForm,,,,Box Summary Data
|
|
35
|
-
MathExampleForm,,,,Box Summary Data
|
|
36
|
-
MathExampleForm,,,,Box Summary Data
|
|
37
|
-
MathExampleForm,,,,Box Summary Data
|
|
38
|
-
MathExampleForm,,,,Box Summary Data
|
|
39
|
-
MathExampleForm,,,,Box Summary Data
|
|
40
|
-
MathExampleForm,,,,Box Summary Data
|
|
41
|
-
MathExampleForm,,,,Box Summary Data
|
|
42
|
-
MathExampleForm,,,,Box Summary Data
|
|
43
|
-
MathExampleForm,,,,Box Summary Data
|
|
44
|
-
MathExampleForm,,,,Rectangular Area Help
|
|
45
|
-
MathExampleForm,,,,Complex Equation
|
|
46
|
-
MathExampleForm,,,,Complex Equation
|
|
47
|
-
MathExampleForm,,,,Complex Equation
|
|
48
|
-
MathExampleForm,,,,Complex Equation
|
|
49
|
-
MathExampleForm,,,,Complex Equation
|
|
50
|
-
MathExampleForm,,Rectangles,1,Rectangle Aggregation
|
|
51
|
-
MathExampleForm,,Rectangles,,Rectangle Aggregation
|
|
52
|
-
MathExampleForm,,Rectangles,,Rectangle Aggregation
|
|
53
|
-
MathExampleForm,,Rectangles,,Rectangle Aggregation
|
|
54
|
-
MathExampleForm,,Rectangles,,Rectangle Aggregation
|
|
1
|
+
Form,Form Name,SubManifest,DataOnly,Section Name,Section Hash,Group Name,Group Hash,Group Layout,Group CSS,Group Show Title,Row,Width,Minimum Row Count,Maximum Row Count,Input Address,Input Name,Input Hash,Input Extra,Units,DataType,Decimal Precision,InputType,Equation,Default,Description,Tooltip,Input Notes,,Entity,EntityColumnFilter,EntityDestination,SingleRecord,TriggerGroup,TriggerAddress,MarshalEmptyValues
|
|
2
|
+
MathExampleForm,Math Example Form,,,Header,,General Info,,,,,1,3,,,Header.FirstName,First Name,HeaderFirstName,,,String,,,,,,,,,,,,,,,
|
|
3
|
+
MathExampleForm,,,,Header,,General Info,,,,,1,3,,,Header.LastName,Last Name,HeaderLastName,,,String,,,,,,,,,,,,,,,
|
|
4
|
+
MathExampleForm,,,,Header,,General Info,,,,,1,6,,,Header.JobTitle,Job Title,JobTitle,,,String,,,,,,,,,,,,,,,
|
|
5
|
+
MathExampleForm,,,,Header,,General Info,,,,,2,12,,,Header.Description,Description,Description,,,String,,,,,,,,,,,,,,,
|
|
6
|
+
MathExampleForm,,,,Header,,General Info,,,,,3,12,,,Header.Planet,Planet,Planet,"Earth,Mars,Saturn,Jupiter",planetary,String,,Option,,,,,,,,,,,,,
|
|
7
|
+
MathExampleForm,,,,Header,,General Info,,,,,1,3,,,Header.LastName,Last Name,HeaderLastName,,,String,,,,,,,,,,,,,,,
|
|
8
|
+
MathExampleForm,,,,Header,,General Info,,,,,1,6,,,Header.JobTitle,Job Title,JobTitle,,,String,,,,,,,,,,,,,,,
|
|
9
|
+
MathExampleForm,,,,Header,,General Info,,,,,2,12,,,Header.Description,Description,Description,,,String,,,,,,,,,,,,,,,
|
|
10
|
+
MathExampleForm,,,,Header,,General Info,,,,,3,12,,,Header.Planet,Planet,Planet,"Earth,Mars,Saturn,Jupiter",planetary,String,,Option,,,,,,,,,,,,,
|
|
11
|
+
MathExampleForm,,,,Bridge,,Bridge Data,,,,,1,6,,,BridgeData.IDBridge,IDBridge,CurrentIDBridge,,,Number,,,,,,,Bridge,FBV~IDBridge~EQ~{~D:Record.Value~},BridgeData.CurrentBridge,true,,,,,
|
|
12
|
+
MathExampleForm,,,,MatheMagic,,Math is Magic,,,,,1,1,,,HelpContent.Math,So Very Magic,MathHelpContent,,,String,,HTML,,,,,,,,,,,,,
|
|
13
|
+
MathExampleForm,,,,Basic Geometry,,Rectangle,BasicGeoGrp,,,,1,6,,,Geometry.Rectangle.Width,Width,RectangleWidth,,,Number,,,,7.25,,,,,,,,,,,
|
|
14
|
+
MathExampleForm,,,,Basic Geometry,,Rectangle,BasicGeoGrp,,,,1,6,,,Geometry.Rectangle.Height,Height,RectangleHeight,,,Number,,,,10.3571,,,,,,,,,,,
|
|
15
|
+
MathExampleForm,,,,Basic Geometry,,Rectangle,BasicGeoGrp,,,,2,3,,,Geometry.Rectangle.Area,Area,RectangleArea,,unrounded,Number,,,RectangleArea = RectangleWidth * RectangleHeight,,,,,,,,,,,,
|
|
16
|
+
MathExampleForm,,,,Basic Geometry,,Rectangle,BasicGeoGrp,,,,2,3,,,Geometry.Rectangle.AreaRoundedDefault,Area Rounded,RectangleAreaRoundedDefault,,default,Number,,,RectangleAreaRoundedDefault = ROUND(RectangleWidth * RectangleHeight),,,,,,,,,,,,
|
|
17
|
+
MathExampleForm,,,,Basic Geometry,,Rectangle,BasicGeoGrp,,,,2,3,,,Geometry.Rectangle.AreaRoundedThree,Area Rounded 3,RectangleAreaRoundedThree,,3,Number,,,"RectangleAreaRoundedThree = ROUND((RectangleWidth * RectangleHeight), 3)",,,,,,,,,,,,
|
|
18
|
+
MathExampleForm,,,,Basic Geometry,,Rectangle,BasicGeoGrp,,,,2,3,,,Geometry.Rectangle.AreaRoundedFour,Area Rounded 5,RectangleAreaRoundedFive,,5,Number,,,"RectangleAreaRoundedFive = ROUND(RectangleArea, 5)",,,,,,,,,,,,
|
|
19
|
+
MathExampleForm,,,,Basic Geometry,,Circle,,,,,1,12,,,Geometry.Circle.Radius,Radius,CircleRadius,,,Number,,,,85.523,,,,,,,,,,,
|
|
20
|
+
MathExampleForm,,,,Basic Geometry,,Circle,,,,,2,3,,,Geometry.Circle.Area,Area,CircleArea,,unrounded,Number,,,CircleArea = PI() * CircleRadius^2,,,,,,,,,,,,
|
|
21
|
+
MathExampleForm,,,,Basic Geometry,,Circle,,,,,2,3,,,Geometry.Circle.AreaRoundedDefault,Area Rounded,CircleAreaRoundedDefault,,default,Number,,,CircleAreaRoundedDefault = ROUND(PI() * CircleRadius^2),,,,,,,,,,,,
|
|
22
|
+
MathExampleForm,,,,Basic Geometry,,Circle,,,,,2,3,,,Geometry.Circle.AreaRoundedThree,Area Rounded 4,CircleAreaRoundedFour,,4,Number,,,"CircleAreaRoundedFour = ROUND(CircleArea,4)",,,,,,,,,,,,
|
|
23
|
+
MathExampleForm,,,,Basic Geometry,,Circle,,,,,2,3,,,Geometry.Circle.AreaRoundedFour,Area Rounded 6,CircleAreaRoundedSix,,6,Number,,,"CircleAreaRoundedSix = ROUND(PI() * CircleRadius^2,6)",,,,,,,,,,,,
|
|
24
|
+
MathExampleForm,,BoxCollectionData,1,Box Collection,BoxCollSec,Boxes,BoxCollGrp,,,true,1,1,3,10,Boxes,Boxes,Boxes,,,Array,,TabularAddress,,,,,,,,,,,,,
|
|
25
|
+
MathExampleForm,,BoxCollectionData,,Box Collection,BoxCollSec,Boxes,BoxCollGrp,,,,1,1,,,Identifier,Identifier,BoxIdentifier,,,String,,,,,,,,,,,,,,,
|
|
26
|
+
MathExampleForm,,BoxCollectionData,,Box Collection,BoxCollSec,Boxes,BoxCollGrp,,,,1,1,,,Width,Width,BoxWidth,,,Number,,,,,,,,,,,,,,,
|
|
27
|
+
MathExampleForm,,BoxCollectionData,,Box Collection,BoxCollSec,Boxes,BoxCollGrp,,,,1,1,,,Height,Height,BoxHeight,,,Number,,,,,,,,,,,,,,,
|
|
28
|
+
MathExampleForm,,BoxCollectionData,,Box Collection,BoxCollSec,Boxes,BoxCollGrp,,,,1,1,,,Depth,Depth,BoxDepth,,,Number,,,,,,,,,,,,,,,
|
|
29
|
+
MathExampleForm,,BoxCollectionData,,Box Collection,BoxCollSec,Boxes,BoxCollGrp,,,,1,1,,,Floorspace,Floorspace,BoxFloorspace,,,Number,,,BoxFloorspace = BoxWidth * BoxDepth,,,,,,,,,,,,
|
|
30
|
+
MathExampleForm,,BoxCollectionData,,Box Collection,BoxCollSec,Boxes,BoxCollGrp,,,,1,1,,,Volume,Volume,BoxVolume,,,Number,,,BoxVolume = BoxFloorspace * BoxHeight,,,,,,,,,,,,
|
|
31
|
+
MathExampleForm,,,1,Box Summary Data,,Box Summary Data,,,,,0,0,,,Boxes[].Floorspace,BoxesFloorspaceSet,BoxesFloorspaceSet,,,Number,,,,,,,,,,,,,,,
|
|
32
|
+
MathExampleForm,,,1,Box Summary Data,,Box Summary Data,,,,,0,0,,,Boxes[].Volume,BoxesVolumeSet,BoxesVolumeSet,,,Number,,,,,,,,,,,,,,,
|
|
33
|
+
MathExampleForm,,,1,Box Summary Data,,Box Summary Data,,,,,0,0,,,Boxes[].Depth,BoxesDepthSet,BoxesDepthSet,,,Number,,,,,,,,,,,,,,,
|
|
34
|
+
MathExampleForm,,,,Box Summary Data,,Box Summary Data,,,,,1,12,,,BoxAggregate.Count,Box Count,BoxesCount,,,Number,,,BoxesCount = COUNT(BoxesFloorspaceSet),,,,,,,,,,,,
|
|
35
|
+
MathExampleForm,,,,Box Summary Data,,Box Summary Data,,,,,2,6,,,BoxAggregate.AverageFloorspace,Average Floorspace,BoxesAverageFloorspace,,,Number,,,BoxesAverageFloorspace = AVG(BoxesFloorspaceSet),,,,,,,,,,,,
|
|
36
|
+
MathExampleForm,,,,Box Summary Data,,Box Summary Data,,,,,2,6,,,BoxAggregate.TotalFloorspace,Total Floorspace,BoxesTotalFloorspace,,,Number,,,BoxesTotalFloorspace = SUM(BoxesFloorspaceSet),,,,,,,,,,,,
|
|
37
|
+
MathExampleForm,,,,Box Summary Data,,Box Summary Data,,,,,3,4,,,BoxAggregate.AverageVolume,Average Volume,BoxesAverageVolume,,,Number,,,BoxesAverageVolume = AVG(BoxesVolumeSet),,,,,,,,,,,,
|
|
38
|
+
MathExampleForm,,,,Box Summary Data,,Box Summary Data,,,,,3,4,,,BoxAggregate.TotalVolume,Total Volume,BoxesTotalVolume,,,Number,,,BoxesTotalVolume = COUNT(BoxesVolumeSet),,,,,,,,,,,,
|
|
39
|
+
MathExampleForm,,,,Box Summary Data,,Box Summary Data,,,,,3,4,,,BoxAggregate.TotalVolumeRounded,Total Volume Rounded,BoxesTotalVolumeRounded,,,Number,,,BoxesTotalVolumeRounded = ROUND(SUM(BoxesVolumeSet)),,,,,,,,,,,,
|
|
40
|
+
MathExampleForm,,,,Box Summary Data,,Box Summary Data,,,,,4,3,,,BoxAggregate.MinDepth,Minimum Depth,BoxesMinDepth,,,Number,,,BoxesMinDepth = MIN(BoxesDepthSet),,,,,,,,,,,,
|
|
41
|
+
MathExampleForm,,,,Box Summary Data,,Box Summary Data,,,,,4,3,,,BoxAggregate.MeanDepth,Mean Depth,BoxesMeanDepth,,,Number,,,BoxesMeanDepth = MEAN(BoxesDepthSet),,,,,,,,,,,,
|
|
42
|
+
MathExampleForm,,,,Box Summary Data,,Box Summary Data,,,,,4,3,,,BoxAggregate.MedianDepth,Median Depth,BoxesMedianDepth,,,Number,,,BoxesMedianDepth = MEDIAN(BoxesDepthSet),,,,,,,,,,,,
|
|
43
|
+
MathExampleForm,,,,Box Summary Data,,Box Summary Data,,,,,4,3,,,BoxAggregate.MaxDepth,Max Depth,BoxesMaxDepth,,,Number,,,BoxesMaxDepth = MAX(BoxesDepthSet),,,,,,,,,,,,
|
|
44
|
+
MathExampleForm,,,,Rectangular Area Help,,Rectangular Area Help,,,,,1,1,,,HelpContent.Cuboid,How to Cuboid Math,CuboidHelpContent,,,String,,Markdown,,,,,,,,,,,,,
|
|
45
|
+
MathExampleForm,,,,Complex Equation,,Complex Equation,,Vertical,,,1,4,,,ComplexEquation.PR,PR,CePR,,,Number,,,,4.5,,The PR is *very* important.,,,,,,,,,
|
|
46
|
+
MathExampleForm,,,,Complex Equation,,Complex Equation,,,,,1,4,,,ComplexEquation.Z,Z,CeZ,,,Number,,,,1.5,,Z _is not_ the z-index.,,,,,,,,,
|
|
47
|
+
MathExampleForm,,,,Complex Equation,,Complex Equation,,,,,1,4,,,ComplexEquation.C,C,CeC,,,Number,,,,8.75,,C is the universal constant.,,,,,,,,,
|
|
48
|
+
MathExampleForm,,,,Complex Equation,,Complex Equation,,,,,2,6,,,ComplexEquation.Result,(160 * PR * Z) / (C / 100) * PR * Z + (160 * (1 - C / 100)),CeResult,,,Number,,,CeResult = (160 * CePR * CeZ) / (CeC / 100) * CePR * CeZ + (160 * (1 - CeC / 100)),,,,,,,,,,,,
|
|
49
|
+
MathExampleForm,,,,Complex Equation,,Complex Equation,,,,,2,6,,,ComplexEquation.ResultRounded,Rounded 3,CeResultRounded,,,Number,,,"CeResultRounded = ROUND(CeResult,3)",,,,,,,,,,,,
|
|
50
|
+
MathExampleForm,,Rectangles,1,Rectangle Aggregation,,Rectangle Set,,,,false,1,1,20,,Rectangle,Rectangles,Rectangles,,,Array,,TabularAddress,,,,,,,,,,,,,
|
|
51
|
+
MathExampleForm,,Rectangles,,Rectangle Aggregation,,Rectangle Set,,,,,1,1,,,Identifier,Identifier,RectangleIdentifier,,,String,,,,,,,,,,,,,,,
|
|
52
|
+
MathExampleForm,,Rectangles,,Rectangle Aggregation,,Rectangle Set,,,,,1,1,,,Width,Width,RectangleWidth,,,Number,,,,,,,,,,,,,,,
|
|
53
|
+
MathExampleForm,,Rectangles,,Rectangle Aggregation,,Rectangle Set,,,,,1,1,,,Height,Height,RectangleHeight,,,Number,,,,,,,,,,,,,,,
|
|
54
|
+
MathExampleForm,,Rectangles,,Rectangle Aggregation,,Rectangle Set,,,,,1,1,,,Area,Area,RectangleArea,,,Number,,,RectangleArea = RectangleWidth + RectangleHeight,,,,,,,,,,,,
|
|
55
|
+
MathExampleForm,,Cylinders,1,Cylinders,,Cylinders,,,,false,1,1,,,Cylinders,Cylinders,Cylinders,,,Array,,TabularAddress,,,,,,,,,,,,,
|
|
56
|
+
MathExampleForm,,Cylinders,,Cylinders,,Cylinders,,,,,1,1,,,Identifier,Identifier,Identifier,,,String,,,,,,,,,,,,,,,
|
|
57
|
+
MathExampleForm,,Cylinders,,Cylinders,,Cylinders,,,,,1,1,,,Radius,Radius,Radius,,,PreciseNumber,,,,,,,,,,,,,,,
|
|
58
|
+
MathExampleForm,,Cylinders,,Cylinders,,Cylinders,,,,,1,1,,,Height,Height,Height,,,PreciseNumber,,,,,,,,,,,,,,,
|
|
59
|
+
MathExampleForm,,Cylinders,,Cylinders,,Cylinders,,,,,1,1,,,Circumference,Circumference,Circumference,,,PreciseNumber,,,Circumference = 2 * PI() * Radius,,,,,,,,,,,,
|
|
60
|
+
MathExampleForm,,Cylinders,,Cylinders,,Cylinders,,,,,1,1,,,Area,Area,Area,,,PreciseNumber,,,Area = (2 * PI() * Radius * Height) + (2 * PI() * Radius ^2),,,,,,,,,,,,
|
|
@@ -117,7 +117,7 @@
|
|
|
117
117
|
"Row": "1",
|
|
118
118
|
"Width": "6",
|
|
119
119
|
"Section": "Basic_Geometry",
|
|
120
|
-
"Group": "
|
|
120
|
+
"Group": "BasicGeoGrp"
|
|
121
121
|
},
|
|
122
122
|
"Default": "7.25"
|
|
123
123
|
},
|
|
@@ -130,7 +130,7 @@
|
|
|
130
130
|
"Row": "1",
|
|
131
131
|
"Width": "6",
|
|
132
132
|
"Section": "Basic_Geometry",
|
|
133
|
-
"Group": "
|
|
133
|
+
"Group": "BasicGeoGrp"
|
|
134
134
|
},
|
|
135
135
|
"Default": "10.3571"
|
|
136
136
|
},
|
|
@@ -143,7 +143,7 @@
|
|
|
143
143
|
"Row": "2",
|
|
144
144
|
"Width": "3",
|
|
145
145
|
"Section": "Basic_Geometry",
|
|
146
|
-
"Group": "
|
|
146
|
+
"Group": "BasicGeoGrp",
|
|
147
147
|
"Units": "unrounded"
|
|
148
148
|
}
|
|
149
149
|
},
|
|
@@ -156,7 +156,7 @@
|
|
|
156
156
|
"Row": "2",
|
|
157
157
|
"Width": "3",
|
|
158
158
|
"Section": "Basic_Geometry",
|
|
159
|
-
"Group": "
|
|
159
|
+
"Group": "BasicGeoGrp",
|
|
160
160
|
"Units": "default"
|
|
161
161
|
}
|
|
162
162
|
},
|
|
@@ -169,7 +169,7 @@
|
|
|
169
169
|
"Row": "2",
|
|
170
170
|
"Width": "3",
|
|
171
171
|
"Section": "Basic_Geometry",
|
|
172
|
-
"Group": "
|
|
172
|
+
"Group": "BasicGeoGrp",
|
|
173
173
|
"Units": "3"
|
|
174
174
|
}
|
|
175
175
|
},
|
|
@@ -182,7 +182,7 @@
|
|
|
182
182
|
"Row": "2",
|
|
183
183
|
"Width": "3",
|
|
184
184
|
"Section": "Basic_Geometry",
|
|
185
|
-
"Group": "
|
|
185
|
+
"Group": "BasicGeoGrp",
|
|
186
186
|
"Units": "5"
|
|
187
187
|
}
|
|
188
188
|
},
|
|
@@ -477,6 +477,12 @@
|
|
|
477
477
|
"Name": "Rectangles",
|
|
478
478
|
"DataAddress": "Rectangle",
|
|
479
479
|
"DataType": "Array"
|
|
480
|
+
},
|
|
481
|
+
"Cylinders": {
|
|
482
|
+
"Hash": "Cylinders",
|
|
483
|
+
"Name": "Cylinders",
|
|
484
|
+
"DataAddress": "Cylinders",
|
|
485
|
+
"DataType": "Array"
|
|
480
486
|
}
|
|
481
487
|
},
|
|
482
488
|
"Sections": [
|
|
@@ -535,7 +541,7 @@
|
|
|
535
541
|
"Groups": [
|
|
536
542
|
{
|
|
537
543
|
"Name": "Rectangle",
|
|
538
|
-
"Hash": "
|
|
544
|
+
"Hash": "BasicGeoGrp",
|
|
539
545
|
"Rows": [],
|
|
540
546
|
"RecordSetSolvers": []
|
|
541
547
|
},
|
|
@@ -549,12 +555,12 @@
|
|
|
549
555
|
},
|
|
550
556
|
{
|
|
551
557
|
"Name": "Box Collection",
|
|
552
|
-
"Hash": "
|
|
558
|
+
"Hash": "BoxCollSec",
|
|
553
559
|
"Solvers": [],
|
|
554
560
|
"Groups": [
|
|
555
561
|
{
|
|
556
562
|
"Name": "Boxes",
|
|
557
|
-
"Hash": "
|
|
563
|
+
"Hash": "BoxCollGrp",
|
|
558
564
|
"Rows": [],
|
|
559
565
|
"RecordSetSolvers": [
|
|
560
566
|
"BoxFloorspace = BoxWidth * BoxDepth",
|
|
@@ -832,6 +838,26 @@
|
|
|
832
838
|
]
|
|
833
839
|
}
|
|
834
840
|
]
|
|
841
|
+
},
|
|
842
|
+
{
|
|
843
|
+
"Name": "Cylinders",
|
|
844
|
+
"Hash": "Cylinders",
|
|
845
|
+
"Solvers": [],
|
|
846
|
+
"Groups": [
|
|
847
|
+
{
|
|
848
|
+
"Name": "Cylinders",
|
|
849
|
+
"Hash": "Cylinders",
|
|
850
|
+
"Rows": [],
|
|
851
|
+
"RecordSetSolvers": [
|
|
852
|
+
"Circumference = 2 * PI() * Radius",
|
|
853
|
+
"Area = (2 * PI() * Radius * Height) + (2 * PI() * Radius ^2)"
|
|
854
|
+
],
|
|
855
|
+
"ShowTitle": false,
|
|
856
|
+
"Layout": "Tabular",
|
|
857
|
+
"RecordSetAddress": "Cylinders",
|
|
858
|
+
"RecordManifest": "Cylinders"
|
|
859
|
+
}
|
|
860
|
+
]
|
|
835
861
|
}
|
|
836
862
|
],
|
|
837
863
|
"ReferenceManifests": {
|
|
@@ -846,8 +872,8 @@
|
|
|
846
872
|
"PictForm": {
|
|
847
873
|
"Row": "1",
|
|
848
874
|
"Width": "1",
|
|
849
|
-
"Section": "
|
|
850
|
-
"Group": "
|
|
875
|
+
"Section": "BoxCollSec",
|
|
876
|
+
"Group": "BoxCollGrp"
|
|
851
877
|
},
|
|
852
878
|
"IsTabular": true
|
|
853
879
|
},
|
|
@@ -859,8 +885,8 @@
|
|
|
859
885
|
"PictForm": {
|
|
860
886
|
"Row": "1",
|
|
861
887
|
"Width": "1",
|
|
862
|
-
"Section": "
|
|
863
|
-
"Group": "
|
|
888
|
+
"Section": "BoxCollSec",
|
|
889
|
+
"Group": "BoxCollGrp"
|
|
864
890
|
},
|
|
865
891
|
"IsTabular": true
|
|
866
892
|
},
|
|
@@ -872,8 +898,8 @@
|
|
|
872
898
|
"PictForm": {
|
|
873
899
|
"Row": "1",
|
|
874
900
|
"Width": "1",
|
|
875
|
-
"Section": "
|
|
876
|
-
"Group": "
|
|
901
|
+
"Section": "BoxCollSec",
|
|
902
|
+
"Group": "BoxCollGrp"
|
|
877
903
|
},
|
|
878
904
|
"IsTabular": true
|
|
879
905
|
},
|
|
@@ -885,8 +911,8 @@
|
|
|
885
911
|
"PictForm": {
|
|
886
912
|
"Row": "1",
|
|
887
913
|
"Width": "1",
|
|
888
|
-
"Section": "
|
|
889
|
-
"Group": "
|
|
914
|
+
"Section": "BoxCollSec",
|
|
915
|
+
"Group": "BoxCollGrp"
|
|
890
916
|
},
|
|
891
917
|
"IsTabular": true
|
|
892
918
|
},
|
|
@@ -898,8 +924,8 @@
|
|
|
898
924
|
"PictForm": {
|
|
899
925
|
"Row": "1",
|
|
900
926
|
"Width": "1",
|
|
901
|
-
"Section": "
|
|
902
|
-
"Group": "
|
|
927
|
+
"Section": "BoxCollSec",
|
|
928
|
+
"Group": "BoxCollGrp"
|
|
903
929
|
},
|
|
904
930
|
"IsTabular": true
|
|
905
931
|
},
|
|
@@ -911,8 +937,8 @@
|
|
|
911
937
|
"PictForm": {
|
|
912
938
|
"Row": "1",
|
|
913
939
|
"Width": "1",
|
|
914
|
-
"Section": "
|
|
915
|
-
"Group": "
|
|
940
|
+
"Section": "BoxCollSec",
|
|
941
|
+
"Group": "BoxCollGrp"
|
|
916
942
|
},
|
|
917
943
|
"IsTabular": true
|
|
918
944
|
}
|
|
@@ -978,6 +1004,78 @@
|
|
|
978
1004
|
},
|
|
979
1005
|
"Sections": [],
|
|
980
1006
|
"ReferenceManifests": {}
|
|
1007
|
+
},
|
|
1008
|
+
"Cylinders": {
|
|
1009
|
+
"Scope": "Cylinders",
|
|
1010
|
+
"Descriptors": {
|
|
1011
|
+
"Identifier": {
|
|
1012
|
+
"Hash": "Identifier",
|
|
1013
|
+
"Name": "Identifier",
|
|
1014
|
+
"DataAddress": "Identifier",
|
|
1015
|
+
"DataType": "String",
|
|
1016
|
+
"PictForm": {
|
|
1017
|
+
"Row": "1",
|
|
1018
|
+
"Width": "1",
|
|
1019
|
+
"Section": "Cylinders",
|
|
1020
|
+
"Group": "Cylinders"
|
|
1021
|
+
},
|
|
1022
|
+
"IsTabular": true
|
|
1023
|
+
},
|
|
1024
|
+
"Radius": {
|
|
1025
|
+
"Hash": "Radius",
|
|
1026
|
+
"Name": "Radius",
|
|
1027
|
+
"DataAddress": "Radius",
|
|
1028
|
+
"DataType": "PreciseNumber",
|
|
1029
|
+
"PictForm": {
|
|
1030
|
+
"Row": "1",
|
|
1031
|
+
"Width": "1",
|
|
1032
|
+
"Section": "Cylinders",
|
|
1033
|
+
"Group": "Cylinders"
|
|
1034
|
+
},
|
|
1035
|
+
"IsTabular": true
|
|
1036
|
+
},
|
|
1037
|
+
"Height": {
|
|
1038
|
+
"Hash": "Height",
|
|
1039
|
+
"Name": "Height",
|
|
1040
|
+
"DataAddress": "Height",
|
|
1041
|
+
"DataType": "PreciseNumber",
|
|
1042
|
+
"PictForm": {
|
|
1043
|
+
"Row": "1",
|
|
1044
|
+
"Width": "1",
|
|
1045
|
+
"Section": "Cylinders",
|
|
1046
|
+
"Group": "Cylinders"
|
|
1047
|
+
},
|
|
1048
|
+
"IsTabular": true
|
|
1049
|
+
},
|
|
1050
|
+
"Circumference": {
|
|
1051
|
+
"Hash": "Circumference",
|
|
1052
|
+
"Name": "Circumference",
|
|
1053
|
+
"DataAddress": "Circumference",
|
|
1054
|
+
"DataType": "PreciseNumber",
|
|
1055
|
+
"PictForm": {
|
|
1056
|
+
"Row": "1",
|
|
1057
|
+
"Width": "1",
|
|
1058
|
+
"Section": "Cylinders",
|
|
1059
|
+
"Group": "Cylinders"
|
|
1060
|
+
},
|
|
1061
|
+
"IsTabular": true
|
|
1062
|
+
},
|
|
1063
|
+
"Area": {
|
|
1064
|
+
"Hash": "Area",
|
|
1065
|
+
"Name": "Area",
|
|
1066
|
+
"DataAddress": "Area",
|
|
1067
|
+
"DataType": "PreciseNumber",
|
|
1068
|
+
"PictForm": {
|
|
1069
|
+
"Row": "1",
|
|
1070
|
+
"Width": "1",
|
|
1071
|
+
"Section": "Cylinders",
|
|
1072
|
+
"Group": "Cylinders"
|
|
1073
|
+
},
|
|
1074
|
+
"IsTabular": true
|
|
1075
|
+
}
|
|
1076
|
+
},
|
|
1077
|
+
"Sections": [],
|
|
1078
|
+
"ReferenceManifests": {}
|
|
981
1079
|
}
|
|
982
1080
|
}
|
|
983
1081
|
}
|
|
@@ -117,7 +117,7 @@
|
|
|
117
117
|
"Row": "1",
|
|
118
118
|
"Width": "6",
|
|
119
119
|
"Section": "Basic_Geometry",
|
|
120
|
-
"Group": "
|
|
120
|
+
"Group": "BasicGeoGrp"
|
|
121
121
|
},
|
|
122
122
|
"Default": "7.25"
|
|
123
123
|
},
|
|
@@ -130,7 +130,7 @@
|
|
|
130
130
|
"Row": "1",
|
|
131
131
|
"Width": "6",
|
|
132
132
|
"Section": "Basic_Geometry",
|
|
133
|
-
"Group": "
|
|
133
|
+
"Group": "BasicGeoGrp"
|
|
134
134
|
},
|
|
135
135
|
"Default": "10.3571"
|
|
136
136
|
},
|
|
@@ -143,7 +143,7 @@
|
|
|
143
143
|
"Row": "2",
|
|
144
144
|
"Width": "3",
|
|
145
145
|
"Section": "Basic_Geometry",
|
|
146
|
-
"Group": "
|
|
146
|
+
"Group": "BasicGeoGrp",
|
|
147
147
|
"Units": "unrounded"
|
|
148
148
|
}
|
|
149
149
|
},
|
|
@@ -156,7 +156,7 @@
|
|
|
156
156
|
"Row": "2",
|
|
157
157
|
"Width": "3",
|
|
158
158
|
"Section": "Basic_Geometry",
|
|
159
|
-
"Group": "
|
|
159
|
+
"Group": "BasicGeoGrp",
|
|
160
160
|
"Units": "default"
|
|
161
161
|
}
|
|
162
162
|
},
|
|
@@ -169,7 +169,7 @@
|
|
|
169
169
|
"Row": "2",
|
|
170
170
|
"Width": "3",
|
|
171
171
|
"Section": "Basic_Geometry",
|
|
172
|
-
"Group": "
|
|
172
|
+
"Group": "BasicGeoGrp",
|
|
173
173
|
"Units": "3"
|
|
174
174
|
}
|
|
175
175
|
},
|
|
@@ -182,7 +182,7 @@
|
|
|
182
182
|
"Row": "2",
|
|
183
183
|
"Width": "3",
|
|
184
184
|
"Section": "Basic_Geometry",
|
|
185
|
-
"Group": "
|
|
185
|
+
"Group": "BasicGeoGrp",
|
|
186
186
|
"Units": "5"
|
|
187
187
|
}
|
|
188
188
|
},
|
|
@@ -477,6 +477,12 @@
|
|
|
477
477
|
"Name": "Rectangles",
|
|
478
478
|
"DataAddress": "Rectangle",
|
|
479
479
|
"DataType": "Array"
|
|
480
|
+
},
|
|
481
|
+
"Cylinders": {
|
|
482
|
+
"Hash": "Cylinders",
|
|
483
|
+
"Name": "Cylinders",
|
|
484
|
+
"DataAddress": "Cylinders",
|
|
485
|
+
"DataType": "Array"
|
|
480
486
|
}
|
|
481
487
|
},
|
|
482
488
|
"Sections": [
|
|
@@ -535,7 +541,7 @@
|
|
|
535
541
|
"Groups": [
|
|
536
542
|
{
|
|
537
543
|
"Name": "Rectangle",
|
|
538
|
-
"Hash": "
|
|
544
|
+
"Hash": "BasicGeoGrp",
|
|
539
545
|
"Rows": [],
|
|
540
546
|
"RecordSetSolvers": []
|
|
541
547
|
},
|
|
@@ -549,12 +555,12 @@
|
|
|
549
555
|
},
|
|
550
556
|
{
|
|
551
557
|
"Name": "Box Collection",
|
|
552
|
-
"Hash": "
|
|
558
|
+
"Hash": "BoxCollSec",
|
|
553
559
|
"Solvers": [],
|
|
554
560
|
"Groups": [
|
|
555
561
|
{
|
|
556
562
|
"Name": "Boxes",
|
|
557
|
-
"Hash": "
|
|
563
|
+
"Hash": "BoxCollGrp",
|
|
558
564
|
"Rows": [],
|
|
559
565
|
"RecordSetSolvers": [
|
|
560
566
|
"BoxFloorspace = BoxWidth * BoxDepth",
|
|
@@ -832,6 +838,26 @@
|
|
|
832
838
|
]
|
|
833
839
|
}
|
|
834
840
|
]
|
|
841
|
+
},
|
|
842
|
+
{
|
|
843
|
+
"Name": "Cylinders",
|
|
844
|
+
"Hash": "Cylinders",
|
|
845
|
+
"Solvers": [],
|
|
846
|
+
"Groups": [
|
|
847
|
+
{
|
|
848
|
+
"Name": "Cylinders",
|
|
849
|
+
"Hash": "Cylinders",
|
|
850
|
+
"Rows": [],
|
|
851
|
+
"RecordSetSolvers": [
|
|
852
|
+
"Circumference = 2 * PI() * Radius",
|
|
853
|
+
"Area = (2 * PI() * Radius * Height) + (2 * PI() * Radius ^2)"
|
|
854
|
+
],
|
|
855
|
+
"ShowTitle": false,
|
|
856
|
+
"Layout": "Tabular",
|
|
857
|
+
"RecordSetAddress": "Cylinders",
|
|
858
|
+
"RecordManifest": "Cylinders"
|
|
859
|
+
}
|
|
860
|
+
]
|
|
835
861
|
}
|
|
836
862
|
],
|
|
837
863
|
"ReferenceManifests": {
|
|
@@ -846,8 +872,8 @@
|
|
|
846
872
|
"PictForm": {
|
|
847
873
|
"Row": "1",
|
|
848
874
|
"Width": "1",
|
|
849
|
-
"Section": "
|
|
850
|
-
"Group": "
|
|
875
|
+
"Section": "BoxCollSec",
|
|
876
|
+
"Group": "BoxCollGrp"
|
|
851
877
|
},
|
|
852
878
|
"IsTabular": true
|
|
853
879
|
},
|
|
@@ -859,8 +885,8 @@
|
|
|
859
885
|
"PictForm": {
|
|
860
886
|
"Row": "1",
|
|
861
887
|
"Width": "1",
|
|
862
|
-
"Section": "
|
|
863
|
-
"Group": "
|
|
888
|
+
"Section": "BoxCollSec",
|
|
889
|
+
"Group": "BoxCollGrp"
|
|
864
890
|
},
|
|
865
891
|
"IsTabular": true
|
|
866
892
|
},
|
|
@@ -872,8 +898,8 @@
|
|
|
872
898
|
"PictForm": {
|
|
873
899
|
"Row": "1",
|
|
874
900
|
"Width": "1",
|
|
875
|
-
"Section": "
|
|
876
|
-
"Group": "
|
|
901
|
+
"Section": "BoxCollSec",
|
|
902
|
+
"Group": "BoxCollGrp"
|
|
877
903
|
},
|
|
878
904
|
"IsTabular": true
|
|
879
905
|
},
|
|
@@ -885,8 +911,8 @@
|
|
|
885
911
|
"PictForm": {
|
|
886
912
|
"Row": "1",
|
|
887
913
|
"Width": "1",
|
|
888
|
-
"Section": "
|
|
889
|
-
"Group": "
|
|
914
|
+
"Section": "BoxCollSec",
|
|
915
|
+
"Group": "BoxCollGrp"
|
|
890
916
|
},
|
|
891
917
|
"IsTabular": true
|
|
892
918
|
},
|
|
@@ -898,8 +924,8 @@
|
|
|
898
924
|
"PictForm": {
|
|
899
925
|
"Row": "1",
|
|
900
926
|
"Width": "1",
|
|
901
|
-
"Section": "
|
|
902
|
-
"Group": "
|
|
927
|
+
"Section": "BoxCollSec",
|
|
928
|
+
"Group": "BoxCollGrp"
|
|
903
929
|
},
|
|
904
930
|
"IsTabular": true
|
|
905
931
|
},
|
|
@@ -911,8 +937,8 @@
|
|
|
911
937
|
"PictForm": {
|
|
912
938
|
"Row": "1",
|
|
913
939
|
"Width": "1",
|
|
914
|
-
"Section": "
|
|
915
|
-
"Group": "
|
|
940
|
+
"Section": "BoxCollSec",
|
|
941
|
+
"Group": "BoxCollGrp"
|
|
916
942
|
},
|
|
917
943
|
"IsTabular": true
|
|
918
944
|
}
|
|
@@ -978,6 +1004,78 @@
|
|
|
978
1004
|
},
|
|
979
1005
|
"Sections": [],
|
|
980
1006
|
"ReferenceManifests": {}
|
|
1007
|
+
},
|
|
1008
|
+
"Cylinders": {
|
|
1009
|
+
"Scope": "Cylinders",
|
|
1010
|
+
"Descriptors": {
|
|
1011
|
+
"Identifier": {
|
|
1012
|
+
"Hash": "Identifier",
|
|
1013
|
+
"Name": "Identifier",
|
|
1014
|
+
"DataAddress": "Identifier",
|
|
1015
|
+
"DataType": "String",
|
|
1016
|
+
"PictForm": {
|
|
1017
|
+
"Row": "1",
|
|
1018
|
+
"Width": "1",
|
|
1019
|
+
"Section": "Cylinders",
|
|
1020
|
+
"Group": "Cylinders"
|
|
1021
|
+
},
|
|
1022
|
+
"IsTabular": true
|
|
1023
|
+
},
|
|
1024
|
+
"Radius": {
|
|
1025
|
+
"Hash": "Radius",
|
|
1026
|
+
"Name": "Radius",
|
|
1027
|
+
"DataAddress": "Radius",
|
|
1028
|
+
"DataType": "PreciseNumber",
|
|
1029
|
+
"PictForm": {
|
|
1030
|
+
"Row": "1",
|
|
1031
|
+
"Width": "1",
|
|
1032
|
+
"Section": "Cylinders",
|
|
1033
|
+
"Group": "Cylinders"
|
|
1034
|
+
},
|
|
1035
|
+
"IsTabular": true
|
|
1036
|
+
},
|
|
1037
|
+
"Height": {
|
|
1038
|
+
"Hash": "Height",
|
|
1039
|
+
"Name": "Height",
|
|
1040
|
+
"DataAddress": "Height",
|
|
1041
|
+
"DataType": "PreciseNumber",
|
|
1042
|
+
"PictForm": {
|
|
1043
|
+
"Row": "1",
|
|
1044
|
+
"Width": "1",
|
|
1045
|
+
"Section": "Cylinders",
|
|
1046
|
+
"Group": "Cylinders"
|
|
1047
|
+
},
|
|
1048
|
+
"IsTabular": true
|
|
1049
|
+
},
|
|
1050
|
+
"Circumference": {
|
|
1051
|
+
"Hash": "Circumference",
|
|
1052
|
+
"Name": "Circumference",
|
|
1053
|
+
"DataAddress": "Circumference",
|
|
1054
|
+
"DataType": "PreciseNumber",
|
|
1055
|
+
"PictForm": {
|
|
1056
|
+
"Row": "1",
|
|
1057
|
+
"Width": "1",
|
|
1058
|
+
"Section": "Cylinders",
|
|
1059
|
+
"Group": "Cylinders"
|
|
1060
|
+
},
|
|
1061
|
+
"IsTabular": true
|
|
1062
|
+
},
|
|
1063
|
+
"Area": {
|
|
1064
|
+
"Hash": "Area",
|
|
1065
|
+
"Name": "Area",
|
|
1066
|
+
"DataAddress": "Area",
|
|
1067
|
+
"DataType": "PreciseNumber",
|
|
1068
|
+
"PictForm": {
|
|
1069
|
+
"Row": "1",
|
|
1070
|
+
"Width": "1",
|
|
1071
|
+
"Section": "Cylinders",
|
|
1072
|
+
"Group": "Cylinders"
|
|
1073
|
+
},
|
|
1074
|
+
"IsTabular": true
|
|
1075
|
+
}
|
|
1076
|
+
},
|
|
1077
|
+
"Sections": [],
|
|
1078
|
+
"ReferenceManifests": {}
|
|
981
1079
|
}
|
|
982
1080
|
}
|
|
983
1081
|
}
|
|
@@ -341,7 +341,12 @@ module.exports.default_configuration.pict_configuration = {
|
|
|
341
341
|
Hash: "RecipeCalories",
|
|
342
342
|
DataType: "PreciseNumber",
|
|
343
343
|
Default: "1",
|
|
344
|
-
PictForm: {
|
|
344
|
+
PictForm: {
|
|
345
|
+
Section: "Recipe",
|
|
346
|
+
Group: "Statistics",
|
|
347
|
+
Row: 1,
|
|
348
|
+
Width: 1
|
|
349
|
+
},
|
|
345
350
|
},
|
|
346
351
|
|
|
347
352
|
"Recipe.CounterWidth": {
|
|
@@ -390,6 +395,8 @@ module.exports.default_configuration.pict_configuration = {
|
|
|
390
395
|
Hash: "TotalFruitCalories",
|
|
391
396
|
DataType: "PreciseNumber",
|
|
392
397
|
PictForm: {
|
|
398
|
+
DecimalPrecision: 3,
|
|
399
|
+
RoundingMethod: 0,
|
|
393
400
|
Section: "Recipe",
|
|
394
401
|
Group: "FruitStatistics",
|
|
395
402
|
Row: 1,
|
package/package.json
CHANGED
|
@@ -10,6 +10,7 @@ const libInputEntityBundleRequest = require('./inputs/Pict-Provider-Input-Entity
|
|
|
10
10
|
const libInputAutofillTriggerGroup = require('./inputs/Pict-Provider-Input-AutofillTriggerGroup.js');
|
|
11
11
|
const libInputMarkdown = require('./inputs/Pict-Provider-Input-Markdown.js');
|
|
12
12
|
const libInputHTML = require('./inputs/Pict-Provider-Input-HTML.js');
|
|
13
|
+
const libInputPreciseNumber = require('./inputs/Pict-Provider-Input-PreciseNumber.js');
|
|
13
14
|
|
|
14
15
|
const _DefaultProviderConfiguration = (
|
|
15
16
|
{
|
|
@@ -88,6 +89,10 @@ class PictDynamicSolver extends libPictProvider
|
|
|
88
89
|
{
|
|
89
90
|
this.pict.addProvider('Pict-Input-HTML', libInputHTML.default_configuration, libInputHTML);
|
|
90
91
|
}
|
|
92
|
+
if (!this.pict.providers['Pict-Input-PreciseNumber'])
|
|
93
|
+
{
|
|
94
|
+
this.pict.addProvider('Pict-Input-PreciseNumber', libInputPreciseNumber.default_configuration, libInputPreciseNumber);
|
|
95
|
+
}
|
|
91
96
|
}
|
|
92
97
|
|
|
93
98
|
/**
|
|
@@ -30,6 +30,30 @@ class PictInputExtensionProvider extends libPictProvider
|
|
|
30
30
|
super(pFable, tmpOptions, pServiceHash);
|
|
31
31
|
}
|
|
32
32
|
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* Generates the HTML ID for a custom input element based on the given input HTML ID.
|
|
36
|
+
*
|
|
37
|
+
* @param {string} pInputHTMLID - The input HTML ID.
|
|
38
|
+
* @returns {string} The generated input HTML ID.
|
|
39
|
+
*/
|
|
40
|
+
getInputHTMLID(pInputHTMLID)
|
|
41
|
+
{
|
|
42
|
+
return `#INPUT-FOR-${pInputHTMLID}`;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* Generates the HTML ID for a hidden input element in a tabular data provider.
|
|
47
|
+
*
|
|
48
|
+
* @param {string} pInputHTMLID - The HTML ID of the input element.
|
|
49
|
+
* @param {number} pRowIndex - The index of the row in the tabular data.
|
|
50
|
+
* @returns {string} - The generated HTML ID for the hidden input element.
|
|
51
|
+
*/
|
|
52
|
+
getTabularHiddenInputHTMLID(pInputHTMLID, pRowIndex)
|
|
53
|
+
{
|
|
54
|
+
return `#TABULAR-DATA-${pInputHTMLID}-${pRowIndex}`;
|
|
55
|
+
}
|
|
56
|
+
|
|
33
57
|
/**
|
|
34
58
|
* An input has been initialized (rendered into the DOM)
|
|
35
59
|
*
|
|
@@ -171,9 +171,13 @@ Glug glug glug Oo... -->
|
|
|
171
171
|
},
|
|
172
172
|
{
|
|
173
173
|
"HashPostfix": "-Template-Input-DataType-PreciseNumber",
|
|
174
|
+
"DefaultInputExtensions": ["Pict-Input-PreciseNumber"],
|
|
174
175
|
"Template": /*HTML*/`
|
|
175
176
|
<!-- DataType PreciseNumber {~D:Record.Hash~} {~D:Record.DataType~} -->
|
|
176
|
-
<span>{~D:Record.Name~}:</span>
|
|
177
|
+
<span>{~D:Record.Name~}:</span>
|
|
178
|
+
<input type="hidden" {~D:Record.Macro.InputFullProperties~} value="">
|
|
179
|
+
<input type="Number" id="INPUT-FOR-{~D:Record.Macro.RawHTMLID~}" {~D:Record.Macro.InputChangeHandler~} value="">
|
|
180
|
+
|
|
177
181
|
`
|
|
178
182
|
},
|
|
179
183
|
{
|
|
@@ -276,12 +280,14 @@ Glug glug glug Oo... -->
|
|
|
276
280
|
},
|
|
277
281
|
{
|
|
278
282
|
"HashPostfix": "-VerticalTemplate-Input-DataType-PreciseNumber",
|
|
283
|
+
"DefaultInputExtensions": ["Pict-Input-PreciseNumber"],
|
|
279
284
|
"Template": /*HTML*/`
|
|
280
285
|
<!-- DataType PreciseNumber {~D:Record.Hash~} {~D:Record.DataType~} -->
|
|
281
286
|
<div class="pict-form-vertical-input">
|
|
287
|
+
<input type="hidden" {~D:Record.Macro.InputFullProperties~} value="">
|
|
282
288
|
<span>{~D:Record.Name~}:</span>
|
|
283
289
|
<span>{~D:Record.PictForm.ExtraDescription~}</span>
|
|
284
|
-
<input type="Number" {~D:Record.Macro.
|
|
290
|
+
<input type="Number" id="INPUT-FOR-{~D:Record.Macro.RawHTMLID~}" {~D:Record.Macro.InputChangeHandler~} value="">
|
|
285
291
|
</div>
|
|
286
292
|
`
|
|
287
293
|
},
|
|
@@ -653,6 +659,22 @@ Glug glug glug Oo... -->
|
|
|
653
659
|
"Template": /*HTML*/` value="">
|
|
654
660
|
`
|
|
655
661
|
},
|
|
662
|
+
|
|
663
|
+
{
|
|
664
|
+
"HashPostfix": "-TabularTemplate-Begin-Input-DataType-PreciseNumber",
|
|
665
|
+
"DefaultInputExtensions": ["Pict-Input-PreciseNumber"],
|
|
666
|
+
"Template": /*HTML*/`
|
|
667
|
+
<!-- DataType PreciseNumber {~D:Record.Hash~} {~D:Record.DataType~} -->
|
|
668
|
+
<input type="hidden" id="TABULAR-DATA-{~D:Record.Macro.RawHTMLID~}-{~D:Context[2].Key~}" {~D:Record.Macro.HTMLName~} {~D:Record.Macro.InformaryTabular~} value="">
|
|
669
|
+
<input type="Number" id="INPUT-FOR-{~D:Record.Macro.RawHTMLID~}-{~D:Context[2].Key~}" {~D:Record.Macro.HTMLName~} {~D:Record.Macro.InformaryTabular~}
|
|
670
|
+
`
|
|
671
|
+
},
|
|
672
|
+
{
|
|
673
|
+
"HashPostfix": "-TabularTemplate-End-Input-DataType-PreciseNumber",
|
|
674
|
+
"Template": /*HTML*/` value="">
|
|
675
|
+
`
|
|
676
|
+
},
|
|
677
|
+
|
|
656
678
|
{
|
|
657
679
|
"HashPostfix": "-TabularTemplate-Begin-Input-InputType-TextArea",
|
|
658
680
|
"Template": /*HTML*/`
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
const libPictSectionInputExtension = require('../Pict-Provider-InputExtension.js');
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* CustomInputHandler class.
|
|
5
|
+
*
|
|
6
|
+
* @class
|
|
7
|
+
* @extends libPictSectionInputExtension
|
|
8
|
+
* @memberof providers.inputs
|
|
9
|
+
*/
|
|
10
|
+
class CustomInputHandler extends libPictSectionInputExtension
|
|
11
|
+
{
|
|
12
|
+
constructor(pFable, pOptions, pServiceHash)
|
|
13
|
+
{
|
|
14
|
+
super(pFable, pOptions, pServiceHash);
|
|
15
|
+
|
|
16
|
+
/** @type {import('pict')} */
|
|
17
|
+
this.pict;
|
|
18
|
+
/** @type {import('pict')} */
|
|
19
|
+
this.fable;
|
|
20
|
+
/** @type {any} */
|
|
21
|
+
this.log;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
roundValue(pInput, pValue)
|
|
25
|
+
{
|
|
26
|
+
let tmpValue = pValue;
|
|
27
|
+
|
|
28
|
+
if ('DecimalPrecision' in pInput.PictForm)
|
|
29
|
+
{
|
|
30
|
+
let tmpRoundingMethod = this.fable.Math.roundHalfUp;
|
|
31
|
+
if ('RoundingMethod' in pInput.PictForm)
|
|
32
|
+
{
|
|
33
|
+
try
|
|
34
|
+
{
|
|
35
|
+
tmpRoundingMethod = parseInt(pInput.PictForm.RoundingMethod);
|
|
36
|
+
}
|
|
37
|
+
catch(pError)
|
|
38
|
+
{
|
|
39
|
+
this.log.error(`Error parsing rounding method onDataMarshalToForm for input ${pInput.Hash}`, pError);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
tmpValue = this.fable.Math.roundPrecise(tmpValue, pInput.PictForm.DecimalPrecision, tmpRoundingMethod);
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
return tmpValue;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* Marshals data to the form for the given input.
|
|
50
|
+
*
|
|
51
|
+
* @param {Object} pView - The view object.
|
|
52
|
+
* @param {Object} pGroup - The group object.
|
|
53
|
+
* @param {Object} pRow - The row object.
|
|
54
|
+
* @param {Object} pInput - The input object.
|
|
55
|
+
* @param {any} pValue - The value to be marshaled.
|
|
56
|
+
* @param {string} pHTMLSelector - The HTML selector.
|
|
57
|
+
* @returns {boolean} - Returns true if the value is successfully marshaled to the form, otherwise false.
|
|
58
|
+
*/
|
|
59
|
+
onDataMarshalToForm(pView, pGroup, pRow, pInput, pValue, pHTMLSelector)
|
|
60
|
+
{
|
|
61
|
+
this.pict.ContentAssignment.assignContent(this.getInputHTMLID(pInput.Macro.RawHTMLID), this.roundValue(pInput, pValue));
|
|
62
|
+
return super.onDataMarshalToForm(pView, pGroup, pRow, pInput, pValue, pHTMLSelector);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
/**
|
|
66
|
+
* Marshals data to a form in tabular format.
|
|
67
|
+
*
|
|
68
|
+
* @param {Object} pView - The view object.
|
|
69
|
+
* @param {Object} pGroup - The group object.
|
|
70
|
+
* @param {Object} pInput - The input object.
|
|
71
|
+
* @param {any} pValue - The value parameter.
|
|
72
|
+
* @param {string} pHTMLSelector - The HTML selector parameter.
|
|
73
|
+
* @param {number} pRowIndex - The row index parameter.
|
|
74
|
+
* @returns {any} - The result of the data marshaling.
|
|
75
|
+
*/
|
|
76
|
+
onDataMarshalToFormTabular(pView, pGroup, pInput, pValue, pHTMLSelector, pRowIndex)
|
|
77
|
+
{
|
|
78
|
+
this.pict.ContentAssignment.assignContent(this.getTabularInputHTMLID(pInput.Macro.RawHTMLID, pRowIndex), this.roundValue(pInput, pValue));
|
|
79
|
+
return super.onDataMarshalToFormTabular(pView, pGroup, pInput, pValue, pHTMLSelector, pRowIndex);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
module.exports = CustomInputHandler;
|
|
@@ -36,6 +36,9 @@ class ManifestFactory extends libFableServiceProviderBase
|
|
|
36
36
|
}
|
|
37
37
|
this.referenceManifestFactories = {};
|
|
38
38
|
|
|
39
|
+
this.sectionHashLookup = {};
|
|
40
|
+
this.groupHashLookup = {};
|
|
41
|
+
|
|
39
42
|
let tmpReferenceManifestKeys = Object.keys(this.manifest.ReferenceManifests);
|
|
40
43
|
for (let i = 0; i < tmpReferenceManifestKeys.length; i++)
|
|
41
44
|
{
|
|
@@ -47,7 +50,7 @@ class ManifestFactory extends libFableServiceProviderBase
|
|
|
47
50
|
|
|
48
51
|
this._SanitizeObjectKeyRegex = /[^a-zA-Z0-9_]/gi;
|
|
49
52
|
this._SanitizeObjectKeyReplacement = '_';
|
|
50
|
-
this._SanitizeObjectKeyInvalid = 'INVALID';
|
|
53
|
+
this._SanitizeObjectKeyInvalid = 'INVALID';487
|
|
51
54
|
}
|
|
52
55
|
|
|
53
56
|
/**
|
|
@@ -482,9 +485,32 @@ class ManifestFactory extends libFableServiceProviderBase
|
|
|
482
485
|
pManifestFactory = pManifestFactory.referenceManifestFactories[tmpRecord.SubManifest];
|
|
483
486
|
}
|
|
484
487
|
|
|
488
|
+
if ('Decimal Precision' in tmpRecord)
|
|
489
|
+
{
|
|
490
|
+
// See if the Decimal Precision is set
|
|
491
|
+
if (tmpRecord['Decimal Precision'] && (tmpRecord['Decimal Precision'] != ''))
|
|
492
|
+
{
|
|
493
|
+
try
|
|
494
|
+
{
|
|
495
|
+
tmpDescriptor.PictForm.DecimalPrecision = parseInt(tmpRecord['Decimal Precision']);
|
|
496
|
+
}
|
|
497
|
+
catch (pError)
|
|
498
|
+
{
|
|
499
|
+
this.log.error(`Failed to parse Decimal Precision for ${tmpRecord['Input Hash']}: ${pError}`);
|
|
500
|
+
}
|
|
501
|
+
}
|
|
502
|
+
}
|
|
503
|
+
|
|
485
504
|
// Setup the Section and the Group
|
|
486
505
|
const tmpSectionName = tmpRecord['Section Name']?.trim?.();
|
|
487
|
-
|
|
506
|
+
|
|
507
|
+
let tmpSectionHash = this.sanitizeObjectKey(tmpSectionName || 'Default_Section');
|
|
508
|
+
// Note: The section name part is laissez-faire about whether it needs to be there or not. The Hash is required on each column if we want to customize.
|
|
509
|
+
if (tmpRecord['Section Hash'] && tmpRecord['Section Hash'] != '')
|
|
510
|
+
{
|
|
511
|
+
tmpSectionHash = this.sanitizeObjectKey(tmpRecord['Section Hash']);
|
|
512
|
+
}
|
|
513
|
+
|
|
488
514
|
tmpDescriptor.PictForm.Section = tmpSectionHash;
|
|
489
515
|
const tmpSection = tmpCoreManifestFactory.getManifestSection(tmpSectionHash);
|
|
490
516
|
if (tmpSectionName)
|
|
@@ -493,7 +519,13 @@ class ManifestFactory extends libFableServiceProviderBase
|
|
|
493
519
|
}
|
|
494
520
|
|
|
495
521
|
const tmpGroupName = tmpRecord['Group Name']?.trim?.();
|
|
496
|
-
|
|
522
|
+
let tmpGroupHash = this.sanitizeObjectKey(tmpGroupName || 'Default_Group');
|
|
523
|
+
// Note: The group name part is laissez-faire about whether it needs to be there or not. The Hash is required on each column if we want to customize.
|
|
524
|
+
if (tmpRecord['Group Hash'] && tmpRecord['Group Hash'] != '')
|
|
525
|
+
{
|
|
526
|
+
tmpGroupHash = this.sanitizeObjectKey(tmpRecord['Group Hash']);
|
|
527
|
+
}
|
|
528
|
+
|
|
497
529
|
tmpDescriptor.PictForm.Group = tmpGroupHash;
|
|
498
530
|
const tmpGroup = tmpCoreManifestFactory.getManifestGroup(tmpSection, tmpGroupHash);
|
|
499
531
|
if (tmpGroupName)
|