diff --git a/code-gen-library/AnalyzeSales/XPLAT-CONFIG.json b/code-gen-library/AnalyzeSales/XPLAT-CONFIG.json new file mode 100644 index 000000000..40727ac66 --- /dev/null +++ b/code-gen-library/AnalyzeSales/XPLAT-CONFIG.json @@ -0,0 +1,7 @@ +[{ + "platform": "Kotlin", + "location": "jsonFile" +},{ + "platform": "Swift", + "location": "jsonFile" +}] \ No newline at end of file diff --git a/code-gen-library/AthletesData/XPLAT-CONFIG.json b/code-gen-library/AthletesData/XPLAT-CONFIG.json new file mode 100644 index 000000000..40727ac66 --- /dev/null +++ b/code-gen-library/AthletesData/XPLAT-CONFIG.json @@ -0,0 +1,7 @@ +[{ + "platform": "Kotlin", + "location": "jsonFile" +},{ + "platform": "Swift", + "location": "jsonFile" +}] \ No newline at end of file diff --git a/code-gen-library/AthletesDataExtended/XPLAT-CONFIG.json b/code-gen-library/AthletesDataExtended/XPLAT-CONFIG.json new file mode 100644 index 000000000..40727ac66 --- /dev/null +++ b/code-gen-library/AthletesDataExtended/XPLAT-CONFIG.json @@ -0,0 +1,7 @@ +[{ + "platform": "Kotlin", + "location": "jsonFile" +},{ + "platform": "Swift", + "location": "jsonFile" +}] \ No newline at end of file diff --git a/code-gen-library/CategoryChartCustomSelectionPointerDown/Android.kt b/code-gen-library/CategoryChartCustomSelectionPointerDown/Android.kt new file mode 100644 index 000000000..a8132376c --- /dev/null +++ b/code-gen-library/CategoryChartCustomSelectionPointerDown/Android.kt @@ -0,0 +1,39 @@ +//begin imports +import com.infragistics.mobile.controls.IgaDomainChartSeriesPointerEventArgs; +import com.infragistics.mobile.controls.IgaCategoryChart; +//end imports + +public class CategoryChartCustomSelectionPointerDown { + //begin eventHandler + public fun categoryChartCustomSelectionPointerDown(sender: Any?, args: IgaDomainChartSeriesPointerEventArgs?) { + + var chart = CodeGenHelper.getDescription("content")!!; + var selectableData = chart.dataSource as SelectableData?; + var oldItem = args!!.item as SelectableDataItem?; + + if (oldItem === null) return; + + var newItem: SelectableDataItem = SelectableDataItem() + newItem.category = oldItem!!.category; + newItem.dataValue = oldItem!!.dataValue; + newItem.selectedValue = oldItem!!.selectedValue; + + var selectedIndex: Int = -1; + for (i in 0..< selectableData!!.size) { + if (oldItem!!.category === selectableData!![i].category) { + selectedIndex = i; + break; + } + } + + if (oldItem.selectedValue == oldItem.dataValue) { + newItem.selectedValue = Double.NaN; + } + else { + newItem.selectedValue = newItem.dataValue; + } + + chart.notifySetItem(selectableData, selectedIndex, oldItem, newItem); + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/CategoryChartCustomSelectionPointerDown/iOS.swift b/code-gen-library/CategoryChartCustomSelectionPointerDown/iOS.swift new file mode 100644 index 000000000..7c5bf50c7 --- /dev/null +++ b/code-gen-library/CategoryChartCustomSelectionPointerDown/iOS.swift @@ -0,0 +1,33 @@ +//begin imports +//end imports + +public class CategoryChartCustomSelectionPointerDown { + //begin eventHandler + public func categoryChartCustomSelectionPointerDown(sender: Any?, args: IgsDomainChartSeriesPointerEventArgs?) { + + guard let chart = CodeGenHelper.getDescription(IgsCategoryChart.self, "content") else { return } + let selectableData = chart.dataSource as? SelectableData + guard let oldItem = args?.item as? SelectableDataItem else { return } + + let newItem = SelectableDataItem() + newItem.category = oldItem.category + newItem.dataValue = oldItem.dataValue + newItem.selectedValue = oldItem.selectedValue + var selectedIndex: Int = -1 + for i in 0.. String? { + if axisCurrencyFormat == nil { + axisCurrencyFormat = NumberFormatter() + axisCurrencyFormat?.numberStyle = .currency + axisCurrencyFormat?.locale = Locale(identifier: "en_US") + } + guard let args = args else { return nil } + if let number = args as? NSNumber { + return axisCurrencyFormat?.string(from: number) + } + return nil + } + //end eventHandler +} diff --git a/code-gen-library/ColorEditorToggleSeriesBrush/Android.kt b/code-gen-library/ColorEditorToggleSeriesBrush/Android.kt new file mode 100644 index 000000000..cd13c0837 --- /dev/null +++ b/code-gen-library/ColorEditorToggleSeriesBrush/Android.kt @@ -0,0 +1,27 @@ +//begin imports +import com.infragistics.mobile.controls.IgaToolCommandEventArgs; +import com.infragistics.mobile.controls.IgaDataChart; +import com.infragistics.mobile.controls.IgaSeries; +import com.infragistics.mobile.controls.IgaBrush; +//end imports + +import com.infragistics.mobile.controls.CodeGenHelper; + +public class ColorEditorToggleSeriesBrush { + //begin eventHandler + public fun colorEditorToggleSeriesBrush(sender: Any?, args: IgaToolCommandEventArgs) { + var target = CodeGenHelper.getDescription("content")!!; + var color = args.command!!.argumentsList!![0]!!.value; + + when (args.command!!.commandId!!) + { + "ToggleSeriesBrush" -> { + var series = target.series[0] as IgaSeries; + series.brush = color as IgaBrush?; + break; + } + } + + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/ColorEditorToggleSeriesBrush/iOS.swift b/code-gen-library/ColorEditorToggleSeriesBrush/iOS.swift new file mode 100644 index 000000000..89f21bc1e --- /dev/null +++ b/code-gen-library/ColorEditorToggleSeriesBrush/iOS.swift @@ -0,0 +1,20 @@ +//begin imports +//end imports + +public class ColorEditorToggleSeriesBrush { + //begin eventHandler + public func colorEditorToggleSeriesBrush(sender: Any?, args: IgsToolCommandEventArgs?) { + guard let target = CodeGenHelper.getDescription(IgsDataChart.self, "content") else { return } + guard let color = args.command?.argumentsList?[0]?.value else { return } + + switch args.command?.commandId { + case "ToggleSeriesBrush": + if let series = target.series.first as? IgsSeries { + series.brush = color as? IgsBrush + } + default: + break + } + } + //end eventHandler +} diff --git a/code-gen-library/EditorButtonReplayTransitionIn/Android.kt b/code-gen-library/EditorButtonReplayTransitionIn/Android.kt new file mode 100644 index 000000000..6e60b1794 --- /dev/null +++ b/code-gen-library/EditorButtonReplayTransitionIn/Android.kt @@ -0,0 +1,18 @@ +//begin imports +import com.infragistics.mobile.controls.IgaPropertyEditorPropertyDescriptionButtonClickEventArgs; +import com.infragistics.mobile.controls.IgaDataChart; +import com.infragistics.mobile.controls.IgaSeries; +//end imports + +import com.infragistics.mobile.controls.CodeGenHelper; + +public class EditorButtonReplayTransitionIn { + //begin eventHandler + public fun editorButtonReplayTransitionIn(sender: Any?, args: IgaPropertyEditorPropertyDescriptionButtonClickEventArgs) { + var series = CodeGenHelper.getDescription("content").series!!; + for (i in 0..< series.length) { + series[i]!!.replayTransitionIn(); + } + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/EditorButtonReplayTransitionIn/iOS.swift b/code-gen-library/EditorButtonReplayTransitionIn/iOS.swift new file mode 100644 index 000000000..b0a3c387f --- /dev/null +++ b/code-gen-library/EditorButtonReplayTransitionIn/iOS.swift @@ -0,0 +1,13 @@ +//begin imports +//end imports + +public class EditorButtonReplayTransitionIn { + //begin eventHandler + public func editorButtonReplayTransitionIn(sender: Any?, args: IgsPropertyEditorPropertyDescriptionButtonClickEventArgs?) { + guard let series = CodeGenHelper.getDescription(IgsDataChart.self, "content")?.series else { return } + for i in 0..("content"); + + if (chart is IgaDataChart) { + chart.replayTransitionIn(); + } + if (chart is IgaCategoryChart) { + chart.replayTransitionIn(); + } + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/EditorButtonReplayTransitionInDomain/iOS.swift b/code-gen-library/EditorButtonReplayTransitionInDomain/iOS.swift new file mode 100644 index 000000000..10bec5f95 --- /dev/null +++ b/code-gen-library/EditorButtonReplayTransitionInDomain/iOS.swift @@ -0,0 +1,17 @@ +//begin imports +//end imports + +public class EditorButtonReplayTransitionInDomain { + //begin eventHandler + public func editorButtonReplayTransitionInDomain(sender: Any?, args: IgsPropertyEditorPropertyDescriptionButtonClickEventArgs?) { + let chart = CodeGenHelper.getDescription(Any.self, "content") + + if let dataChart = chart as? IgsDataChart { + dataChart.replayTransitionIn() + } + if let categoryChart = chart as? IgsCategoryChart { + categoryChart.replayTransitionIn() + } + } + //end eventHandler +} diff --git a/code-gen-library/EditorChangeDataFilter/Android.kt b/code-gen-library/EditorChangeDataFilter/Android.kt new file mode 100644 index 000000000..1bc1fc628 --- /dev/null +++ b/code-gen-library/EditorChangeDataFilter/Android.kt @@ -0,0 +1,16 @@ +//begin imports +import com.infragistics.mobile.controls.IgaPropertyEditorPropertyDescriptionChangedEventArgs; +import com.infragistics.mobile.controls.IgaCategoryChart; +//end imports + +import com.infragistics.mobile.controls.CodeGenHelper; + +public class EditorChangeDataFilter { + //begin eventHandler + public fun editorChangeDataFilter(sender: Any?, args: IgaPropertyEditorPropertyDescriptionChangedEventArgs): void { + var chart = CodeGenHelper.getDescription("content")!!; + var filter = args.newValue.toString(); + chart.initialFilter = "(contains(Year," + "'" + filter + "'" + "))"; + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/EditorChangeDataFilter/iOS.swift b/code-gen-library/EditorChangeDataFilter/iOS.swift new file mode 100644 index 000000000..e855fd5c7 --- /dev/null +++ b/code-gen-library/EditorChangeDataFilter/iOS.swift @@ -0,0 +1,12 @@ +//begin imports +//end imports + +public class EditorChangeDataFilter { + //begin eventHandler + public func editorChangeDataFilter(sender: Any?, args: IgsPropertyEditorPropertyDescriptionChangedEventArgs?) { + guard let chart = CodeGenHelper.getDescription(IgsCategoryChart.self, "content") else { return } + let filter = String(describing: args.newValue) + chart.initialFilter = "(contains(Year,'" + filter + "'))" + } + //end eventHandler +} diff --git a/code-gen-library/EditorChangeReplayTransitionIn/Android.kt b/code-gen-library/EditorChangeReplayTransitionIn/Android.kt new file mode 100644 index 000000000..4353dcaf7 --- /dev/null +++ b/code-gen-library/EditorChangeReplayTransitionIn/Android.kt @@ -0,0 +1,17 @@ +//begin imports +import com.infragistics.mobile.controls.IgaPropertyEditorPropertyDescriptionChangedEventArgs; +import com.infragistics.mobile.controls.IgaDataChart; +//end imports + +import com.infragistics.mobile.controls.CodeGenHelper; + +public class EditorChangeReplayTransitionIn { + //begin eventHandler + public fun editorChangeReplayTransitionIn(sender: Any?, args: IgaPropertyEditorPropertyDescriptionChangedEventArgs?) { + var series = CodeGenHelper.getDescription("content").series!!; + for (i in 0..< series.length) { + series[i]!!.replayTransitionIn(); + } + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/EditorChangeReplayTransitionIn/iOS.swift b/code-gen-library/EditorChangeReplayTransitionIn/iOS.swift new file mode 100644 index 000000000..2a3ec2fab --- /dev/null +++ b/code-gen-library/EditorChangeReplayTransitionIn/iOS.swift @@ -0,0 +1,13 @@ +//begin imports +//end imports + +public class EditorChangeReplayTransitionIn { + //begin eventHandler + public func editorChangeReplayTransitionIn(sender: Any?, args: IgsPropertyEditorPropertyDescriptionChangedEventArgs?) { + guard let series = CodeGenHelper.getDescription(IgsDataChart.self, "content")?.series else { return } + for i in 0..("content")!!; + var groupSortsVal = args.newValue!!.toString(); + chart.groupSorts = groupSortsVal; + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/EditorChangeUpdateGroupSorts/iOS.swift b/code-gen-library/EditorChangeUpdateGroupSorts/iOS.swift new file mode 100644 index 000000000..e512f0558 --- /dev/null +++ b/code-gen-library/EditorChangeUpdateGroupSorts/iOS.swift @@ -0,0 +1,12 @@ +//begin imports +//end imports + +public class EditorChangeUpdateGroupSorts { + //begin eventHandler + public func editorChangeUpdateGroupSorts(sender: Any?, args: IgsPropertyEditorPropertyDescriptionChangedEventArgs?) { + guard let chart = CodeGenHelper.getDescription(IgsCategoryChart.self, "content") else { return } + let groupSortsVal = String(describing: args.newValue) + chart.groupSorts = groupSortsVal + } + //end eventHandler +} diff --git a/code-gen-library/EditorChangeUpdateInitialFilter/Android.kt b/code-gen-library/EditorChangeUpdateInitialFilter/Android.kt new file mode 100644 index 000000000..d2234527a --- /dev/null +++ b/code-gen-library/EditorChangeUpdateInitialFilter/Android.kt @@ -0,0 +1,16 @@ +//begin imports +import com.infragistics.mobile.controls.IgaPropertyEditorPropertyDescriptionChangedEventArgs; +import com.infragistics.mobile.controls.IgaCategoryChart; +//end imports + +import com.infragistics.mobile.controls.CodeGenHelper; + +public class EditorChangeUpdateInitialFilter { + //begin eventHandler + public fun editorChangeUpdateInitialFilter(sender: Any?, args: IgaPropertyEditorPropertyDescriptionChangedEventArgs) { + var chart = CodeGenHelper.getDescription("content")!!; + var intialFilterVal = args.newValue!!.toString(); + chart.initialFilter = intialFilterVal; + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/EditorChangeUpdateInitialFilter/iOS.swift b/code-gen-library/EditorChangeUpdateInitialFilter/iOS.swift new file mode 100644 index 000000000..6cc9e97de --- /dev/null +++ b/code-gen-library/EditorChangeUpdateInitialFilter/iOS.swift @@ -0,0 +1,12 @@ +//begin imports +//end imports + +public class EditorChangeUpdateInitialFilter { + //begin eventHandler + public func editorChangeUpdateInitialFilter(sender: Any?, args: IgsPropertyEditorPropertyDescriptionChangedEventArgs?) { + guard let chart = CodeGenHelper.getDescription(IgsCategoryChart.self, "content") else { return } + let initialFilterVal = String(describing: args.newValue) + chart.initialFilter = initialFilterVal + } + //end eventHandler +} diff --git a/code-gen-library/EditorChangeUpdateInitialGroups/Android.kt b/code-gen-library/EditorChangeUpdateInitialGroups/Android.kt new file mode 100644 index 000000000..b29c087cd --- /dev/null +++ b/code-gen-library/EditorChangeUpdateInitialGroups/Android.kt @@ -0,0 +1,15 @@ +//begin imports +import com.infragistics.mobile.controls.IgaPropertyEditorPropertyDescriptionChangedEventArgs; +import com.infragistics.mobile.controls.IgaCategoryChart; +//end imports + +import com.infragistics.mobile.controls.CodeGenHelper; + +public class EditorChangeUpdateInitialGroups { + //begin eventHandler + public fun editorChangeUpdateInitialGroups(sender: Any?, args: IgaPropertyEditorPropertyDescriptionChangedEventArgs) { + var chart = CodeGenHelper.getDescription("content")!!; + chart.initialGroups = args.newValue!!.toString(); + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/EditorChangeUpdateInitialGroups/iOS.swift b/code-gen-library/EditorChangeUpdateInitialGroups/iOS.swift new file mode 100644 index 000000000..9758f3874 --- /dev/null +++ b/code-gen-library/EditorChangeUpdateInitialGroups/iOS.swift @@ -0,0 +1,11 @@ +//begin imports +//end imports + +public class EditorChangeUpdateInitialGroups { + //begin eventHandler + public func editorChangeUpdateInitialGroups(sender: Any?, args: IgsPropertyEditorPropertyDescriptionChangedEventArgs?) { + guard let chart = CodeGenHelper.getDescription(IgsCategoryChart.self, "content") else { return } + chart.initialGroups = String(describing: args.newValue) + } + //end eventHandler +} diff --git a/code-gen-library/EditorChangeUpdateInitialSummaries/Android.kt b/code-gen-library/EditorChangeUpdateInitialSummaries/Android.kt new file mode 100644 index 000000000..9aeb1cf91 --- /dev/null +++ b/code-gen-library/EditorChangeUpdateInitialSummaries/Android.kt @@ -0,0 +1,16 @@ +//begin imports +import com.infragistics.mobile.controls.IgaPropertyEditorPropertyDescriptionChangedEventArgs; +import com.infragistics.mobile.controls.IgaCategoryChart; +//end imports + +import com.infragistics.mobile.controls.CodeGenHelper; + +public class EditorChangeUpdateInitialSummaries { + //begin eventHandler + public fun editorChangeUpdateInitialSummaries(sender: Any?, args: IgaPropertyEditorPropertyDescriptionChangedEventArgs) { + var chart = CodeGenHelper.getDescription("content")!!; + var intialSummaryVal = args.newValue!!.toString(); + chart.initialSummaries = intialSummaryVal; + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/EditorChangeUpdateInitialSummaries/iOS.swift b/code-gen-library/EditorChangeUpdateInitialSummaries/iOS.swift new file mode 100644 index 000000000..3b76dceab --- /dev/null +++ b/code-gen-library/EditorChangeUpdateInitialSummaries/iOS.swift @@ -0,0 +1,12 @@ +//begin imports +//end imports + +public class EditorChangeUpdateInitialSummaries { + //begin eventHandler + public func editorChangeUpdateInitialSummaries(sender: Any?, args: IgsPropertyEditorPropertyDescriptionChangedEventArgs?) { + guard let chart = CodeGenHelper.getDescription(IgsCategoryChart.self, "content") else { return } + let initialSummaryVal = String(describing: args.newValue) + chart.initialSummaries = initialSummaryVal + } + //end eventHandler +} diff --git a/code-gen-library/EditorChangeUpdateMarkerType/Android.kt b/code-gen-library/EditorChangeUpdateMarkerType/Android.kt new file mode 100644 index 000000000..131e29ae4 --- /dev/null +++ b/code-gen-library/EditorChangeUpdateMarkerType/Android.kt @@ -0,0 +1,19 @@ +//begin imports +import com.infragistics.mobile.controls.IgaPropertyEditorPropertyDescription; +import com.infragistics.mobile.controls.IgaPropertyEditorPropertyDescriptionChangedEventArgs; +import com.infragistics.mobile.controls.IgaCategoryChart; +//end imports + +import com.infragistics.mobile.controls.CodeGenHelper + +public class EditorChangeUpdateMarkerType { + //begin eventHandler + public fun editorChangeUpdateMarkerType(sender: Any?, args: IgaPropertyEditorPropertyDescriptionChangedEventArgs?) { + var item = sender as IgaPropertyEditorPropertyDescription; + var chart = CodeGenHelper.getDescription("content")!!; + + var markerVal = item.primitiveValue!!; + chart.markerTypes = markerVal; + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/EditorChangeUpdateMarkerType/iOS.swift b/code-gen-library/EditorChangeUpdateMarkerType/iOS.swift new file mode 100644 index 000000000..d91763a4f --- /dev/null +++ b/code-gen-library/EditorChangeUpdateMarkerType/iOS.swift @@ -0,0 +1,14 @@ +//begin imports +//end imports + +public class EditorChangeUpdateMarkerType { + //begin eventHandler + public func editorChangeUpdateMarkerType(sender: Any?, args: IgsPropertyEditorPropertyDescriptionChangedEventArgs?) { + guard let item = sender as? IgsPropertyEditorPropertyDescription else { return } + guard let chart = CodeGenHelper.getDescription(IgsCategoryChart.self, "content") else { return } + + let markerVal = item.primitiveValue + chart.markerTypes = markerVal + } + //end eventHandler +} diff --git a/code-gen-library/EditorChangeUpdateValueLines/Android.kt b/code-gen-library/EditorChangeUpdateValueLines/Android.kt new file mode 100644 index 000000000..35d875448 --- /dev/null +++ b/code-gen-library/EditorChangeUpdateValueLines/Android.kt @@ -0,0 +1,19 @@ +//begin imports +import com.infragistics.mobile.controls.IgaPropertyEditorPropertyDescriptionChangedEventArgs; +import com.infragistics.mobile.controls.IgaPropertyEditorPropertyDescription; +import com.infragistics.mobile.controls.IgaCategoryChart; +//end imports + +import com.infragistics.mobile.controls.CodeGenHelper; + +public class EditorChangeUpdateValueLines { + //begin eventHandler + public fun editorChangeUpdateValueLines(sender: Any?, args: IgaPropertyEditorPropertyDescriptionChangedEventArgs?) { + var item = sender as IgaPropertyEditorPropertyDescription; + var chart = CodeGenHelper.getDescription("content")!!; + + var valueLineType = item.primitiveValue!!; + chart.valueLines = valueLineType; + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/EditorChangeUpdateValueLines/iOS.swift b/code-gen-library/EditorChangeUpdateValueLines/iOS.swift new file mode 100644 index 000000000..096b9cce5 --- /dev/null +++ b/code-gen-library/EditorChangeUpdateValueLines/iOS.swift @@ -0,0 +1,14 @@ +//begin imports +//end imports + +public class EditorChangeUpdateValueLines { + //begin eventHandler + public func editorChangeUpdateValueLines(sender: Any?, args: IgsPropertyEditorPropertyDescriptionChangedEventArgs?) { + guard let item = sender as? IgsPropertyEditorPropertyDescription else { return } + guard let chart = CodeGenHelper.getDescription(IgsCategoryChart.self, "content") else { return } + + let valueLineType = item.primitiveValue + chart.valueLines = valueLineType + } + //end eventHandler +} diff --git a/code-gen-library/EditorChangeUpdateYAxisMaximumValue/Android.kt b/code-gen-library/EditorChangeUpdateYAxisMaximumValue/Android.kt new file mode 100644 index 000000000..aceba6bd4 --- /dev/null +++ b/code-gen-library/EditorChangeUpdateYAxisMaximumValue/Android.kt @@ -0,0 +1,16 @@ +//begin imports +import { IgcPropertyEditorPropertyDescriptionChangedEventArgs, IgcPropertyEditorPropertyDescriptionComponent } from 'igniteui-webcomponents-layouts'; +import { IgcCategoryChartComponent, MarkerType, MarkerType_$type } from 'igniteui-webcomponents-charts'; +import { EnumUtil } from 'igniteui-webcomponents-core'; +//end imports + +import com.infragistics.mobile.controls.CodeGenHelper; + +public class EditorChangeUpdateYAxisMaximumValue { + //begin eventHandler + public editorChangeUpdateYAxisMaximumValue(sender: Any?, args: IgaPropertyEditorPropertyDescriptionChangedEventArgs) { + var yAxisMaximumVal = args.newValue!! as String; + CodeGenHelper.getDescription("content").yAxisMaximumValue = parseInt(yAxisMaximumVal); + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/EditorChangeUpdateYAxisMaximumValue/iOS.swift b/code-gen-library/EditorChangeUpdateYAxisMaximumValue/iOS.swift new file mode 100644 index 000000000..95b12a67a --- /dev/null +++ b/code-gen-library/EditorChangeUpdateYAxisMaximumValue/iOS.swift @@ -0,0 +1,13 @@ +//begin imports +//end imports + +public class EditorChangeUpdateYAxisMaximumValue { + //begin eventHandler + public func editorChangeUpdateYAxisMaximumValue(sender: Any?, args: IgsPropertyEditorPropertyDescriptionChangedEventArgs?) { + guard let yAxisMaximumVal = args.newValue as? String, + let yAxisMax = Int(yAxisMaximumVal) else { return } + + CodeGenHelper.getDescription(IgsCategoryChart.self, "content")?.yAxisMaximumValue = yAxisMax + } + //end eventHandler +} diff --git a/code-gen-library/EditorChangeUpdateYAxisMinimumValue/Android.kt b/code-gen-library/EditorChangeUpdateYAxisMinimumValue/Android.kt new file mode 100644 index 000000000..802455ca3 --- /dev/null +++ b/code-gen-library/EditorChangeUpdateYAxisMinimumValue/Android.kt @@ -0,0 +1,16 @@ +//begin imports +import com.infragistics.mobile.controls.IgaPropertyEditorPropertyDescriptionChangedEventArgs; +import com.infragistics.mobile.controls.IgaCategoryChart; +//end imports + +import com.infragistics.mobile.controls.CodeGenHelper; +import java.lang.Double + +public class EditorChangeUpdateYAxisMinimumValue { + //begin eventHandler + public fun editorChangeUpdateYAxisMinimumValue(sender: Any?, args: IgaPropertyEditorPropertyDescriptionChangedEventArgs) { + var yAxisMinimumVal = args.newValue!! as String;; + CodeGenHelper.getDescription("content")!!.yAxisMinimumValue = yAxisMinimumVal.toDoubleOrNull() ?: Double.NaN; + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/EditorChangeUpdateYAxisMinimumValue/iOS.swift b/code-gen-library/EditorChangeUpdateYAxisMinimumValue/iOS.swift new file mode 100644 index 000000000..63a874c27 --- /dev/null +++ b/code-gen-library/EditorChangeUpdateYAxisMinimumValue/iOS.swift @@ -0,0 +1,11 @@ +//begin imports +//end imports + +public class EditorChangeUpdateYAxisMinimumValue { + //begin eventHandler + public func editorChangeUpdateYAxisMinimumValue(sender: Any?, args: IgsPropertyEditorPropertyDescriptionChangedEventArgs?) { + guard let yAxisMinimumVal = args.newValue as? String else { return } + CodeGenHelper.getDescription(IgsCategoryChart.self, "content")?.yAxisMinimumValue = Double(yAxisMinimumVal) ?? Double.nan + } + //end eventHandler +} diff --git a/code-gen-library/EmployeesData/XPLAT-CONFIG.json b/code-gen-library/EmployeesData/XPLAT-CONFIG.json new file mode 100644 index 000000000..40727ac66 --- /dev/null +++ b/code-gen-library/EmployeesData/XPLAT-CONFIG.json @@ -0,0 +1,7 @@ +[{ + "platform": "Kotlin", + "location": "jsonFile" +},{ + "platform": "Swift", + "location": "jsonFile" +}] \ No newline at end of file diff --git a/code-gen-library/FinancialDataAll/XPLAT-CONFIG.json b/code-gen-library/FinancialDataAll/XPLAT-CONFIG.json new file mode 100644 index 000000000..40727ac66 --- /dev/null +++ b/code-gen-library/FinancialDataAll/XPLAT-CONFIG.json @@ -0,0 +1,7 @@ +[{ + "platform": "Kotlin", + "location": "jsonFile" +},{ + "platform": "Swift", + "location": "jsonFile" +}] \ No newline at end of file diff --git a/code-gen-library/FinancialDataCurrencies/XPLAT-CONFIG.json b/code-gen-library/FinancialDataCurrencies/XPLAT-CONFIG.json new file mode 100644 index 000000000..40727ac66 --- /dev/null +++ b/code-gen-library/FinancialDataCurrencies/XPLAT-CONFIG.json @@ -0,0 +1,7 @@ +[{ + "platform": "Kotlin", + "location": "jsonFile" +},{ + "platform": "Swift", + "location": "jsonFile" +}] \ No newline at end of file diff --git a/code-gen-library/FinancialDataFuel/XPLAT-CONFIG.json b/code-gen-library/FinancialDataFuel/XPLAT-CONFIG.json new file mode 100644 index 000000000..40727ac66 --- /dev/null +++ b/code-gen-library/FinancialDataFuel/XPLAT-CONFIG.json @@ -0,0 +1,7 @@ +[{ + "platform": "Kotlin", + "location": "jsonFile" +},{ + "platform": "Swift", + "location": "jsonFile" +}] \ No newline at end of file diff --git a/code-gen-library/FinancialDataMetals/XPLAT-CONFIG.json b/code-gen-library/FinancialDataMetals/XPLAT-CONFIG.json new file mode 100644 index 000000000..40727ac66 --- /dev/null +++ b/code-gen-library/FinancialDataMetals/XPLAT-CONFIG.json @@ -0,0 +1,7 @@ +[{ + "platform": "Kotlin", + "location": "jsonFile" +},{ + "platform": "Swift", + "location": "jsonFile" +}] \ No newline at end of file diff --git a/code-gen-library/FinancialDataService/Android.kt b/code-gen-library/FinancialDataService/Android.kt new file mode 100644 index 000000000..71aaed87a --- /dev/null +++ b/code-gen-library/FinancialDataService/Android.kt @@ -0,0 +1,108 @@ +//begin imports +//end imports + +//begin async data +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.withContext +import org.json.JSONArray +import java.net.URL + +class FinancialDataService { + + companion object { + suspend fun fetchData(): List = withContext(Dispatchers.IO) { + val url = "https://static.infragistics.com/xplatform/data/stocks/FinancialData1000.json" + val jsonText = URL(url).readText() + val jsonArray = JSONArray(jsonText) + return@withContext convertData(jsonArray) + } + + private fun convertData(jsonArray: JSONArray): List { + val stockItems = mutableListOf() + + for (i in 0 until jsonArray.length()) { + val json = jsonArray.getJSONObject(i) + val item = FinancialDataDetails().apply { + category = json.optString("Category") + type = json.optString("Type") + contract = json.optString("Contract") + settlement = json.optString("Settlement") + region = json.optString("Region") + country = json.optString("Country") + risk = json.optString("Risk") + sector = json.optString("Sector") + issuer = json.optString("Issuer") + maturity = json.optString("Maturity") + indGroup = json.optString("IndGroup") + indSector = json.optString("IndSector") + indCategory = json.optString("IndCategory") + cpn = json.optString("Cpn") + spread = json.optDouble("Spread") + open = json.optDouble("Open") + price = json.optDouble("Price") + buy = json.optDouble("Buy") + sell = json.optDouble("Sell") + change = json.optDouble("Change") + changePercent = json.optDouble("ChangePercent") + high = json.optDouble("High") + low = json.optDouble("Low") + yearlyHigh = json.optDouble("YearlyHigh") + yearlyLow = json.optDouble("YearlyLow") + yearlyStart = json.optDouble("YearlyStart") + yearlyChange = json.optDouble("YearlyChange") + zvSpread = json.optDouble("ZV_SPREAD") + krd3Yr = json.optDouble("KRD_3YR") + krd5Yr = json.optDouble("KRD_5YR") + krd1Yr = json.optDouble("KRD_1YR") + id = json.optInt("ID") + currency = json.optString("Currency") + security = json.optString("Security") + volume = json.optDouble("Volume") + } + stockItems.add(item) + } + + return stockItems + } + } +} + + +class FinancialDataDetails { + var category: String? = null + var type: String? = null + var spread: Double? = null + var open: Double? = null + var price: Double? = null + var buy: Double? = null + var sell: Double? = null + var change: Double? = null + var changePercent: Double? = null + var volume: Double? = null + var high: Double? = null + var low: Double? = null + var yearlyHigh: Double? = null + var yearlyLow: Double? = null + var yearlyStart: Double? = null + var yearlyChange: Double? = null + var settlement: String? = null + var contract: String? = null + var region: String? = null + var country: String? = null + var risk: String? = null + var sector: String? = null + var currency: String? = null + var security: String? = null + var issuer: String? = null + var maturity: String? = null + var indGroup: String? = null + var indSector: String? = null + var indCategory: String? = null + var cpn: String? = null + var krd3Yr: Double? = null + var zvSpread: Double? = null + var krd5Yr: Double? = null + var krd1Yr: Double? = null + var id: Int? = null +} +//end async data \ No newline at end of file diff --git a/code-gen-library/FinancialDataService/WPF.cs b/code-gen-library/FinancialDataService/Desktop.cs similarity index 100% rename from code-gen-library/FinancialDataService/WPF.cs rename to code-gen-library/FinancialDataService/Desktop.cs diff --git a/code-gen-library/FinancialDataService/iOS.swift b/code-gen-library/FinancialDataService/iOS.swift new file mode 100644 index 000000000..eeb30bc37 --- /dev/null +++ b/code-gen-library/FinancialDataService/iOS.swift @@ -0,0 +1,106 @@ +//begin imports +//end imports + +//begin async data +import Foundation + +public class FinancialDataService { + public static func fetchData(completion: @escaping (ArrayList) -> Void) { + let urlString = "https://static.infragistics.com/xplatform/data/stocks/FinancialData1000.json" + guard let url = URL(string: urlString) else { + completion([]) + return + } + + let task = URLSession.shared.dataTask(with: url) { data, _, error in + guard let data = data, error == nil, + let jsonArray = try? JSONSerialization.jsonObject(with: data) as? [[String: Any]] else { + completion([]) + return + } + + let stockItems = jsonArray.map { json -> FinancialDataDetails in + let item = FinancialDataDetails() + item.category = json["Category"] as? String + item.type = json["Type"] as? String + item.contract = json["Contract"] as? String + item.settlement = json["Settlement"] as? String + item.region = json["Region"] as? String + item.country = json["Country"] as? String + item.risk = json["Risk"] as? String + item.sector = json["Sector"] as? String + item.issuer = json["Issuer"] as? String + item.maturity = json["Maturity"] as? String + item.indGroup = json["IndGroup"] as? String + item.indSector = json["IndSector"] as? String + item.indCategory = json["IndCategory"] as? String + item.cpn = json["Cpn"] as? String + item.spread = json["Spread"] as? Double + item.open = json["Open"] as? Double + item.price = json["Price"] as? Double + item.buy = json["Buy"] as? Double + item.sell = json["Sell"] as? Double + item.change = json["Change"] as? Double + item.changePercent = json["ChangePercent"] as? Double + item.high = json["High"] as? Double + item.low = json["Low"] as? Double + item.yearlyHigh = json["YearlyHigh"] as? Double + item.yearlyLow = json["YearlyLow"] as? Double + item.yearlyStart = json["YearlyStart"] as? Double + item.yearlyChange = json["YearlyChange"] as? Double + item.zvSpread = json["ZV_SPREAD"] as? Double + item.krd3Yr = json["KRD_3YR"] as? Double + item.krd5Yr = json["KRD_5YR"] as? Double + item.krd1Yr = json["KRD_1YR"] as? Double + item.id = json["ID"] as? Int + item.currency = json["Currency"] as? String + item.security = json["Security"] as? String + item.volume = json["Volume"] as? Double + return item + } + + completion(ArrayList(array: stockItems)) + } + + task.resume() + } +} + +public class FinancialDataDetails: ISampleDataItem { + public var category: String? = nil + public var type: String? = nil + public var spread: Double? = nil + public var open: Double? = nil + public var price: Double? = nil + public var buy: Double? = nil + public var sell: Double? = nil + public var change: Double? = nil + public var changePercent: Double? = nil + public var volume: Double? = nil + public var high: Double? = nil + public var low: Double? = nil + public var yearlyHigh: Double? = nil + public var yearlyLow: Double? = nil + public var yearlyStart: Double? = nil + public var yearlyChange: Double? = nil + public var settlement: String? = nil + public var contract: String? = nil + public var region: String? = nil + public var country: String? = nil + public var risk: String? = nil + public var sector: String? = nil + public var currency: String? = nil + public var security: String? = nil + public var issuer: String? = nil + public var maturity: String? = nil + public var indGroup: String? = nil + public var indSector: String? = nil + public var indCategory: String? = nil + public var cpn: String? = nil + public var krd3Yr: Double? = nil + public var zvSpread: Double? = nil + public var krd5Yr: Double? = nil + public var krd1Yr: Double? = nil + public var id: Int? = nil +} +//end async data diff --git a/code-gen-library/FormatDateLabelAsDate/Android.kt b/code-gen-library/FormatDateLabelAsDate/Android.kt new file mode 100644 index 000000000..f36ffaea6 --- /dev/null +++ b/code-gen-library/FormatDateLabelAsDate/Android.kt @@ -0,0 +1,78 @@ +//begin imports +import java.util.* +//end imports + +class FormatDateLabelAsDate { + + //begin eventHandler + //Kotlin: Any?___String? + fun formatDateLabelAsDate(sender: Any?, item: Any?): String? { + val calendar: Calendar = when (item) { + is Calendar -> item + + is Date -> { + Calendar.getInstance().apply { time = item } + } + + is Map<*, *> -> { + val dateValue = item["Date"] + if (dateValue is Date) { + Calendar.getInstance().apply { time = dateValue } + } + else if (dateValue is Calendar) { + dateValue as Calendar + } else { + return item.toString() + } + } + + is Dictionary<*, *> -> { + val dateValue = item["Date"] + if (dateValue is Date) { + Calendar.getInstance().apply { time = dateValue } + } + else if (dateValue is Calendar) { + dateValue as Calendar + } else { + return item.toString() + } + } + + is Double -> { + try { + val ticks = item + var millis = (ticks / 10000.0).toLong(); + Calendar.getInstance().apply { timeInMillis = millis } + } catch (e: Exception) { + return item.toString() + } + } + + else -> { + try { + val clss = item!!.javaClass; + val dateProp = clss.methods.firstOrNull { it.name == "getDate" } + dateProp?.isAccessible = true + val value = dateProp?.invoke(item) + if (value is Date) { + Calendar.getInstance().apply { time = value } + } else if (value is Calendar) { + value as Calendar + } else { + return item.toString() + } + } catch (e: Exception) { + return item.toString() + } + } + } + + return String.format( + "%04d-%02d-%02d", + calendar.get(Calendar.YEAR), + calendar.get(Calendar.MONTH) + 1, + calendar.get(Calendar.DAY_OF_MONTH) + ) + } + //end eventHandler +} diff --git a/code-gen-library/FormatDateLabelAsDate/WPF.cs b/code-gen-library/FormatDateLabelAsDate/WPF.cs index 06b7c1c57..235c3d0b4 100644 --- a/code-gen-library/FormatDateLabelAsDate/WPF.cs +++ b/code-gen-library/FormatDateLabelAsDate/WPF.cs @@ -1,4 +1,5 @@ //begin imports +using System; using System.Collections; //end imports @@ -20,7 +21,19 @@ public string FormatDateLabelAsDate(object sender, object item) } else { - d = (DateTime)item.GetType().GetProperty("Date").GetValue(item); + if (item is double) + { + if (((double)item) >= long.MinValue && ((double)item) <= long.MaxValue) + { + double db = (double)item; + long ticks = (long)db; + d = new DateTime(ticks); + } + else + return item.ToString(); + } + else + d = (DateTime)item.GetType().GetProperty("Date").GetValue(item); } return d.ToString("yyyy-MM-dd"); diff --git a/code-gen-library/FormatDateLabelAsDate/Web.ts b/code-gen-library/FormatDateLabelAsDate/Web.ts new file mode 100644 index 000000000..e5fcfe8e7 --- /dev/null +++ b/code-gen-library/FormatDateLabelAsDate/Web.ts @@ -0,0 +1,40 @@ +//begin imports + +//end imports + +export class FormatDateLabelAsDate +{ + //begin eventHandler + public formatDateLabelAsDate(item: any): string + { + + let d: Date; + + if (item instanceof Date) { + d = item; + } else if (typeof item === 'object' && item !== null && 'Date' in item) { + d = new Date(item['Date']); + } else { + if (typeof item === 'number') { + if (item >= Number.MIN_SAFE_INTEGER && item <= Number.MAX_SAFE_INTEGER) { + d = new Date(item); + } else { + return item.toString(); + } + } else if (typeof item === 'object' && item !== null) { + const dateProp = item.constructor?.prototype?.Date || item['Date']; + d = new Date(dateProp); + } else { + throw new Error("Unsupported item type"); + } + } + + const year = d.getFullYear(); + const month = String(d.getMonth() + 1).padStart(2, '0'); // Months are 0-based + const day = String(d.getDate()).padStart(2, '0'); + + return `${year}-${month}-${day}`; + + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/FormatDateLabelAsDate/WindowsForms.cs b/code-gen-library/FormatDateLabelAsDate/WindowsForms.cs new file mode 100644 index 000000000..c4ab3f573 --- /dev/null +++ b/code-gen-library/FormatDateLabelAsDate/WindowsForms.cs @@ -0,0 +1,42 @@ +//begin imports +using System; +using System.Collections; +using Infragistics.Win.DataVisualization; +//end imports + +public class FormatDateLabelAsDate +{ + //begin eventHandler + //WindowsForms: Infragistics.Win.DataVisualization.AxisFormatLabelHandler + public string FormatDateLabelAsDate(AxisLabelInfo info) + { + DateTime d; + if (info.HasDate) + { + d = (DateTime)info.DateValue; + } + else if (info.HasItem && info.Item is IDictionary) + { + d = (DateTime)((IDictionary)info.Item)["Date"]; + } + else + { + if (info.Value is double) + { + if (((double)info.Value) >= long.MinValue && ((double)info.Value) <= long.MaxValue) + { + double db = (double)info.Value; + long ticks = (long)db; + d = new DateTime(ticks); + } + else + return info.Value.ToString(); + } + else + d = (DateTime)info.Item.GetType().GetProperty("Date").GetValue(info.Item); + + } + return d.ToString("yyyy-MM-dd"); + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/FormatDateLabelAsDate/iOS.swift b/code-gen-library/FormatDateLabelAsDate/iOS.swift new file mode 100644 index 000000000..ff62b1ae3 --- /dev/null +++ b/code-gen-library/FormatDateLabelAsDate/iOS.swift @@ -0,0 +1,65 @@ +//begin imports +//end imports + +class FormatDateLabelAsDate { + + //begin eventHandler + //Swift: Any?___String? + func formatDateLabelAsDate(sender: Any?, args: Any?) -> String? { + var date: Date = Date(); + + switch args { + case let d as Date: + date = d + + case let map as [String: Any]: + if let dateValue = map["Date"] { + if let d = dateValue as? Date { + date = d + } else { + date = Date() // Fallback + } + } else { + date = Date() // Fallback + } + + case let dict as NSDictionary: + if let dateValue = dict["Date"] { + if let d = dateValue as? Date { + date = d + } else { + date = Date() // Fallback + } + } else { + date = Date() // Fallback + } + + case let ticks as Double: + let timeIntervalSince1970 = (ticks / 10_000_000.0) - 62_135_596_800.0 + date = Date(timeIntervalSince1970: timeIntervalSince1970) + + default: + // Attempt to find a "date" property using Mirror + if let args = args { + let mirror = Mirror(reflecting: args) + if let dateProp = mirror.children.first(where: { $0.label == "date" })?.value { + if let d = dateProp as? Date { + date = d + } else { + date = Date() // Fallback + } + } else { + date = Date() // Fallback + } + } else { + date = Date() // Fallback + } + } + + return String(format: "%04d-%02d-%02d", + Foundation.Calendar.current.component(.year, from: date), + Foundation.Calendar.current.component(.month, from: date), + Foundation.Calendar.current.component(.day, from: date)); + } + //end eventHandler +} diff --git a/code-gen-library/FormatDateLabelAsDateAndTime/Android.kt b/code-gen-library/FormatDateLabelAsDateAndTime/Android.kt new file mode 100644 index 000000000..fde571ef3 --- /dev/null +++ b/code-gen-library/FormatDateLabelAsDateAndTime/Android.kt @@ -0,0 +1,80 @@ +//begin imports +import java.util.* +//end imports + +class FormatDateLabelAsDateAndTime { + + //begin eventHandler + //Kotlin: Any?___String? + fun formatDateLabelAsDateAndTime(sender: Any?, item: Any?): String? { + val calendar: Calendar = when (item) { + is Calendar -> item + + is Date -> { + Calendar.getInstance().apply { time = item } + } + + is Map<*, *> -> { + val dateValue = item["Date"] + if (dateValue is Date) { + Calendar.getInstance().apply { time = dateValue } + } + else if (dateValue is Calendar) { + dateValue as Calendar + } else { + return item.toString() + } + } + + is Dictionary<*, *> -> { + val dateValue = item["Date"] + if (dateValue is Date) { + Calendar.getInstance().apply { time = dateValue } + } + else if (dateValue is Calendar) { + dateValue as Calendar + } else { + return item.toString() + } + } + + is Double -> { + try { + val millis = item.toLong() + Calendar.getInstance().apply { timeInMillis = millis } + } catch (e: Exception) { + return item.toString() + } + } + + else -> { + try { + val clss = item!!.javaClass; + val dateProp = clss.methods.firstOrNull { it.name == "getDate" } + dateProp?.isAccessible = true + val value = dateProp?.invoke(item) + if (value is Date) { + Calendar.getInstance().apply { time = value } + } else if (value is Calendar) { + value as Calendar + } else { + return item.toString() + } + } catch (e: Exception) { + return item.toString() + } + } + } + + return String.format( + "%04d-%02d-%02d %02d:%02d:%02d", + calendar.get(Calendar.YEAR), + calendar.get(Calendar.MONTH) + 1, + calendar.get(Calendar.DAY_OF_MONTH), + calendar.get(Calendar.HOUR_OF_DAY), + calendar.get(Calendar.MINUTE), + calendar.get(Calendar.SECOND) + ) + } + //end eventHandler +} diff --git a/code-gen-library/FormatDateLabelAsDateAndTime/WPF.cs b/code-gen-library/FormatDateLabelAsDateAndTime/WPF.cs index 4b7acfcc9..25b076b7b 100644 --- a/code-gen-library/FormatDateLabelAsDateAndTime/WPF.cs +++ b/code-gen-library/FormatDateLabelAsDateAndTime/WPF.cs @@ -1,4 +1,5 @@ //begin imports +using System; using System.Collections; //end imports @@ -19,8 +20,20 @@ public string FormatDateLabelAsDateAndTime(object sender, object item) d = (DateTime)((IDictionary)item)["Date"]; } else - { - d = (DateTime)item.GetType().GetProperty("Date").GetValue(item); + { + if (item is double) + { + if (((double)item) >= long.MinValue && ((double)item) <= long.MaxValue) + { + double db = (double)item; + long ticks = (long)db; + d = new DateTime(ticks); + } + else + return item.ToString(); + } + else + d = (DateTime)item.GetType().GetProperty("Date").GetValue(item); } return d.ToString("yyyy-MM-dd HH:mm:ss"); diff --git a/code-gen-library/FormatDateLabelAsDateAndTime/Web.ts b/code-gen-library/FormatDateLabelAsDateAndTime/Web.ts new file mode 100644 index 000000000..0ed712728 --- /dev/null +++ b/code-gen-library/FormatDateLabelAsDateAndTime/Web.ts @@ -0,0 +1,44 @@ +//begin imports +using System; +using System.Collections; +//end imports + +export class FormatDateLabelAsDateAndTime +{ + //begin eventHandler + public formatDateLabelAsDateAndTime(item:any):string + { + + let d: Date; + + if (item instanceof Date) { + d = item; + } else if (typeof item === 'object' && item !== null && 'Date' in item) { + d = new Date(item['Date']); + } else { + if (typeof item === 'number') { + if (item >= Number.MIN_SAFE_INTEGER && item <= Number.MAX_SAFE_INTEGER) { + d = new Date(item); + } else { + return item.toString(); + } + } else if (typeof item === 'object' && item !== null) { + const dateProp = item.constructor?.prototype?.Date || item['Date']; + d = new Date(dateProp); + } else { + throw new Error("Unsupported item type"); + } + } + + const year = d.getFullYear(); + const month = String(d.getMonth() + 1).padStart(2, '0'); + const day = String(d.getDate()).padStart(2, '0'); + const hours = String(d.getHours()).padStart(2, '0'); + const minutes = String(d.getMinutes()).padStart(2, '0'); + const seconds = String(d.getSeconds()).padStart(2, '0'); + + return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`; + + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/FormatDateLabelAsDateAndTime/WindowsForms.cs b/code-gen-library/FormatDateLabelAsDateAndTime/WindowsForms.cs new file mode 100644 index 000000000..5cceb5d7f --- /dev/null +++ b/code-gen-library/FormatDateLabelAsDateAndTime/WindowsForms.cs @@ -0,0 +1,42 @@ +//begin imports +using System; +using System.Collections; +using Infragistics.Win.DataVisualization; +//end imports + +public class FormatDateLabelAsDateAndTime +{ + //begin eventHandler + //WindowsForms: Infragistics.Win.DataVisualization.AxisFormatLabelHandler + public string FormatDateLabelAsDateAndTime(AxisLabelInfo info) + { + DateTime d; + if (info.HasDate) + { + d = (DateTime)info.DateValue; + } + else if (info.HasItem && info.Item is IDictionary) + { + d = (DateTime)((IDictionary)info.Item)["Date"]; + } + else + { + if (info.Value is double) + { + if (((double)info.Value) >= long.MinValue && ((double)info.Value) <= long.MaxValue) + { + double db = (double)info.Value; + long ticks = (long)db; + d = new DateTime(ticks); + } + else + return info.Value.ToString(); + } + else + d = (DateTime)info.Item.GetType().GetProperty("Date").GetValue(info.Item); + + } + return d.ToString("yyyy-MM-dd HH:mm:ss"); + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/FormatDateLabelAsDateAndTime/iOS.swift b/code-gen-library/FormatDateLabelAsDateAndTime/iOS.swift new file mode 100644 index 000000000..8546621da --- /dev/null +++ b/code-gen-library/FormatDateLabelAsDateAndTime/iOS.swift @@ -0,0 +1,68 @@ +//begin imports +//end imports + +class FormatDateLabelAsDateAndTime { + + //begin eventHandler + //Swift: Any?___String? + func formatDateLabelAsDateAndTime(sender: Any?, args: Any?) -> String? { + var date: Date = Date(); + + switch args { + case let d as Date: + date = d + + case let map as [String: Any]: + if let dateValue = map["Date"] { + if let d = dateValue as? Date { + date = d + } else { + date = Date() // Fallback + } + } else { + date = Date() // Fallback + } + + case let dict as NSDictionary: + if let dateValue = dict["Date"] { + if let d = dateValue as? Date { + date = d + } else { + date = Date() // Fallback + } + } else { + date = Date() // Fallback + } + + case let ticks as Double: + let timeIntervalSince1970 = (ticks / 10_000_000.0) - 62_135_596_800.0 + date = Date(timeIntervalSince1970: timeIntervalSince1970) + + default: + // Attempt to find a "date" property using Mirror + if let args = args { + let mirror = Mirror(reflecting: args) + if let dateProp = mirror.children.first(where: { $0.label == "date" })?.value { + if let d = dateProp as? Date { + date = d + } else { + date = Date() // Fallback + } + } else { + date = Date() // Fallback + } + } else { + date = Date() // Fallback + } + } + + return String(format: "%04d-%02d-%02d %02d:%02d:%02d", + Foundation.Calendar.current.component(.year, from: date), + Foundation.Calendar.current.component(.month, from: date), + Foundation.Calendar.current.component(.day, from: date), + Foundation.Calendar.current.component(.hour, from: date), + Foundation.Calendar.current.component(.minute, from: date), + Foundation.Calendar.current.component(.second, from: date)) + } + //end eventHandler +} diff --git a/code-gen-library/FormatDateLabelAsShortDate/Android.kt b/code-gen-library/FormatDateLabelAsShortDate/Android.kt new file mode 100644 index 000000000..37e808ebe --- /dev/null +++ b/code-gen-library/FormatDateLabelAsShortDate/Android.kt @@ -0,0 +1,78 @@ +//begin imports +import java.util.* +//end imports + +class FormatDateLabelAsShortDate { + + //begin eventHandler + //Kotlin: Any?___String? + fun formatDateLabelAsShortDate(sender: Any?, item: Any?): String? { + val calendar: Calendar = when (item) { + is Calendar -> item + + is Date -> { + Calendar.getInstance().apply { time = item } + } + + is Map<*, *> -> { + val dateValue = item["Date"] + if (dateValue is Date) { + Calendar.getInstance().apply { time = dateValue } + } + else if (dateValue is Calendar) { + dateValue as Calendar + } else { + return item.toString() + } + } + + is Dictionary<*, *> -> { + val dateValue = item["Date"] + if (dateValue is Date) { + Calendar.getInstance().apply { time = dateValue } + } + else if (dateValue is Calendar) { + dateValue as Calendar + } else { + return item.toString() + } + } + + is Double -> { + try { + val ticks = item + var millis = (ticks / 10000.0).toLong(); + Calendar.getInstance().apply { timeInMillis = millis } + } catch (e: Exception) { + return item.toString() + } + } + + else -> { + try { + val clss = item!!.javaClass; + val dateProp = clss.methods.firstOrNull { it.name == "getDate" } + dateProp?.isAccessible = true + val value = dateProp?.invoke(item) + if (value is Date) { + Calendar.getInstance().apply { time = value } + } else if (value is Calendar) { + value as Calendar + } else { + return item.toString() + } + } catch (e: Exception) { + return item.toString() + } + } + } + + return String.format( + "%02d/%02d/%02d", + calendar.get(Calendar.MONTH) + 1, + calendar.get(Calendar.DAY_OF_MONTH), + calendar.get(Calendar.YEAR) % 100 + ) + } + //end eventHandler +} diff --git a/code-gen-library/FormatDateLabelAsShortDate/WPF.cs b/code-gen-library/FormatDateLabelAsShortDate/WPF.cs index 9d6466021..1284d2342 100644 --- a/code-gen-library/FormatDateLabelAsShortDate/WPF.cs +++ b/code-gen-library/FormatDateLabelAsShortDate/WPF.cs @@ -1,4 +1,5 @@ //begin imports +using System; using System.Collections; //end imports @@ -20,7 +21,19 @@ public string FormatDateLabelAsShortDate(object sender, object item) } else { - d = (DateTime)item.GetType().GetProperty("Date").GetValue(item); + if (item is double) + { + if (((double)item) >= long.MinValue && ((double)item) <= long.MaxValue) + { + double db = (double)item; + long ticks = (long)db; + d = new DateTime(ticks); + } + else + return item.ToString(); + } + else + d = (DateTime)item.GetType().GetProperty("Date").GetValue(item); } return d.ToString("MM/dd/yy"); diff --git a/code-gen-library/FormatDateLabelAsShortDate/Web.ts b/code-gen-library/FormatDateLabelAsShortDate/Web.ts new file mode 100644 index 000000000..ac81cf7f7 --- /dev/null +++ b/code-gen-library/FormatDateLabelAsShortDate/Web.ts @@ -0,0 +1,40 @@ +//begin imports +//end imports + +export class FormatDateLabelAsShortDate +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.AxisFormatLabelEventHandler + public formatDateLabelAsShortDate(item: any): string + { + + let d: Date; + + if (item instanceof Date) { + d = item; + } else if (typeof item === 'object' && item !== null && 'Date' in item) { + d = new Date(item['Date']); + } else { + if (typeof item === 'number') { + if (item >= Number.MIN_SAFE_INTEGER && item <= Number.MAX_SAFE_INTEGER) { + d = new Date(item); + } else { + return item.toString(); + } + } else if (typeof item === 'object' && item !== null) { + const dateProp = item.constructor?.prototype?.Date || item['Date']; + d = new Date(dateProp); + } else { + throw new Error("Unsupported item type"); + } + } + + const month = String(d.getMonth() + 1).padStart(2, '0'); + const day = String(d.getDate()).padStart(2, '0'); + const year = String(d.getFullYear()).slice(-2); // Get last two digits + + return `${month}/${day}/${year}`; + + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/FormatDateLabelAsShortDate/WindowsForms.cs b/code-gen-library/FormatDateLabelAsShortDate/WindowsForms.cs new file mode 100644 index 000000000..df2b45078 --- /dev/null +++ b/code-gen-library/FormatDateLabelAsShortDate/WindowsForms.cs @@ -0,0 +1,42 @@ +//begin imports +using System; +using System.Collections; +using Infragistics.Win.DataVisualization; +//end imports + +public class FormatDateLabelAsShortDate +{ + //begin eventHandler + //WindowsForms: Infragistics.Win.DataVisualization.AxisFormatLabelHandler + public string FormatDateLabelAsShortDate(AxisLabelInfo info) + { + DateTime d; + if (info.HasDate) + { + d = (DateTime)info.DateValue; + } + else if (info.HasItem && info.Item is IDictionary) + { + d = (DateTime)((IDictionary)info.Item)["Date"]; + } + else + { + if (info.Value is double) + { + if (((double)info.Value) >= long.MinValue && ((double)info.Value) <= long.MaxValue) + { + double db = (double)info.Value; + long ticks = (long)db; + d = new DateTime(ticks); + } + else + return info.Value.ToString(); + } + else + d = (DateTime)info.Item.GetType().GetProperty("Date").GetValue(info.Item); + + } + return d.ToString("MM/dd/yy"); + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/FormatDateLabelAsShortDate/iOS.swift b/code-gen-library/FormatDateLabelAsShortDate/iOS.swift new file mode 100644 index 000000000..9551760c9 --- /dev/null +++ b/code-gen-library/FormatDateLabelAsShortDate/iOS.swift @@ -0,0 +1,65 @@ +//begin imports +//end imports + +class FormatDateLabelAsShortDate { + + //begin eventHandler + //Swift: Any?___String? + func formatDateLabelAsShortDate(sender: Any?, args: Any?) -> String? { + var date: Date = Date(); + + switch args { + case let d as Date: + date = d + + case let map as [String: Any]: + if let dateValue = map["Date"] { + if let d = dateValue as? Date { + date = d + } else { + date = Date() // Fallback + } + } else { + date = Date() // Fallback + } + + case let dict as NSDictionary: + if let dateValue = dict["Date"] { + if let d = dateValue as? Date { + date = d + } else { + date = Date() // Fallback + } + } else { + date = Date() // Fallback + } + + case let ticks as Double: + let timeIntervalSince1970 = (ticks / 10_000_000.0) - 62_135_596_800.0 + date = Date(timeIntervalSince1970: timeIntervalSince1970) + + default: + // Attempt to find a "date" property using Mirror + if let args = args { + let mirror = Mirror(reflecting: args) + if let dateProp = mirror.children.first(where: { $0.label == "date" })?.value { + if let d = dateProp as? Date { + date = d + } else { + date = Date() // Fallback + } + } else { + date = Date() // Fallback + } + } else { + date = Date() // Fallback + } + } + + return String(format: "%02d/%02d/%02d", + Foundation.Calendar.current.component(.month, from: date), + Foundation.Calendar.current.component(.day, from: date), + Foundation.Calendar.current.component(.year, from: date) % 100) + } + //end eventHandler +} diff --git a/code-gen-library/FormatDateLabelAsTime/Android.kt b/code-gen-library/FormatDateLabelAsTime/Android.kt new file mode 100644 index 000000000..1e6be991a --- /dev/null +++ b/code-gen-library/FormatDateLabelAsTime/Android.kt @@ -0,0 +1,78 @@ +//begin imports +import java.util.* +//end imports + +class FormatDateLabelAsTime { + + //begin eventHandler + //Kotlin: Any?___String? + fun formatDateLabelAsTime(sender: Any?, item: Any?): String? { + val calendar: Calendar = when (item) { + is Calendar -> item + + is Date -> { + Calendar.getInstance().apply { time = item } + } + + is Map<*, *> -> { + val dateValue = item["Date"] + if (dateValue is Date) { + Calendar.getInstance().apply { time = dateValue } + } + else if (dateValue is Calendar) { + dateValue as Calendar + } else { + return item.toString() + } + } + + is Dictionary<*, *> -> { + val dateValue = item["Date"] + if (dateValue is Date) { + Calendar.getInstance().apply { time = dateValue } + } + else if (dateValue is Calendar) { + dateValue as Calendar + } else { + return item.toString() + } + } + + is Double -> { + try { + val ticks = item + var millis = (ticks / 10000.0).toLong(); + Calendar.getInstance().apply { timeInMillis = millis } + } catch (e: Exception) { + return item.toString() + } + } + + else -> { + try { + val clss = item!!.javaClass; + val dateProp = clss.methods.firstOrNull { it.name == "getDate" } + dateProp?.isAccessible = true + val value = dateProp?.invoke(item) + if (value is Date) { + Calendar.getInstance().apply { time = value } + } else if (value is Calendar) { + value as Calendar + } else { + return item.toString() + } + } catch (e: Exception) { + return item.toString() + } + } + } + + return String.format( + "%02d:%02d:%02d", + calendar.get(Calendar.HOUR_OF_DAY), + calendar.get(Calendar.MINUTE), + calendar.get(Calendar.SECOND) + ) + } + //end eventHandler +} diff --git a/code-gen-library/FormatDateLabelAsTime/WPF.cs b/code-gen-library/FormatDateLabelAsTime/WPF.cs index 8d2139c09..303e35201 100644 --- a/code-gen-library/FormatDateLabelAsTime/WPF.cs +++ b/code-gen-library/FormatDateLabelAsTime/WPF.cs @@ -1,4 +1,5 @@ //begin imports +using System; using System.Collections; //end imports @@ -20,7 +21,19 @@ public string FormatDateLabelAsTime(object sender, object item) } else { - d = (DateTime)item.GetType().GetProperty("Date").GetValue(item); + if (item is double) + { + if (((double)item) >= long.MinValue && ((double)item) <= long.MaxValue) + { + double db = (double)item; + long ticks = (long)db; + d = new DateTime(ticks); + } + else + return item.ToString(); + } + else + d = (DateTime)item.GetType().GetProperty("Date").GetValue(item); } return d.ToString("HH:mm:ss"); diff --git a/code-gen-library/FormatDateLabelAsTime/Web.ts b/code-gen-library/FormatDateLabelAsTime/Web.ts new file mode 100644 index 000000000..1ed8c6f3f --- /dev/null +++ b/code-gen-library/FormatDateLabelAsTime/Web.ts @@ -0,0 +1,35 @@ +//begin imports + +//end imports + +export class FormatDateLabelAsTime +{ + //begin eventHandler + public formatDateLabelAsTime(item: any): string + { + + let d: Date; + + if (item instanceof Date) { + d = item; + } else if (typeof item === 'object' && item !== null && 'Date' in item) { + d = new Date(item['Date']); + } else { + if (typeof item === 'number') { + if (item >= Number.MIN_SAFE_INTEGER && item <= Number.MAX_SAFE_INTEGER) { + d = new Date(item); + } else { + return item.toString(); + } + } else if (typeof item === 'object' && item !== null) { + const dateProp = item.constructor?.prototype?.Date || item['Date']; + d = new Date(dateProp); + } else { + throw new Error("Unsupported item type"); + } + } + + return d.toTimeString().split(' ')[0]; // "HH:mm:ss" + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/FormatDateLabelAsTime/WindowsForms.cs b/code-gen-library/FormatDateLabelAsTime/WindowsForms.cs new file mode 100644 index 000000000..8e7672feb --- /dev/null +++ b/code-gen-library/FormatDateLabelAsTime/WindowsForms.cs @@ -0,0 +1,42 @@ +//begin imports +using System; +using System.Collections; +using Infragistics.Win.DataVisualization; +//end imports + +public class FormatDateLabelAsTime +{ + //begin eventHandler + //WindowsForms: Infragistics.Win.DataVisualization.AxisFormatLabelHandler + public string FormatDateLabelAsTime(AxisLabelInfo info) + { + DateTime d; + if (info.HasDate) + { + d = (DateTime)info.DateValue; + } + else if (info.HasItem && info.Item is IDictionary) + { + d = (DateTime)((IDictionary)info.Item)["Date"]; + } + else + { + if (info.Value is double) + { + if (((double)info.Value) >= long.MinValue && ((double)info.Value) <= long.MaxValue) + { + double db = (double)info.Value; + long ticks = (long)db; + d = new DateTime(ticks); + } + else + return info.Value.ToString(); + } + else + d = (DateTime)info.Item.GetType().GetProperty("Date").GetValue(info.Item); + + } + return d.ToString("HH:mm:ss"); + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/FormatDateLabelAsTime/iOS.swift b/code-gen-library/FormatDateLabelAsTime/iOS.swift new file mode 100644 index 000000000..6817f6a28 --- /dev/null +++ b/code-gen-library/FormatDateLabelAsTime/iOS.swift @@ -0,0 +1,65 @@ +//begin imports +//end imports + +class FormatDateLabelAsTime { + + //begin eventHandler + //Swift: Any?___String? + func formatDateLabelAsTime(sender: Any?, args: Any?) -> String? { + var date: Date = Date(); + + switch args { + case let d as Date: + date = d + + case let map as [String: Any]: + if let dateValue = map["Date"] { + if let d = dateValue as? Date { + date = d + } else { + date = Date() // Fallback + } + } else { + date = Date() // Fallback + } + + case let dict as NSDictionary: + if let dateValue = dict["Date"] { + if let d = dateValue as? Date { + date = d + } else { + date = Date() // Fallback + } + } else { + date = Date() // Fallback + } + + case let ticks as Double: + let timeIntervalSince1970 = (ticks / 10_000_000.0) - 62_135_596_800.0 + date = Date(timeIntervalSince1970: timeIntervalSince1970) + + default: + // Attempt to find a "date" property using Mirror + if let args = args { + let mirror = Mirror(reflecting: args) + if let dateProp = mirror.children.first(where: { $0.label == "date" })?.value { + if let d = dateProp as? Date { + date = d + } else { + date = Date() // Fallback + } + } else { + date = Date() // Fallback + } + } else { + date = Date() // Fallback + } + } + + return String(format: "%02d:%02d:%02d", + Foundation.Calendar.current.component(.hour, from: date), + Foundation.Calendar.current.component(.minute, from: date), + Foundation.Calendar.current.component(.second, from: date)) + } + //end eventHandler +} diff --git a/code-gen-library/FormatLabelAsTest/Android.kt b/code-gen-library/FormatLabelAsTest/Android.kt new file mode 100644 index 000000000..bd866ba26 --- /dev/null +++ b/code-gen-library/FormatLabelAsTest/Android.kt @@ -0,0 +1,13 @@ +//begin imports +//end imports + +public class FormatLabelAsTest +{ + //begin eventHandler + //Kotlin: Any?___String? + public fun formatLabelAsTest(sender: Any?, item: Any?): String? + { + return "TEST"; + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/FormatLabelAsTest/WPF.cs b/code-gen-library/FormatLabelAsTest/WPF.cs new file mode 100644 index 000000000..12abb49a5 --- /dev/null +++ b/code-gen-library/FormatLabelAsTest/WPF.cs @@ -0,0 +1,15 @@ +//begin imports +using System; +using System.Collections; +//end imports + +public class FormatLabelAsTest +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.AxisFormatLabelEventHandler + public string FormatLabelAsTest(object sender, object item) + { + return "TEST"; + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/FormatLabelAsTest/Web.ts b/code-gen-library/FormatLabelAsTest/Web.ts new file mode 100644 index 000000000..42d8baec7 --- /dev/null +++ b/code-gen-library/FormatLabelAsTest/Web.ts @@ -0,0 +1,13 @@ +//begin imports +//end imports + +export class FormatLabelAsTest +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.AxisFormatLabelEventHandler + public formatLabelAsTest(item: any): string + { + return "TEST"; + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/FormatLabelAsTest/WindowsForms.cs b/code-gen-library/FormatLabelAsTest/WindowsForms.cs new file mode 100644 index 000000000..335988df0 --- /dev/null +++ b/code-gen-library/FormatLabelAsTest/WindowsForms.cs @@ -0,0 +1,16 @@ +//begin imports +using System; +using System.Collections; +using Infragistics.Win.DataVisualization; +//end imports + +public class FormatLabelAsTest +{ + //begin eventHandler + //WindowsForms: Infragistics.Win.DataVisualization.AxisFormatLabelHandler + public string FormatLabelAsTest(AxisLabelInfo info) + { + return "TEST"; + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/FormatLabelAsTest/iOS.swift b/code-gen-library/FormatLabelAsTest/iOS.swift new file mode 100644 index 000000000..8d925dc94 --- /dev/null +++ b/code-gen-library/FormatLabelAsTest/iOS.swift @@ -0,0 +1,11 @@ +//begin imports +//end imports + +public class FormatLabelAsTest { + //begin eventHandler + //Swift: Any?___String? + public func formatLabelAsTest(sender: Any?, args: Any?) -> String? { + return "TEST" + } + //end eventHandler +} diff --git a/code-gen-library/GaugeAlignLabelWithOffset/Android.kt b/code-gen-library/GaugeAlignLabelWithOffset/Android.kt new file mode 100644 index 000000000..02b69a29c --- /dev/null +++ b/code-gen-library/GaugeAlignLabelWithOffset/Android.kt @@ -0,0 +1,12 @@ +//begin imports +import com.infragistics.mobile.controls.IgaAlignLinearGraphLabelEventArgs; +//end imports + +public class GaugeAlignLabelWithOffset { + //begin eventHandler + public fun gaugeAlignLabelWithOffset(sender: Any?, args: IgaAlignLinearGraphLabelEventArgs) { + args.offsetX += 15; + args.offsetY += 12; + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/GaugeAlignLabelWithOffset/WPF.cs b/code-gen-library/GaugeAlignLabelWithOffset/Desktop.cs similarity index 100% rename from code-gen-library/GaugeAlignLabelWithOffset/WPF.cs rename to code-gen-library/GaugeAlignLabelWithOffset/Desktop.cs diff --git a/code-gen-library/GaugeAlignLabelWithOffset/iOS.swift b/code-gen-library/GaugeAlignLabelWithOffset/iOS.swift new file mode 100644 index 000000000..f7d6687c1 --- /dev/null +++ b/code-gen-library/GaugeAlignLabelWithOffset/iOS.swift @@ -0,0 +1,11 @@ +//begin imports +//end imports + +public class GaugeAlignLabelWithOffset { + //begin eventHandler + public func gaugeAlignLabelWithOffset(sender: Any?, args: IgsAlignLinearGraphLabelEventArgs?) { + args!.offsetX += 15 + args!.offsetY += 12 + } + //end eventHandler +} diff --git a/code-gen-library/GaugeAttachPrependFormatter/Android.kt b/code-gen-library/GaugeAttachPrependFormatter/Android.kt new file mode 100644 index 000000000..0bbfc0ba8 --- /dev/null +++ b/code-gen-library/GaugeAttachPrependFormatter/Android.kt @@ -0,0 +1,11 @@ +//begin imports +import com.infragistics.mobile.controls.IgaFormatLinearGraphLabelEventArgs; +//end imports + +public class GaugeAttachPrependFormatter { + //begin eventHandler + public fun gaugeAttachPrependFormatter(sender: Any?, args: IgaFormatLinearGraphLabelEventArgs?) { + args!!.label = "$" + args!!.label; + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/GaugeAttachPrependFormatter/WPF.cs b/code-gen-library/GaugeAttachPrependFormatter/Desktop.cs similarity index 100% rename from code-gen-library/GaugeAttachPrependFormatter/WPF.cs rename to code-gen-library/GaugeAttachPrependFormatter/Desktop.cs diff --git a/code-gen-library/GaugeAttachPrependFormatter/iOS.swift b/code-gen-library/GaugeAttachPrependFormatter/iOS.swift new file mode 100644 index 000000000..e39b6964f --- /dev/null +++ b/code-gen-library/GaugeAttachPrependFormatter/iOS.swift @@ -0,0 +1,10 @@ +//begin imports +//end imports + +public class GaugeAttachPrependFormatter { + //begin eventHandler + public func gaugeAttachPrependFormatter(sender: Any?, args: IgsFormatLinearGraphLabelEventArgs?) { + args!.label = "$" + args!.label! + } + //end eventHandler +} diff --git a/code-gen-library/HierarchicalCustomers/XPLAT-CONFIG.json b/code-gen-library/HierarchicalCustomers/XPLAT-CONFIG.json index c4834c373..44ea19af4 100644 --- a/code-gen-library/HierarchicalCustomers/XPLAT-CONFIG.json +++ b/code-gen-library/HierarchicalCustomers/XPLAT-CONFIG.json @@ -4,4 +4,10 @@ },{ "platform": "React", "location": "jsonFile" +},{ + "platform": "Kotlin", + "location": "jsonFile" +},{ + "platform": "Swift", + "location": "jsonFile" }] \ No newline at end of file diff --git a/code-gen-library/HierarchicalCustomersData/XPLAT-CONFIG.json b/code-gen-library/HierarchicalCustomersData/XPLAT-CONFIG.json index c4834c373..44ea19af4 100644 --- a/code-gen-library/HierarchicalCustomersData/XPLAT-CONFIG.json +++ b/code-gen-library/HierarchicalCustomersData/XPLAT-CONFIG.json @@ -4,4 +4,10 @@ },{ "platform": "React", "location": "jsonFile" +},{ + "platform": "Kotlin", + "location": "jsonFile" +},{ + "platform": "Swift", + "location": "jsonFile" }] \ No newline at end of file diff --git a/code-gen-library/HistoricalStockTSLA/Android.kt b/code-gen-library/HistoricalStockTSLA/Android.kt new file mode 100644 index 000000000..adb65fa3a --- /dev/null +++ b/code-gen-library/HistoricalStockTSLA/Android.kt @@ -0,0 +1,1312 @@ +//begin imports +//end imports + +//begin data +public class HistoricalStockTSLA: ArrayList +{ + public fun addItem(month: String, day: String, year: String, c: Double, v: Long, o: Double, h: Double, l: Double, + label: String? = null, details: String? = null) { + + var date: String = year + "-" + month + "-" + day; + var index: Int = this.size + 1; + this.add(HistoricalStockInfo(month, day, year, h, v.toDouble(), c, o, l, label, details)); + } + + + + public constructor() { + + // Date, Close, Volume, Open, High, Low + this.addItem("07", "09", "2018", 21.234, 113693058, 20.7993, 21.2347, 20.5333 ); + this.addItem("07", "10", "2018", 21.498, 141563284, 21.6373, 21.8452, 21.28 ); + this.addItem("07", "11", "2018", 21.264, 73178888, 21.0533, 21.4627, 21.0047); + this.addItem("07", "12", "2018", 21.114, 85677722, 21.4287, 21.5487, 20.8513); + this.addItem("07", "13", "2018", 21.258, 88001596, 21.0387, 21.3057, 20.6167); + this.addItem("07", "16", "2018", 20.6733, 117006751, 20.7807, 21.0107, 20.4167); + this.addItem("07", "17", "2018", 21.5127, 104816678, 20.5873, 21.6493, 20.5667); + this.addItem("07", "18", "2018", 21.59, 84151233, 21.6667, 21.70, 21.0833); + this.addItem("07", "19", "2018", 21.3487, 88606696, 21.0887, 21.5693, 20.934); + this.addItem("07", "20", "2018", 20.9053, 77397426, 21.4153, 21.5493, 20.7806, "Q2", "Quarter Earnings"); + this.addItem("07", "23", "2018", 20.2133, 164622218, 20.1227, 20.3667, 19.524); + this.addItem("07", "24", "2018", 19.8287, 143792718, 20.2947, 20.5145, 19.503); + this.addItem("07", "25", "2018", 20.5827, 105470677, 19.7827, 20.6413, 19.6335); + this.addItem("07", "26", "2018", 20.4433, 69293470, 20.3233, 20.7133, 20.2428); + this.addItem("07", "27", "2018", 19.812, 85420307, 20.4833, 20.5129, 19.6894); + this.addItem("07", "30", "2018", 19.3447, 101993664, 19.7267, 19.74, 19.0753); + this.addItem("07", "31", "2018", 19.876, 75826372, 19.4833, 19.888, 19.2713); + this.addItem("08", "01", "2018", 20.056, 131521419, 19.866, 20.20, 19.5333); + this.addItem("08", "02", "2018", 23.3027, 347387226, 21.896, 23.3327, 21.544); + this.addItem("08", "03", "2018", 23.2113, 204699498, 23.1873, 23.6667, 22.8353); + this.addItem("08", "06", "2018", 22.7993, 128051426, 23.0307, 23.6653, 22.788); + this.addItem("08", "07", "2018", 25.3047, 458945771, 22.9227, 25.8307, 22.61); + this.addItem("08", "08", "2018", 24.6893, 368031116, 24.606, 25.5093, 24.4747); + this.addItem("08", "09", "2018", 23.4967, 254276873, 24.37, 24.4673, 23.0487); + this.addItem("08", "10", "2018", 23.6993, 172957564, 23.60, 24.00, 23.0667); + this.addItem("08", "13", "2018", 23.7607, 156673722, 24.0753, 24.2127, 23.268); + this.addItem("08", "14", "2018", 23.176, 104227613, 23.8967, 23.9466, 23.14); + this.addItem("08", "15", "2018", 22.5793, 136095427, 22.7937, 22.966, 22.1427); + this.addItem("08", "16", "2018", 22.3633, 90680835, 22.6607, 22.8187, 22.2547); + this.addItem("08", "17", "2018", 20.3667, 283438058, 21.5667, 21.7847, 20.2353); + this.addItem("08", "20", "2018", 20.5627, 260706320, 19.4469, 20.5667, 19.2133); + this.addItem("08", "21", "2018", 21.46, 197216451, 20.7073, 21.6527, 20.60); + this.addItem("08", "22", "2018", 21.4427, 89037750, 21.3913, 21.592, 20.978); + this.addItem("08", "23", "2018", 21.34, 77080236, 21.276, 21.8213, 21.2067); + this.addItem("08", "24", "2018", 21.5213, 53890983, 21.38, 21.59, 21.2933); + this.addItem("08", "27", "2018", 21.2847, 195939652, 21.20, 21.4957, 20.5873); + this.addItem("08", "28", "2018", 20.7907, 114591738, 21.2273, 21.2587, 20.746); + this.addItem("08", "29", "2018", 20.334, 111158014, 20.6847, 20.79, 20.246); + this.addItem("08", "30", "2018", 20.21, 108159321, 20.1507, 20.3067, 19.848); + this.addItem("08", "31", "2018", 20.1107, 80505680, 20.1333, 20.3539, 19.9067); + this.addItem("09", "04", "2018", 19.2633, 124568503, 19.796, 19.8793, 19.20); + this.addItem("09", "05", "2018", 18.716, 115610072, 19.0033, 19.1187, 18.4787); + this.addItem("09", "06", "2018", 18.73, 112091284, 18.9867, 19.4113, 18.592); + this.addItem("09", "07", "2018", 17.5493, 336634482, 17.34, 17.89, 16.817); + this.addItem("09", "10", "2018", 19.0333, 213483643, 18.2173, 19.0687, 18.0667); + this.addItem("09", "11", "2018", 18.6293, 137415846, 18.6313, 18.80, 18.2367); + this.addItem("09", "12", "2018", 19.3693, 150032175, 18.7627, 19.50, 18.5764); + this.addItem("09", "13", "2018", 19.2973, 94999168, 19.2013, 19.6667, 19.012); + this.addItem("09", "14", "2018", 19.68, 101364729, 19.2507, 19.8217, 19.1013); + this.addItem("09", "17", "2018", 19.656, 102993069, 19.336, 20.058, 19.2087); + this.addItem("09", "18", "2018", 18.9973, 247414076, 19.7793, 20.176, 18.3667); + this.addItem("09", "19", "2018", 19.9347, 123965233, 18.7007, 20.00, 18.70); + this.addItem("09", "20", "2018", 19.8887, 109987100, 20.2373, 20.3987, 19.5553); + this.addItem("09", "21", "2018", 19.94, 75577417, 19.8467, 20.0387, 19.6913); + this.addItem("09", "24", "2018", 19.9787, 72515724, 19.8987, 20.20, 19.572); + this.addItem("09", "25", "2018", 20.066, 67084271, 20.00, 20.3067, 19.7667); + this.addItem("09", "26", "2018", 20.6387, 117537886, 20.1273, 20.926, 20.074); + this.addItem("09", "27", "2018", 20.5013, 110066345, 20.86, 20.9973, 20.4607); + this.addItem("09", "28", "2018", 17.6513, 503959098, 18.0173, 18.5333, 17.3703); + this.addItem("10", "01", "2018", 20.7133, 325712987, 20.3847, 20.7627, 20.07); + this.addItem("10", "02", "2018", 20.068, 175495262, 20.93, 21.1227, 19.9433); + this.addItem("10", "03", "2018", 19.6533, 119734020, 20.222, 20.3067, 19.438); + this.addItem("10", "04", "2018", 18.7887, 144583203, 19.5967, 19.60, 18.5113); + this.addItem("10", "05", "2018", 17.4633, 268510516, 18.31, 18.3253, 17.3333); + this.addItem("10", "08", "2018", 16.704, 200567600, 17.6347, 17.8507, 16.60); + this.addItem("10", "09", "2018", 17.52, 180566610, 17.0167, 17.7847, 16.8867); + this.addItem("10", "10", "2018", 17.1253, 191723304, 17.6407, 17.7007, 16.518); + this.addItem("10", "11", "2018", 16.8153, 121922699, 17.1687, 17.4833, 16.602); + this.addItem("10", "12", "2018", 17.252, 107838801, 17.40, 17.466, 16.8007); + this.addItem("10", "15", "2018", 17.306, 92835344, 17.2707, 17.552, 16.9691); + this.addItem("10", "16", "2018", 18.4393, 142516729, 17.7133, 18.4917, 17.4827); + this.addItem("10", "17", "2018", 18.1187, 129554170, 18.8267, 18.8467, 17.7202); + this.addItem("10", "18", "2018", 17.594, 81028024, 17.9527, 18.0667, 17.5333); + this.addItem("10", "19", "2018", 17.3333, 140171390, 17.826, 17.9773, 16.90); + this.addItem("10", "22", "2018", 17.3967, 83922783, 17.3787, 17.4573, 16.8393); + this.addItem("10", "23", "2018", 19.6093, 284343008, 17.5913, 19.862, 17.4733, "Q3", "Quarter Earnings"); + this.addItem("10", "24", "2018", 19.2333, 290256605, 20.07, 20.296, 19.0487); + this.addItem("10", "25", "2018", 20.9907, 311574894, 21.148, 21.40, 20.0673); + this.addItem("10", "26", "2018", 22.06, 410703095, 20.55, 22.66, 20.4433); + this.addItem("10", "29", "2018", 22.3233, 216827142, 22.498, 23.144, 21.7667); + this.addItem("10", "30", "2018", 21.9933, 136636732, 21.8927, 22.5267, 21.484); + this.addItem("10", "31", "2018", 22.488, 114012543, 22.1693, 22.80, 21.94); + this.addItem("11", "01", "2018", 22.952, 119714130, 22.5507, 23.1893, 22.315); + this.addItem("11", "02", "2018", 23.094, 116998742, 22.916, 23.28, 22.7273); + this.addItem("11", "05", "2018", 22.76, 117312616, 22.70, 22.9303, 22.0093); + this.addItem("11", "06", "2018", 22.7373, 101278899, 22.6047, 23.2533, 22.406); + this.addItem("11", "07", "2018", 23.2107, 110500535, 22.8893, 23.412, 22.72); + this.addItem("11", "08", "2018", 23.4267, 106202992, 23.2333, 23.8384, 23.2293); + this.addItem("11", "09", "2018", 23.3673, 76401802, 23.2667, 23.60, 23.0153); + this.addItem("11", "12", "2018", 22.0853, 103754423, 23.2247, 23.3187, 22.0227); + this.addItem("11", "13", "2018", 22.582, 81341299, 22.2107, 22.98, 22.1467); + this.addItem("11", "14", "2018", 22.9333, 75481207, 22.8467, 23.1407, 22.4767); + this.addItem("11", "15", "2018", 23.2293, 69001915, 22.822, 23.2387, 22.6027); + this.addItem("11", "16", "2018", 23.6207, 107916816, 23.0127, 23.7133, 23.008); + this.addItem("11", "19", "2018", 23.5647, 145478312, 23.756, 24.45, 23.5253); + this.addItem("11", "20", "2018", 23.166, 119868735, 22.7833, 23.32, 22.2367); + this.addItem("11", "21", "2018", 22.546, 70160800, 23.4667, 23.54, 22.4933); + this.addItem("11", "23", "2018", 21.722, 63039598, 22.2897, 22.50, 21.7033); + this.addItem("11", "26", "2018", 23.0667, 119596725, 21.6667, 23.0813, 21.6667); + this.addItem("11", "27", "2018", 22.928, 95205012, 22.67, 23.1307, 22.3667); + this.addItem("11", "28", "2018", 23.1913, 61710539, 23.066, 23.2187, 22.814); + this.addItem("11", "29", "2018", 22.7447, 46140367, 23.1333, 23.1667, 22.6367); + this.addItem("11", "30", "2018", 23.3653, 84316518, 22.7887, 23.44, 22.551); + this.addItem("12", "03", "2018", 23.8993, 124437583, 24.00, 24.40, 23.4667); + this.addItem("12", "04", "2018", 23.98, 126453132, 23.7367, 24.5787, 23.4667); + this.addItem("12", "06", "2018", 24.204, 117430276, 23.734, 24.492, 23.384); + this.addItem("12", "07", "2018", 23.8643, 172265164, 24.60, 25.2993, 23.8433); + this.addItem("12", "10", "2018", 24.3433, 98630066, 24.00, 24.3987, 23.5413); + this.addItem("12", "11", "2018", 24.4507, 94477033, 24.6607, 24.8113, 24.0153); + this.addItem("12", "12", "2018", 24.44, 75295837, 24.628, 24.794, 24.344); + this.addItem("12", "13", "2018", 25.1193, 110222465, 24.6767, 25.1627, 24.45); + this.addItem("12", "14", "2018", 24.3807, 94914328, 25.00, 25.1913, 24.2887); + this.addItem("12", "17", "2018", 23.228, 114972423, 24.1333, 24.38, 22.9253); + this.addItem("12", "18", "2018", 22.4687, 106273252, 23.3693, 23.4367, 22.246); + this.addItem("12", "19", "2018", 22.198, 123845548, 22.5067, 23.134, 21.9827); + this.addItem("12", "20", "2018", 21.0253, 135740767, 21.8036, 22.0193, 20.7913); + this.addItem("12", "21", "2018", 21.318, 119958225, 21.16, 21.5647, 20.8293); + this.addItem("12", "24", "2018", 19.6927, 83398653, 20.90, 20.9667, 19.6797); + this.addItem("12", "26", "2018", 21.7393, 122146469, 20.00, 21.798, 19.606); + this.addItem("12", "27", "2018", 21.0753, 128510711, 21.3227, 21.4781, 20.10); + this.addItem("12", "28", "2018", 22.258, 148781581, 21.54, 22.416, 21.2273); + this.addItem("12", "31", "2018", 22.1867, 94414423, 22.5193, 22.614, 21.684); + this.addItem("01", "02", "2019", 20.6747, 174168963, 20.4067, 21.0087, 19.92); + this.addItem("01", "03", "2019", 20.024, 104228603, 20.4667, 20.6267, 19.8253); + this.addItem("01", "04", "2019", 21.1793, 110741270, 20.40, 21.20, 20.182); + this.addItem("01", "07", "2019", 22.3307, 113135013, 21.448, 22.4493, 21.1834); + this.addItem("01", "08", "2019", 22.3567, 104916353, 22.7973, 22.934, 21.8013); + this.addItem("01", "09", "2019", 22.5687, 81399229, 22.3667, 22.9002, 22.098); + this.addItem("01", "10", "2019", 22.998, 90744270, 22.2933, 23.026, 22.1193); + this.addItem("01", "11", "2019", 23.1507, 75526132, 22.806, 23.2273, 22.5847); + this.addItem("01", "14", "2019", 22.2933, 78490311, 22.8253, 22.8333, 22.2667); + this.addItem("01", "15", "2019", 22.962, 90718305, 22.3333, 23.2533, 22.30); + this.addItem("01", "16", "2019", 23.07, 70158370, 22.9853, 23.4667, 22.90); + this.addItem("01", "17", "2019", 23.154, 54917403, 23.0807, 23.4333, 22.9433); + this.addItem("01", "18", "2019", 20.1507, 361188719, 21.5333, 21.8087, 19.982); + this.addItem("01", "22", "2019", 19.928, 180781860, 20.3213, 20.5333, 19.70); + this.addItem("01", "23", "2019", 19.1727, 187696106, 19.50, 19.6333, 18.7793); + this.addItem("01", "24", "2019", 19.434, 119863605, 18.8687, 19.5787, 18.6189); + this.addItem("01", "25", "2019", 19.8027, 106541662, 19.626, 19.9013, 19.3033, "Q4", "Quarter Earnings"); + this.addItem("01", "28", "2019", 19.7587, 96142107, 19.5273, 19.8307, 19.1833); + this.addItem("01", "29", "2019", 19.8307, 69043960, 19.6847, 19.9038, 19.4533); + this.addItem("01", "30", "2019", 20.5847, 158910521, 20.03, 20.60, 19.8993); + this.addItem("01", "31", "2019", 20.468, 188177756, 20.0667, 20.7709, 19.60); + this.addItem("02", "01", "2019", 20.814, 108954216, 20.3613, 21.0733, 20.2333); + this.addItem("02", "04", "2019", 20.8593, 110161085, 20.8653, 21.02, 20.1253); + this.addItem("02", "05", "2019", 21.4233, 101021034, 20.8327, 21.496, 20.8166); + this.addItem("02", "06", "2019", 21.148, 75470482, 21.306, 21.616, 21.0416); + this.addItem("02", "07", "2019", 20.5007, 97677401, 20.8867, 20.98, 20.20); + this.addItem("02", "08", "2019", 20.3867, 87526126, 20.4553, 20.4963, 19.90); + this.addItem("02", "11", "2019", 20.856, 106710127, 20.7733, 21.24, 20.70); + this.addItem("02", "12", "2019", 20.7873, 82281244, 21.08, 21.2127, 20.6413); + this.addItem("02", "13", "2019", 20.5447, 76955932, 20.8233, 20.85, 20.3713); + this.addItem("02", "14", "2019", 20.2513, 77863266, 20.2253, 20.4513, 20.0667); + this.addItem("02", "15", "2019", 20.5253, 58437196, 20.30, 20.5333, 20.26); + this.addItem("02", "19", "2019", 20.376, 61807769, 20.4373, 20.7696, 20.3647); + this.addItem("02", "20", "2019", 20.1707, 106994482, 20.294, 20.42, 19.9333); + this.addItem("02", "21", "2019", 19.4153, 133212383, 20.1207, 20.216, 19.3667); + this.addItem("02", "22", "2019", 19.6473, 85970657, 19.6327, 19.7667, 19.4733); + this.addItem("02", "25", "2019", 19.918, 93205468, 19.8607, 20.1936, 19.80); + this.addItem("02", "26", "2019", 19.8573, 128574071, 19.4813, 20.134, 19.2513); + this.addItem("02", "27", "2019", 20.9827, 167161416, 20.1187, 21.0863, 20.0367); + this.addItem("02", "28", "2019", 21.3253, 144993288, 21.2613, 21.3333, 20.7207); + this.addItem("03", "01", "2019", 19.6527, 342731079, 20.4627, 20.4753, 19.46); + this.addItem("03", "04", "2019", 19.024, 256033222, 19.8747, 19.9333, 18.852); + this.addItem("03", "05", "2019", 18.436, 280946860, 18.80, 18.9333, 18.0067); + this.addItem("03", "06", "2019", 18.416, 154790473, 18.432, 18.7671, 18.2927); + this.addItem("03", "07", "2019", 18.4393, 141160384, 18.5893, 18.98, 18.2833); + this.addItem("03", "08", "2019", 18.9427, 132086514, 18.4607, 19.0393, 18.3927); + this.addItem("03", "11", "2019", 19.3947, 110584415, 18.9013, 19.4187, 18.70); + this.addItem("03", "12", "2019", 18.8907, 112320499, 19.0993, 19.2047, 18.7373); + this.addItem("03", "13", "2019", 19.264, 102267759, 18.9267, 19.466, 18.8467); + this.addItem("03", "14", "2019", 19.3307, 105722017, 19.4967, 19.6927, 19.2193); + this.addItem("03", "15", "2019", 18.362, 221360289, 18.9007, 18.915, 18.2933); + this.addItem("03", "18", "2019", 17.966, 153974323, 18.40, 18.5367, 17.82); + this.addItem("03", "19", "2019", 17.8313, 176614862, 17.8333, 18.22, 17.564); + this.addItem("03", "20", "2019", 18.24, 103229588, 17.9793, 18.3313, 17.7533); + this.addItem("03", "21", "2019", 18.268, 88963831, 18.1733, 18.43, 17.8967); + this.addItem("03", "22", "2019", 17.6353, 130829185, 18.172, 18.1867, 17.60); + this.addItem("03", "25", "2019", 17.3613, 153076123, 17.314, 17.5453, 16.964); + this.addItem("03", "26", "2019", 17.8513, 110127965, 17.6293, 18.0173, 17.6287); + this.addItem("03", "27", "2019", 18.322, 131285694, 17.9167, 18.358, 17.8789); + this.addItem("03", "28", "2019", 18.5747, 101473764, 18.4773, 18.6887, 18.34); + this.addItem("03", "29", "2019", 18.6573, 89705280, 18.58, 18.6773, 18.30); + this.addItem("04", "01", "2019", 19.2787, 121396949, 18.8413, 19.28, 18.7521); + this.addItem("04", "02", "2019", 19.0587, 81407719, 19.22, 19.296, 18.9253); + this.addItem("04", "03", "2019", 19.454, 118749691, 19.1547, 19.7447, 19.1447); + this.addItem("04", "04", "2019", 17.852, 355202372, 17.4593, 18.08, 17.3727); + this.addItem("04", "05", "2019", 18.3307, 195341002, 17.9907, 18.4067, 17.7407); + this.addItem("04", "08", "2019", 18.2133, 155468922, 18.5127, 18.744, 18.0293); + this.addItem("04", "09", "2019", 18.154, 88398661, 18.11, 18.3333, 17.974); + this.addItem("04", "10", "2019", 18.404, 105675457, 18.4493, 18.5587, 18.1928); + this.addItem("04", "11", "2019", 17.8947, 146719337, 17.8867, 18.0333, 17.7067); + this.addItem("04", "12", "2019", 17.8467, 101030739, 18.0147, 18.13, 17.7887); + this.addItem("04", "15", "2019", 17.7587, 150487275, 17.9087, 17.9253, 17.242); + this.addItem("04", "16", "2019", 18.224, 108997506, 17.7167, 18.3333, 17.648); + this.addItem("04", "17", "2019", 18.082, 76770127, 18.3167, 18.3193, 17.9023); + this.addItem("04", "18", "2019", 18.2173, 87922126, 18.082, 18.3227, 17.9833); + this.addItem("04", "22", "2019", 17.5167, 181525259, 17.9333, 17.9787, 17.4987, "Q1", "Quarter Earnings"); + this.addItem("04", "23", "2019", 17.5933, 163640168, 17.3433, 17.7067, 17.05); + this.addItem("04", "24", "2019", 17.244, 144855843, 17.59, 17.688, 17.20); + this.addItem("04", "25", "2019", 16.5087, 327350536, 17.00, 17.2667, 16.4047); + this.addItem("04", "26", "2019", 15.676, 332267234, 16.4333, 16.4453, 15.4087); + this.addItem("04", "29", "2019", 16.098, 250299175, 15.724, 16.2653, 15.478); + this.addItem("04", "30", "2019", 15.9127, 141704404, 16.1373, 16.2807, 15.80); + this.addItem("05", "01", "2019", 15.6007, 160565170, 15.9233, 16.00, 15.4333); + this.addItem("05", "02", "2019", 16.2733, 272389964, 16.368, 16.4753, 15.848); + this.addItem("05", "03", "2019", 17.002, 355601372, 16.2573, 17.1073, 16.2327); + this.addItem("05", "06", "2019", 17.0227, 162509019, 16.668, 17.2233, 16.5667); + this.addItem("05", "07", "2019", 16.4707, 151971074, 17.12, 17.1473, 16.34); + this.addItem("05", "08", "2019", 16.3227, 92646554, 16.4627, 16.7066, 16.28); + this.addItem("05", "09", "2019", 16.132, 100670680, 16.1333, 16.2453, 15.7962); + this.addItem("05", "10", "2019", 15.968, 105124987, 15.9833, 16.1327, 15.7347); + this.addItem("05", "13", "2019", 15.134, 162521919, 15.4673, 15.498, 14.9667); + this.addItem("05", "14", "2019", 15.4873, 108786126, 15.2867, 15.6333, 15.20); + this.addItem("05", "15", "2019", 15.4633, 109439585, 15.288, 15.496, 15.0167); + this.addItem("05", "16", "2019", 15.222, 112249039, 15.2993, 15.40, 15.10); + this.addItem("05", "17", "2019", 14.0687, 266799917, 14.7973, 14.816, 13.928); + this.addItem("05", "20", "2019", 13.6907, 307892846, 13.52, 13.7333, 13.0167); + this.addItem("05", "21", "2019", 13.672, 270058365, 13.184, 13.8267, 13.0693); + this.addItem("05", "22", "2019", 12.8487, 280277710, 13.2733, 13.596, 12.7853); + this.addItem("05", "23", "2019", 13.0327, 398206901, 12.956, 13.2977, 12.4147); + this.addItem("05", "24", "2019", 12.7087, 212048444, 13.322, 13.332, 12.5834); + this.addItem("05", "28", "2019", 12.58, 154693423, 12.7467, 13.00, 12.5233); + this.addItem("05", "29", "2019", 12.6573, 179529510, 12.4733, 12.826, 12.336); + this.addItem("05", "30", "2019", 12.548, 118897066, 12.5833, 12.817, 12.468); + this.addItem("05", "31", "2019", 12.344, 156100872, 12.34, 12.6614, 12.2733); + this.addItem("06", "03", "2019", 11.9313, 195966052, 12.3673, 12.4453, 11.7995); + this.addItem("06", "04", "2019", 12.9067, 207112696, 12.0733, 12.932, 11.974); + this.addItem("06", "05", "2019", 13.106, 202661299, 13.2453, 13.4186, 12.7899); + this.addItem("06", "06", "2019", 13.73, 303632098, 13.6293, 14.0667, 13.4533); + this.addItem("06", "07", "2019", 13.6333, 240052830, 13.6667, 14.0563, 13.5666); + this.addItem("06", "10", "2019", 14.192, 158775521, 14.0167, 14.4627, 13.934); + this.addItem("06", "11", "2019", 14.4733, 174803013, 14.6096, 14.7267, 14.2333); + this.addItem("06", "12", "2019", 13.9507, 227962986, 14.8633, 14.892, 13.9333); + this.addItem("06", "13", "2019", 14.2607, 122523839, 14.0253, 14.3267, 13.834); + this.addItem("06", "14", "2019", 14.328, 111500974, 14.0833, 14.4433, 14.0267); + this.addItem("06", "17", "2019", 15.002, 184751908, 14.3653, 15.1333, 14.2847); + this.addItem("06", "18", "2019", 14.9827, 190736755, 15.248, 15.6493, 14.8373); + this.addItem("06", "19", "2019", 15.0953, 98626976, 15.0073, 15.1847, 14.7373); + this.addItem("06", "20", "2019", 14.6413, 177951811, 14.8667, 15.1267, 14.4233); + this.addItem("06", "21", "2019", 14.7907, 123031108, 14.4147, 14.812, 14.3667); + this.addItem("06", "24", "2019", 14.9093, 86261522, 14.8827, 15.0573, 14.7347); + this.addItem("06", "25", "2019", 14.6507, 92731019, 14.9593, 15.0227, 14.6327); + this.addItem("06", "26", "2019", 14.618, 127608056, 14.6873, 15.1487, 14.54); + this.addItem("06", "27", "2019", 14.856, 95095602, 14.63, 14.86, 14.49); + this.addItem("06", "28", "2019", 14.8973, 102770709, 14.7327, 15.0113, 14.72); + this.addItem("07", "01", "2019", 15.1447, 123569398, 15.3473, 15.54, 15.0853); + this.addItem("07", "02", "2019", 14.97, 138885336, 15.2593, 15.2767, 14.8147); + this.addItem("07", "03", "2019", 15.66, 213017143, 15.9593, 16.1047, 15.634); + this.addItem("07", "05", "2019", 15.54, 105986017, 15.638, 15.6967, 15.3867); + this.addItem("07", "08", "2019", 15.356, 88208086, 15.416, 15.4833, 15.244); + this.addItem("07", "09", "2019", 15.3373, 92862479, 15.2647, 15.40, 15.152); + this.addItem("07", "10", "2019", 15.928, 137185971, 15.61, 15.9293, 15.5427); + this.addItem("07", "11", "2019", 15.9067, 112716394, 15.876, 16.10, 15.72); + this.addItem("07", "12", "2019", 16.3387, 138007746, 15.9833, 16.3587, 15.9807); + this.addItem("07", "15", "2019", 16.90, 165001267, 16.5333, 16.9613, 16.324); + this.addItem("07", "16", "2019", 16.8253, 122234774, 16.62, 16.902, 16.5288); + this.addItem("07", "17", "2019", 16.9907, 146470832, 17.0447, 17.2207, 16.89); + this.addItem("07", "18", "2019", 16.9027, 71467209, 17.0033, 17.05, 16.7923); + this.addItem("07", "19", "2019", 17.212, 105726097, 17.046, 17.3307, 16.9747); + this.addItem("07", "22", "2019", 17.0453, 102694044, 17.25, 17.477, 16.9461); + this.addItem("07", "23", "2019", 17.3447, 75346777, 17.114, 17.3653, 16.9667, "Q2", "Quarter Earnings"); + this.addItem("07", "24", "2019", 17.6587, 166092517, 17.278, 17.738, 17.2107); + this.addItem("07", "25", "2019", 15.2547, 336273582, 15.5667, 15.6333, 15.0367); + this.addItem("07", "26", "2019", 15.2027, 150415425, 15.128, 15.3507, 14.8167); + this.addItem("07", "29", "2019", 15.718, 139099895, 15.1393, 15.7293, 15.0688); + this.addItem("07", "30", "2019", 16.1507, 121635149, 15.5267, 16.224, 15.4787); + this.addItem("07", "31", "2019", 16.1073, 137673051, 16.20, 16.4453, 15.7767); + this.addItem("08", "01", "2019", 15.59, 123892678, 16.1767, 16.3007, 15.4513); + this.addItem("08", "02", "2019", 15.6227, 92047169, 15.4233, 15.7513, 15.282); + this.addItem("08", "05", "2019", 15.2213, 105424132, 15.3067, 15.4245, 15.0517); + this.addItem("08", "06", "2019", 15.3833, 83462958, 15.4587, 15.50, 15.05); + this.addItem("08", "07", "2019", 15.5613, 71647464, 15.10, 15.5713, 15.0533); + this.addItem("08", "08", "2019", 15.8867, 79115195, 15.63, 15.9867, 15.51); + this.addItem("08", "09", "2019", 15.6673, 58473631, 15.7369, 15.9307, 15.5873); + this.addItem("08", "12", "2019", 15.2673, 69959020, 15.5327, 15.718, 15.25); + this.addItem("08", "13", "2019", 15.6667, 73034933, 15.254, 15.7333, 15.17); + this.addItem("08", "14", "2019", 14.6413, 143438793, 15.414, 15.4333, 14.446); + this.addItem("08", "15", "2019", 14.376, 123479218, 14.724, 14.7707, 14.1033); + this.addItem("08", "16", "2019", 14.6627, 78110601, 14.444, 14.816, 14.4013); + this.addItem("08", "19", "2019", 15.122, 79676180, 14.9473, 15.1887, 14.78); + this.addItem("08", "20", "2019", 15.0573, 62557874, 15.1747, 15.2727, 14.9693); + this.addItem("08", "21", "2019", 14.722, 116996102, 14.8007, 14.8813, 14.5067); + this.addItem("08", "22", "2019", 14.81, 98474411, 14.8533, 15.0267, 14.548); + this.addItem("08", "23", "2019", 14.0933, 128395496, 14.6647, 14.7447, 14.0667); + this.addItem("08", "26", "2019", 14.3333, 75816172, 14.24, 14.3347, 14.1027); + this.addItem("08", "27", "2019", 14.272, 81310864, 14.3827, 14.5867, 14.1353); + this.addItem("08", "28", "2019", 14.3727, 48579351, 14.246, 14.4833, 14.154); + this.addItem("08", "29", "2019", 14.7807, 77746521, 14.60, 14.8933, 14.5333); + this.addItem("08", "30", "2019", 15.0407, 139916555, 15.2767, 15.496, 14.9475); + this.addItem("09", "03", "2019", 15.0007, 80408150, 14.9387, 15.2633, 14.8773); + this.addItem("09", "04", "2019", 14.712, 86530397, 15.126, 15.2307, 14.6137); + this.addItem("09", "05", "2019", 15.3053, 111049774, 14.8333, 15.32, 14.7233); + this.addItem("09", "06", "2019", 15.1633, 62840549, 15.1467, 15.3093, 15.0113); + this.addItem("09", "09", "2019", 15.4527, 72039999, 15.3333, 15.584, 15.282); + this.addItem("09", "10", "2019", 15.7027, 73255673, 15.3867, 15.7027, 15.2627); + this.addItem("09", "11", "2019", 16.4733, 150641625, 15.8253, 16.5449, 15.7333); + this.addItem("09", "12", "2019", 16.3913, 128718086, 16.5133, 16.90, 16.2933); + this.addItem("09", "13", "2019", 16.3467, 79697135, 16.464, 16.5633, 16.3243); + this.addItem("09", "16", "2019", 16.1873, 70921405, 16.40, 16.4953, 16.078); + this.addItem("09", "17", "2019", 16.3193, 59203605, 16.1647, 16.3733, 16.0247); + this.addItem("09", "18", "2019", 16.2327, 63421513, 16.3333, 16.5446, 16.158); + this.addItem("09", "19", "2019", 16.44, 73246988, 16.40, 16.5293, 16.3227); + this.addItem("09", "20", "2019", 16.0413, 97593911, 16.4327, 16.4631, 15.8773); + this.addItem("09", "23", "2019", 16.082, 65874417, 16.00, 16.3453, 15.948); + this.addItem("09", "24", "2019", 14.8807, 194116553, 16.1013, 16.1327, 14.8407); + this.addItem("09", "25", "2019", 15.2467, 141664219, 14.9707, 15.2653, 14.5573); + this.addItem("09", "26", "2019", 16.1707, 181181759, 15.3773, 16.2207, 15.16); + this.addItem("09", "27", "2019", 16.142, 166847617, 16.1467, 16.5807, 15.9153); + this.addItem("09", "30", "2019", 16.058, 89192370, 16.20, 16.2653, 15.7407); + this.addItem("10", "01", "2019", 16.3127, 92944304, 16.10, 16.3967, 15.942); + this.addItem("10", "02", "2019", 16.2087, 93848173, 16.2193, 16.31, 15.962); + this.addItem("10", "03", "2019", 15.5353, 227066286, 15.4573, 15.632, 14.952); + this.addItem("10", "04", "2019", 15.4287, 120317640, 15.4407, 15.652, 15.2047); + this.addItem("10", "07", "2019", 15.848, 121304294, 15.32, 15.904, 15.2367); + this.addItem("10", "08", "2019", 16.0033, 130535005, 15.7247, 16.2627, 15.6333); + this.addItem("10", "09", "2019", 16.302, 104025443, 16.088, 16.4863, 16.0433); + this.addItem("10", "10", "2019", 16.316, 94701208, 16.352, 16.6187, 16.1053); + this.addItem("10", "11", "2019", 16.526, 127322321, 16.4767, 16.7387, 16.454); + this.addItem("10", "14", "2019", 17.1307, 153402823, 16.5267, 17.2367, 16.4753); + this.addItem("10", "15", "2019", 17.1927, 97191791, 17.18, 17.3333, 16.9413); + this.addItem("10", "16", "2019", 17.3167, 100564495, 17.1593, 17.4733, 17.128); + this.addItem("10", "17", "2019", 17.4647, 71685609, 17.50, 17.652, 17.3447); + this.addItem("10", "18", "2019", 17.13, 86304947, 17.38, 17.52, 17.0067); + this.addItem("10", "21", "2019", 16.90, 76621477, 17.222, 17.30, 16.6787, "Q3", "Quarter Earnings"); + this.addItem("10", "22", "2019", 17.0387, 69376390, 16.9547, 17.222, 16.7233); + this.addItem("10", "23", "2019", 16.9787, 168242616, 16.9667, 17.076, 16.7567); + this.addItem("10", "24", "2019", 19.9787, 447288226, 19.8913, 20.3287, 19.28); + this.addItem("10", "25", "2019", 21.8753, 450091125, 19.848, 22.00, 19.7407); + this.addItem("10", "28", "2019", 21.8473, 283054208, 21.836, 22.7227, 21.5067); + this.addItem("10", "29", "2019", 21.0813, 190263955, 21.3327, 21.62, 20.9833); + this.addItem("10", "30", "2019", 21.0007, 144627078, 20.8667, 21.2527, 20.6647); + this.addItem("10", "31", "2019", 20.9947, 76004302, 20.8733, 21.2667, 20.8667); + this.addItem("11", "01", "2019", 20.8873, 95758887, 21.088, 21.0987, 20.6533); + this.addItem("11", "04", "2019", 21.1647, 131805534, 20.9867, 21.4627, 20.6173); + this.addItem("11", "05", "2019", 21.148, 104151203, 21.308, 21.5673, 21.0745); + this.addItem("11", "06", "2019", 21.772, 119113920, 21.20, 21.7813, 20.9667); + this.addItem("11", "07", "2019", 22.3693, 217010141, 21.9427, 22.7667, 21.868); + this.addItem("11", "08", "2019", 22.476, 91113269, 22.30, 22.4973, 22.1667); + this.addItem("11", "11", "2019", 23.006, 149905260, 22.93, 23.2793, 22.80); + this.addItem("11", "12", "2019", 23.3287, 110390690, 23.1267, 23.358, 22.936); + this.addItem("11", "13", "2019", 23.074, 127017881, 23.6667, 23.7553, 23.012); + this.addItem("11", "14", "2019", 23.29, 97075496, 23.074, 23.5893, 22.8607); + this.addItem("11", "15", "2019", 23.478, 72188409, 23.376, 23.52, 23.224); + this.addItem("11", "18", "2019", 23.3327, 66127542, 23.5278, 23.5433, 23.0733); + this.addItem("11", "19", "2019", 23.968, 116041112, 23.45, 23.9993, 23.1867); + this.addItem("11", "20", "2019", 23.4813, 101009424, 24.00, 24.08, 23.3047); + this.addItem("11", "21", "2019", 23.6553, 91650149, 23.634, 24.056, 23.6003); + this.addItem("11", "22", "2019", 22.2027, 253059473, 22.6773, 22.7333, 22.00); + this.addItem("11", "25", "2019", 22.4227, 185186457, 22.9547, 22.9713, 22.2973); + this.addItem("11", "26", "2019", 21.928, 119343525, 22.3513, 22.3667, 21.8067); + this.addItem("11", "27", "2019", 22.086, 83451843, 22.0747, 22.262, 21.9047); + this.addItem("11", "29", "2019", 21.996, 36984417, 22.074, 22.084, 21.8333); + this.addItem("12", "02", "2019", 22.3247, 91229744, 21.96, 22.4255, 21.9125); + this.addItem("12", "03", "2019", 22.4133, 99202090, 22.1747, 22.5273, 22.1457); + this.addItem("12", "04", "2019", 22.202, 83043783, 22.5167, 22.524, 22.19); + this.addItem("12", "05", "2019", 22.0247, 56054612, 22.1887, 22.2949, 21.8167); + this.addItem("12", "06", "2019", 22.3927, 114283998, 22.3333, 22.5907, 22.318); + this.addItem("12", "09", "2019", 22.6353, 135603187, 22.4393, 22.9633, 22.3387); + this.addItem("12", "10", "2019", 23.256, 132599199, 22.664, 23.382, 22.6207); + this.addItem("12", "11", "2019", 23.5133, 103787378, 23.4584, 23.8127, 23.406); + this.addItem("12", "12", "2019", 23.9787, 116643107, 23.6613, 24.1827, 23.5487); + this.addItem("12", "13", "2019", 23.8927, 98614166, 24.07, 24.3473, 23.6427); + this.addItem("12", "16", "2019", 25.4333, 273313963, 24.17, 25.574, 24.1667); + this.addItem("12", "17", "2019", 25.266, 127556561, 25.266, 25.70, 25.06); + this.addItem("12", "18", "2019", 26.21, 212045744, 25.3753, 26.348, 25.372); + this.addItem("12", "19", "2019", 26.936, 271804514, 26.488, 27.1233, 26.4333); + this.addItem("12", "20", "2019", 27.0393, 221778039, 27.3527, 27.5333, 26.679); + this.addItem("12", "23", "2019", 27.948, 199992200, 27.452, 28.134, 27.3333); + this.addItem("12", "24", "2019", 28.35, 120820740, 27.8907, 28.3647, 27.5125); + this.addItem("12", "26", "2019", 28.7293, 159724270, 28.5273, 28.8987, 28.4233); + this.addItem("12", "27", "2019", 28.692, 149352330, 29.00, 29.0207, 28.4073); + this.addItem("12", "30", "2019", 27.6467, 189018955, 28.586, 28.60, 27.2839); + this.addItem("12", "31", "2019", 27.8887, 154386823, 27.00, 28.086, 26.8053); + this.addItem("01", "02", "2020", 28.684, 143375718, 28.30, 28.7131, 28.114); + this.addItem("01", "03", "2020", 29.534, 266920367, 29.3667, 30.2667, 29.128); + this.addItem("01", "06", "2020", 30.1027, 152362424, 29.3647, 30.104, 29.3333); + this.addItem("01", "07", "2020", 31.2707, 273136963, 30.76, 31.442, 30.2237); + this.addItem("01", "08", "2020", 32.8093, 467990616, 31.58, 33.2327, 31.2153); + this.addItem("01", "09", "2020", 32.0893, 426947637, 33.14, 33.2533, 31.5247); + this.addItem("01", "10", "2020", 31.8767, 194652353, 32.1193, 32.3293, 31.58); + this.addItem("01", "13", "2020", 34.9907, 399518050, 32.90, 35.042, 32.80); + this.addItem("01", "14", "2020", 35.8614, 435920482, 36.2837, 36.494, 34.9934); + this.addItem("01", "15", "2020", 34.5667, 260532320, 35.3174, 35.856, 34.4524); + this.addItem("01", "16", "2020", 34.2327, 326049587, 32.9167, 34.2974, 32.8113); + this.addItem("01", "17", "2020", 34.0334, 204435948, 33.8407, 34.378, 33.544); + this.addItem("01", "21", "2020", 36.48, 267051916, 35.35, 36.572, 35.2274); + this.addItem("01", "22", "2020", 37.9707, 470535215, 38.126, 39.6334, 37.2734, "Q4", "Quarter Earnings"); + this.addItem("01", "23", "2020", 38.1467, 294765453, 37.6167, 38.80, 37.0402); + this.addItem("01", "24", "2020", 37.6547, 215303892, 38.042, 38.2574, 36.9507); + this.addItem("01", "27", "2020", 37.2014, 204120948, 36.1327, 37.6294, 35.952); + this.addItem("01", "28", "2020", 37.7934, 176827262, 37.8994, 38.454, 37.2054); + this.addItem("01", "29", "2020", 38.7327, 273249913, 38.3794, 39.32, 37.8287); + this.addItem("01", "30", "2020", 42.7207, 435084982, 42.1614, 43.392, 41.20); + this.addItem("01", "31", "2020", 43.3714, 235788932, 42.6667, 43.5334, 42.168); + this.addItem("02", "03", "2020", 52.00, 708502146, 44.9127, 52.4094, 44.9014); + this.addItem("02", "04", "2020", 59.1374, 914080943, 58.864, 64.5994, 55.592); + this.addItem("02", "05", "2020", 48.98, 726357237, 54.884, 56.3987, 46.9407); + this.addItem("02", "06", "2020", 49.9307, 598210951, 46.6614, 53.0554, 45.80); + this.addItem("02", "07", "2020", 49.8714, 255952672, 48.7034, 51.3167, 48.6667); + this.addItem("02", "10", "2020", 51.4187, 370337215, 53.3334, 54.666, 50.16); + this.addItem("02", "11", "2020", 51.6254, 175461962, 51.2527, 52.2338, 50.5334); + this.addItem("02", "12", "2020", 51.1527, 180336960, 51.858, 52.65, 50.8914); + this.addItem("02", "13", "2020", 53.60, 394340053, 49.456, 54.5334, 49.00); + this.addItem("02", "14", "2020", 53.3354, 235405532, 52.4814, 54.198, 52.3667); + this.addItem("02", "18", "2020", 57.2267, 250475425, 56.1067, 57.3334, 55.4907); + this.addItem("02", "19", "2020", 61.1614, 381344209, 61.5667, 62.9854, 60.068); + this.addItem("02", "20", "2020", 59.9607, 264523218, 60.7967, 60.80, 57.3294); + this.addItem("02", "21", "2020", 60.0667, 215091642, 60.4654, 60.8707, 58.6967); + this.addItem("02", "24", "2020", 55.586, 227882286, 55.9334, 57.5667, 54.8134); + this.addItem("02", "25", "2020", 53.3274, 259357070, 56.60, 57.1067, 52.4667); + this.addItem("02", "26", "2020", 51.92, 212307494, 52.1667, 54.2207, 51.7407); + this.addItem("02", "27", "2020", 45.2667, 364157218, 48.6667, 49.318, 44.60); + this.addItem("02", "28", "2020", 44.5327, 368462366, 41.98, 46.0347, 40.768); + this.addItem("03", "02", "2020", 49.5747, 302924699, 47.4174, 49.5794, 45.778); + this.addItem("03", "03", "2020", 49.7007, 386759807, 53.6667, 53.7987, 47.7407); + this.addItem("03", "04", "2020", 49.9667, 225734587, 50.9307, 51.1014, 48.3157); + this.addItem("03", "05", "2020", 48.3027, 162789819, 48.2514, 49.7167, 47.8714); + this.addItem("03", "06", "2020", 46.8987, 189943705, 46.0003, 47.1334, 45.618); + this.addItem("03", "09", "2020", 40.5334, 256105972, 40.3594, 44.1999, 40.3334); + this.addItem("03", "10", "2020", 43.022, 233916483, 43.962, 44.5334, 40.5334); + this.addItem("03", "11", "2020", 42.282, 201203749, 42.68, 43.572, 40.8667); + this.addItem("03", "12", "2020", 37.37, 283635608, 38.726, 39.6334, 36.4167); + this.addItem("03", "13", "2020", 36.4414, 339603580, 39.6667, 40.5047, 33.4667); + this.addItem("03", "16", "2020", 29.6713, 307341746, 31.30, 32.9913, 29.478); + this.addItem("03", "17", "2020", 28.68, 359918520, 29.334, 31.4567, 26.40); + this.addItem("03", "18", "2020", 24.0813, 356792222, 25.9333, 26.9907, 23.3673); + this.addItem("03", "19", "2020", 28.5093, 452931674, 24.9798, 30.1333, 23.8973); + this.addItem("03", "20", "2020", 28.502, 424282288, 29.2133, 31.80, 28.386); + this.addItem("03", "23", "2020", 28.9527, 246818127, 28.9067, 29.4667, 27.3667); + this.addItem("03", "24", "2020", 33.6667, 343427378, 31.82, 34.246, 31.60); + this.addItem("03", "25", "2020", 35.95, 318341091, 36.35, 37.1334, 34.074); + this.addItem("03", "26", "2020", 35.2107, 261331069, 36.4927, 37.3334, 34.15); + this.addItem("03", "27", "2020", 34.2907, 215661042, 33.6667, 35.0534, 32.9353); + this.addItem("03", "30", "2020", 33.4754, 179970960, 34.0174, 34.4432, 32.7487); + this.addItem("03", "31", "2020", 34.9334, 266572217, 33.4167, 36.1974, 33.1333); + this.addItem("04", "01", "2020", 32.104, 200297600, 33.60, 34.2637, 31.6733); + this.addItem("04", "02", "2020", 30.298, 297876301, 32.0687, 32.9507, 29.76); + this.addItem("04", "03", "2020", 32.0007, 338431031, 33.9667, 34.366, 31.226); + this.addItem("04", "06", "2020", 34.416, 223527488, 34.08, 34.7334, 33.1973); + this.addItem("04", "07", "2020", 36.3634, 268796566, 36.3334, 37.6667, 35.4894); + this.addItem("04", "08", "2020", 36.5894, 189840205, 36.9467, 37.1472, 35.5554); + this.addItem("04", "09", "2020", 38.20, 204749898, 37.4727, 38.3455, 37.1407); + this.addItem("04", "13", "2020", 43.3967, 337131131, 39.344, 43.4667, 38.702); + this.addItem("04", "14", "2020", 47.326, 458647421, 46.598, 49.4587, 46.162); + this.addItem("04", "15", "2020", 48.6554, 353654823, 49.4667, 50.2087, 47.3334); + this.addItem("04", "16", "2020", 49.6807, 309867745, 47.796, 50.63, 47.1144); + this.addItem("04", "17", "2020", 50.2594, 196923352, 51.4854, 51.6634, 49.844); + this.addItem("04", "20", "2020", 49.7574, 221195439, 48.8467, 51.038, 47.4807, "Q1", "Quarter Earnings"); + this.addItem("04", "21", "2020", 45.7814, 303136198, 48.6747, 50.222, 44.9194); + this.addItem("04", "22", "2020", 48.8074, 213372343, 46.932, 48.9334, 45.914); + this.addItem("04", "23", "2020", 47.042, 198550401, 48.5067, 48.9334, 46.8754); + this.addItem("04", "24", "2020", 48.3434, 198564051, 47.3874, 48.7154, 46.5454); + this.addItem("04", "27", "2020", 53.25, 310221445, 49.174, 53.2994, 49.00); + this.addItem("04", "28", "2020", 51.2747, 228329286, 53.0427, 53.6667, 50.446); + this.addItem("04", "29", "2020", 53.3674, 243239578, 52.678, 53.5467, 52.2107); + this.addItem("04", "30", "2020", 52.1254, 427077536, 57.0127, 57.988, 50.90); + this.addItem("05", "01", "2020", 46.7547, 487976906, 50.3334, 51.518, 45.536); + this.addItem("05", "04", "2020", 50.746, 288556206, 46.7334, 50.80, 46.5334); + this.addItem("05", "05", "2020", 51.214, 254874773, 52.6527, 53.2614, 50.812); + this.addItem("05", "06", "2020", 52.172, 166848367, 51.7667, 52.6534, 50.7407); + this.addItem("05", "07", "2020", 52.0027, 172915264, 51.814, 53.0934, 51.49); + this.addItem("05", "08", "2020", 54.628, 241951229, 52.918, 54.9334, 52.4674); + this.addItem("05", "11", "2020", 54.086, 247793876, 52.7007, 54.9334, 52.3334); + this.addItem("05", "12", "2020", 53.9607, 238603531, 55.1334, 56.2194, 53.8667); + this.addItem("05", "13", "2020", 52.7307, 285982207, 54.722, 55.0667, 50.8867); + this.addItem("05", "14", "2020", 53.5554, 205232747, 52.00, 53.5574, 50.9334); + this.addItem("05", "15", "2020", 53.278, 157776371, 52.69, 53.6699, 52.4368); + this.addItem("05", "18", "2020", 54.242, 175471412, 55.1854, 55.648, 53.592); + this.addItem("05", "19", "2020", 53.8674, 144547758, 54.3447, 54.8047, 53.7387); + this.addItem("05", "20", "2020", 54.3707, 109639010, 54.70, 55.0667, 54.12); + this.addItem("05", "21", "2020", 55.1734, 183818608, 54.40, 55.50, 53.0667); + this.addItem("05", "22", "2020", 54.4587, 149812050, 54.8116, 55.452, 54.1334); + this.addItem("05", "26", "2020", 54.5914, 121345979, 55.6334, 55.64, 54.3804); + this.addItem("05", "27", "2020", 54.682, 173242863, 54.724, 55.1807, 52.3334); + this.addItem("05", "28", "2020", 53.7207, 109136555, 54.234, 54.9834, 53.446); + this.addItem("05", "29", "2020", 55.6667, 177187261, 53.9167, 55.6667, 53.614); + this.addItem("06", "01", "2020", 59.8734, 226279387, 57.20, 59.9334, 56.94); + this.addItem("06", "02", "2020", 58.7707, 203483898, 59.6467, 60.5774, 58.0667); + this.addItem("06", "03", "2020", 58.864, 119241975, 59.208, 59.8627, 58.6734); + this.addItem("06", "04", "2020", 57.6254, 133315628, 59.3254, 59.7167, 57.2294); + this.addItem("06", "05", "2020", 59.044, 117178696, 58.5227, 59.1014, 57.7467); + this.addItem("06", "08", "2020", 63.328, 212620844, 61.2667, 63.3334, 60.6107); + this.addItem("06", "09", "2020", 62.7114, 170822165, 62.6674, 63.6294, 61.5954); + this.addItem("06", "10", "2020", 68.3367, 278451011, 66.1254, 68.4987, 65.50); + this.addItem("06", "11", "2020", 64.856, 238747081, 66.0134, 67.9307, 64.80); + this.addItem("06", "12", "2020", 62.352, 251450424, 65.3334, 65.8654, 60.84); + this.addItem("06", "15", "2020", 66.06, 235457582, 61.186, 66.5894, 60.5667); + this.addItem("06", "16", "2020", 65.4754, 210766095, 67.4567, 67.5254, 64.1594); + this.addItem("06", "17", "2020", 66.1194, 148361926, 65.8474, 67.00, 65.5048); + this.addItem("06", "18", "2020", 66.9307, 146278967, 66.8667, 67.9467, 66.2981); + this.addItem("06", "19", "2020", 66.7267, 130196170, 67.5187, 67.7314, 66.0894); + this.addItem("06", "22", "2020", 66.288, 95435202, 66.6634, 67.2587, 66.0014); + this.addItem("06", "23", "2020", 66.7854, 95479017, 66.592, 67.4667, 66.2674); + this.addItem("06", "24", "2020", 64.0567, 164393768, 66.274, 66.7257, 63.5428); + this.addItem("06", "25", "2020", 65.732, 138818166, 63.618, 65.732, 62.4767); + this.addItem("06", "26", "2020", 63.9827, 132823554, 66.3187, 66.3334, 63.658); + this.addItem("06", "29", "2020", 67.29, 135395992, 64.6007, 67.3334, 63.2347); + this.addItem("06", "30", "2020", 71.9874, 253777373, 67.10, 72.5127, 66.9154); + this.addItem("07", "01", "2020", 74.642, 199903400, 72.20, 75.6887, 72.0334); + this.addItem("07", "02", "2020", 80.5774, 258751671, 81.432, 81.8667, 79.04); + this.addItem("07", "06", "2020", 91.4387, 308547746, 85.1127, 91.8527, 84.403); + this.addItem("07", "07", "2020", 92.6574, 322344739, 93.6674, 95.30, 89.114); + this.addItem("07", "08", "2020", 91.0587, 244669528, 93.6667, 94.484, 87.4227); + this.addItem("07", "09", "2020", 92.952, 175763912, 93.1327, 93.904, 90.0854); + this.addItem("07", "10", "2020", 102.9767, 350063075, 93.0667, 103.2611, 91.7341); + this.addItem("07", "13", "2020", 99.804, 584780108, 110.6001, 119.6661, 98.0741); + this.addItem("07", "14", "2020", 101.1201, 351271924, 103.7334, 106.0001, 95.40); + this.addItem("07", "15", "2020", 103.0674, 245517327, 102.8667, 103.3334, 97.1334); + this.addItem("07", "16", "2020", 100.0427, 214511743, 98.4774, 102.1141, 97.7334); + this.addItem("07", "17", "2020", 100.0561, 139949510, 100.8967, 102.5007, 99.3334); + this.addItem("07", "20", "2020", 109.5334, 256820422, 101.2674, 110.0001, 99.20, "Q2", "Quarter Earnings"); + this.addItem("07", "21", "2020", 104.5574, 242359079, 109.3287, 111.6667, 103.8667); + this.addItem("07", "22", "2020", 106.1554, 212416094, 106.6001, 108.4281, 104.1334); + this.addItem("07", "23", "2020", 100.8714, 364927318, 111.9301, 112.6001, 98.718); + this.addItem("07", "24", "2020", 94.4667, 290949155, 94.4007, 97.6667, 91.1027); + this.addItem("07", "27", "2020", 102.6401, 240729930, 95.6667, 103.1961, 94.2001); + this.addItem("07", "28", "2020", 98.4327, 237130381, 100.2667, 104.3134, 98.2947); + this.addItem("07", "29", "2020", 99.9407, 141403324, 100.0667, 102.3207, 99.1334); + this.addItem("07", "30", "2020", 99.166, 114315528, 99.20, 100.8827, 98.0667); + this.addItem("07", "31", "2020", 95.384, 183704308, 101.0001, 101.1367, 94.732); + this.addItem("08", "03", "2020", 99.00, 132140124, 96.6134, 100.6541, 96.2923); + this.addItem("08", "04", "2020", 99.1334, 126224787, 99.6674, 101.8274, 97.4667); + this.addItem("08", "05", "2020", 99.0014, 74670188, 99.5327, 99.9893, 97.8874); + this.addItem("08", "06", "2020", 99.3054, 89884650, 99.3887, 101.1541, 98.484); + this.addItem("08", "07", "2020", 96.8474, 133446233, 99.9692, 99.9834, 94.334); + this.addItem("08", "10", "2020", 94.5714, 112833904, 96.5334, 97.1667, 92.3894); + this.addItem("08", "11", "2020", 91.626, 129387445, 93.0667, 94.6667, 91.00); + this.addItem("08", "12", "2020", 103.6507, 328482286, 98.00, 105.6667, 95.6667); + this.addItem("08", "13", "2020", 108.0667, 306379497, 107.4001, 110.0787, 104.4841); + this.addItem("08", "14", "2020", 110.0474, 188664056, 110.9994, 111.2534, 108.4427); + this.addItem("08", "17", "2020", 122.3761, 303634648, 111.8001, 123.0574, 111.5221); + this.addItem("08", "18", "2020", 125.8061, 247117226, 126.5994, 128.2601, 123.0074); + this.addItem("08", "19", "2020", 125.2354, 183079858, 124.3334, 127.4001, 122.7474); + this.addItem("08", "20", "2020", 133.4554, 309176845, 124.0454, 134.7994, 123.8041); + this.addItem("08", "21", "2020", 136.6654, 322343239, 136.3174, 139.6994, 135.0034); + this.addItem("08", "24", "2020", 134.2801, 300954150, 141.7517, 141.9334, 128.5014); + this.addItem("08", "25", "2020", 134.8894, 159883270, 131.6594, 135.1967, 131.2001); + this.addItem("08", "26", "2020", 143.5447, 213590593, 137.3334, 144.4001, 136.9087); + this.addItem("08", "27", "2020", 149.2501, 355395422, 145.3641, 153.0401, 142.8334); + this.addItem("08", "28", "2020", 147.5601, 301217549, 153.0081, 154.5661, 145.7681); + this.addItem("08", "31", "2020", 166.1067, 355123236, 148.2033, 166.7133, 146.7033, "S", "5-to-1 Stock Split"); + this.addItem("09", "01", "2020", 158.35, 270358287, 167.38, 167.4966, 156.8367); + this.addItem("09", "02", "2020", 149.1233, 288528419, 159.6633, 159.68, 135.0402); + this.addItem("09", "03", "2020", 135.6667, 262788296, 135.7433, 143.9333, 134.00); + this.addItem("09", "04", "2020", 139.44, 330965733, 134.27, 142.6667, 124.0067); + this.addItem("09", "08", "2020", 110.07, 346397135, 118.6667, 122.9133, 109.96); + this.addItem("09", "09", "2020", 122.0933, 238397334, 118.8667, 123.00, 113.8367); + this.addItem("09", "10", "2020", 123.78, 254791855, 128.7367, 132.9967, 120.1867); + this.addItem("09", "11", "2020", 124.24, 182152398, 127.3133, 127.50, 120.1667); + this.addItem("09", "14", "2020", 139.8733, 249061855, 126.9833, 140.00, 124.4333); + this.addItem("09", "15", "2020", 149.92, 291894719, 145.52, 153.98, 143.5667); + this.addItem("09", "16", "2020", 147.2533, 217640302, 146.6233, 152.5967, 145.1033); + this.addItem("09", "17", "2020", 141.1433, 230337503, 138.5333, 145.93, 136.00); + this.addItem("09", "18", "2020", 147.3833, 259220486, 149.3133, 150.3333, 142.9333); + this.addItem("09", "21", "2020", 149.7967, 328430433, 151.0433, 151.8933, 135.69); + this.addItem("09", "22", "2020", 141.41, 238742424, 143.20, 145.92, 139.20); + this.addItem("09", "23", "2020", 126.7867, 285222569, 135.0533, 137.3833, 125.2934); + this.addItem("09", "24", "2020", 129.2633, 289683209, 121.2667, 133.1667, 117.10); + this.addItem("09", "25", "2020", 135.78, 201625400, 131.1567, 136.2441, 130.4333); + this.addItem("09", "28", "2020", 140.40, 149158695, 141.54, 142.6933, 138.5167); + this.addItem("09", "29", "2020", 139.69, 151024215, 138.6667, 142.8333, 137.20); + this.addItem("09", "30", "2020", 143.0033, 144436724, 140.44, 144.6433, 140.1567); + this.addItem("10", "01", "2020", 149.3867, 152224365, 146.92, 149.6267, 144.8067); + this.addItem("10", "02", "2020", 138.3633, 214290111, 140.4633, 146.3767, 138.3333); + this.addItem("10", "05", "2020", 141.8933, 134168383, 141.1167, 144.5467, 139.7767); + this.addItem("10", "06", "2020", 137.9933, 147438795, 141.2633, 142.9266, 135.35); + this.addItem("10", "07", "2020", 141.7667, 129383143, 139.9567, 143.30, 137.9483); + this.addItem("10", "08", "2020", 141.9733, 121263372, 146.1467, 146.3333, 141.7667); + this.addItem("10", "09", "2020", 144.6667, 86776989, 143.3767, 144.8633, 142.1534); + this.addItem("10", "12", "2020", 147.4333, 116373402, 147.3333, 149.58, 146.1933); + this.addItem("10", "13", "2020", 148.8833, 103391020, 147.7833, 149.63, 145.5333); + this.addItem("10", "14", "2020", 153.7667, 144136184, 149.9267, 155.30, 149.1167); + this.addItem("10", "15", "2020", 149.6267, 107017061, 150.1033, 152.19, 147.50); + this.addItem("10", "16", "2020", 146.5567, 98327650, 151.48, 151.9833, 146.2833); + this.addItem("10", "19", "2020", 143.61, 108863531, 148.7467, 149.00, 142.9567); + this.addItem("10", "20", "2020", 140.6467, 94968879, 143.9167, 143.9167, 139.6834, "Q3", "Quarter Earnings"); + this.addItem("10", "21", "2020", 140.88, 97111390, 140.90, 144.3167, 140.4167); + this.addItem("10", "22", "2020", 141.93, 119979582, 147.3067, 148.41, 141.5033); + this.addItem("10", "23", "2020", 140.21, 101150950, 140.6133, 140.962, 135.7934); + this.addItem("10", "26", "2020", 140.0933, 84717488, 137.21, 141.92, 136.6667); + this.addItem("10", "27", "2020", 141.56, 68059537, 141.2533, 143.50, 140.0333); + this.addItem("10", "28", "2020", 135.34, 76354238, 138.8267, 139.5333, 135.3333); + this.addItem("10", "29", "2020", 136.9433, 67965937, 136.6533, 139.3533, 135.4867); + this.addItem("10", "30", "2020", 129.3467, 127762933, 135.6318, 135.8638, 126.37); + this.addItem("11", "02", "2020", 133.5033, 87063369, 131.3333, 135.66, 130.7667); + this.addItem("11", "03", "2020", 141.30, 103055170, 136.5767, 142.59, 135.5633); + this.addItem("11", "04", "2020", 140.3267, 96429190, 143.54, 145.1333, 139.0333); + this.addItem("11", "05", "2020", 146.03, 85243569, 142.7667, 146.6667, 141.3334); + this.addItem("11", "06", "2020", 143.3167, 65118037, 145.3667, 145.5233, 141.4267); + this.addItem("11", "09", "2020", 140.42, 104499100, 146.50, 150.8333, 140.3333); + this.addItem("11", "10", "2020", 136.7867, 90852669, 140.03, 140.03, 132.01); + this.addItem("11", "11", "2020", 139.0433, 52073165, 138.8167, 139.565, 136.86); + this.addItem("11", "12", "2020", 137.2533, 59821506, 138.35, 141.00, 136.5067); + this.addItem("11", "13", "2020", 136.1667, 59491056, 136.95, 137.5106, 133.8867); + this.addItem("11", "16", "2020", 136.03, 80515928, 136.31, 137.4833, 134.6956); + this.addItem("11", "17", "2020", 147.2033, 183564858, 153.39, 154.00, 144.3367); + this.addItem("11", "18", "2020", 162.2133, 234132083, 149.45, 165.3333, 147.8334); + this.addItem("11", "19", "2020", 166.4233, 187426069, 164.00, 169.537, 162.5233); + this.addItem("11", "20", "2020", 163.2033, 98735770, 165.9967, 167.50, 163.02); + this.addItem("11", "23", "2020", 173.95, 150780915, 167.8333, 175.3333, 167.2633); + this.addItem("11", "24", "2020", 185.1266, 160945486, 180.1333, 186.6633, 175.40); + this.addItem("11", "25", "2020", 191.3333, 146790495, 183.3533, 191.3333, 181.79); + this.addItem("11", "27", "2020", 195.2533, 112683251, 193.72, 199.5933, 192.8166); + this.addItem("11", "30", "2020", 189.20, 189009169, 200.7366, 202.60, 184.8366); + this.addItem("12", "01", "2020", 194.92, 121148502, 199.1966, 199.2833, 190.6833); + this.addItem("12", "02", "2020", 189.6066, 143326964, 185.48, 190.5133, 180.4033); + this.addItem("12", "03", "2020", 197.7933, 127656013, 196.6733, 199.6566, 194.1433); + this.addItem("12", "04", "2020", 199.68, 88203939, 197.0033, 199.68, 195.1666); + this.addItem("12", "07", "2020", 213.92, 168929147, 201.6399, 216.2618, 201.0166); + this.addItem("12", "08", "2020", 216.6266, 192795109, 208.5016, 217.0933, 206.1666); + this.addItem("12", "09", "2020", 201.4933, 213873591, 217.8966, 218.1066, 196.00); + this.addItem("12", "10", "2020", 209.0233, 201249470, 191.4566, 209.25, 188.78); + this.addItem("12", "11", "2020", 203.33, 139424924, 205.0033, 208.00, 198.9333); + this.addItem("12", "14", "2020", 213.2766, 156121966, 206.3333, 214.2499, 203.40); + this.addItem("12", "15", "2020", 211.0833, 135670694, 214.4266, 215.6333, 207.9333); + this.addItem("12", "16", "2020", 207.59, 126287443, 209.41, 210.8333, 201.6666); + this.addItem("12", "17", "2020", 218.6333, 168810437, 209.3966, 219.6066, 206.50); + this.addItem("12", "18", "2020", 231.6666, 666378667, 222.9666, 231.6666, 209.5133); + this.addItem("12", "21", "2020", 216.62, 174135797, 222.08, 222.8333, 215.3566); + this.addItem("12", "22", "2020", 213.4466, 155584936, 216.00, 216.6266, 204.7433); + this.addItem("12", "23", "2020", 215.3266, 99518920, 210.7333, 217.1666, 207.5233); + this.addItem("12", "24", "2020", 220.59, 68596717, 214.33, 222.03, 213.6666); + this.addItem("12", "28", "2020", 221.23, 96835690, 224.8366, 227.1333, 220.2666); + this.addItem("12", "29", "2020", 221.9966, 68732437, 220.3333, 223.30, 218.3333); + this.addItem("12", "30", "2020", 231.5933, 128538073, 224.00, 232.20, 222.7867); + this.addItem("12", "31", "2020", 235.2233, 148949805, 233.33, 239.5733, 230.3733); + this.addItem("01", "04", "2021", 243.2566, 145914585, 239.82, 248.1633, 239.0631); + this.addItem("01", "05", "2021", 245.0366, 96735520, 241.22, 246.9466, 239.7333); + this.addItem("01", "06", "2021", 251.9933, 134099923, 252.83, 258.00, 249.70); + this.addItem("01", "07", "2021", 272.0133, 154496865, 259.21, 272.33, 258.40); + this.addItem("01", "08", "2021", 293.34, 225166613, 285.3333, 294.83, 279.4633); + this.addItem("01", "11", "2021", 270.3966, 178662468, 283.1333, 284.81, 267.874); + this.addItem("01", "12", "2021", 283.1466, 138812174, 277.00, 289.3333, 275.78); + this.addItem("01", "13", "2021", 284.8033, 99937510, 284.2533, 286.8233, 277.3333); + this.addItem("01", "14", "2021", 281.6666, 93798999, 281.13, 287.6666, 279.5833); + this.addItem("01", "15", "2021", 275.3866, 116332812, 284.00, 286.6333, 273.0333); + this.addItem("01", "19", "2021", 281.5166, 76100948, 279.2666, 283.3333, 277.6666); + this.addItem("01", "20", "2021", 283.4833, 76997648, 286.2466, 286.50, 279.0933); + this.addItem("01", "21", "2021", 281.6633, 61794396, 285.00, 285.2399, 280.4733); + this.addItem("01", "22", "2021", 282.2133, 60199506, 278.1033, 282.6666, 276.2066, "Q4", "Quarter Earnings"); + this.addItem("01", "25", "2021", 293.60, 123520212, 285.00, 300.1333, 279.6067); + this.addItem("01", "26", "2021", 294.3633, 69394807, 297.1266, 298.6333, 290.5333); + this.addItem("01", "27", "2021", 288.0533, 82001888, 290.1166, 297.1666, 286.22); + this.addItem("01", "28", "2021", 278.4766, 79134158, 273.3333, 282.6666, 267.00); + this.addItem("01", "29", "2021", 264.51, 104972260, 276.6666, 280.8033, 260.0333); + this.addItem("02", "01", "2021", 279.9366, 76174178, 271.43, 280.6666, 265.1867); + this.addItem("02", "02", "2021", 290.93, 73038637, 281.56, 293.50, 280.7335); + this.addItem("02", "03", "2021", 284.8966, 55030536, 292.34, 292.6933, 284.3548); + this.addItem("02", "04", "2021", 283.33, 47437985, 285.00, 285.50, 277.8066); + this.addItem("02", "05", "2021", 284.0766, 55699926, 281.6666, 288.2566, 279.6566); + this.addItem("02", "08", "2021", 287.8066, 60485166, 289.89, 292.59, 284.9166); + this.addItem("02", "09", "2021", 283.1533, 45472955, 285.04, 286.60, 280.5833); + this.addItem("02", "10", "2021", 268.2733, 108648281, 281.2116, 281.6066, 266.6733); + this.addItem("02", "11", "2021", 270.5533, 64868256, 270.8133, 276.6266, 267.2416); + this.addItem("02", "12", "2021", 272.04, 71304937, 267.0866, 272.4433, 261.7768); + this.addItem("02", "16", "2021", 265.4066, 59406966, 272.6666, 273.6666, 264.1466); + this.addItem("02", "17", "2021", 266.05, 78236708, 259.6966, 266.6133, 254.0033); + this.addItem("02", "18", "2021", 262.46, 53871185, 260.30, 264.8966, 258.7566); + this.addItem("02", "19", "2021", 260.4333, 56874786, 265.00, 265.5966, 259.1233); + this.addItem("02", "22", "2021", 238.1666, 111809171, 254.2133, 256.1666, 236.7333); + this.addItem("02", "23", "2021", 232.9466, 199820660, 220.71, 237.8699, 206.3333); + this.addItem("02", "24", "2021", 247.34, 110300861, 237.2833, 248.3333, 231.39); + this.addItem("02", "25", "2021", 227.4066, 117071592, 242.05, 245.7355, 223.5266); + this.addItem("02", "26", "2021", 225.1666, 123267522, 233.3333, 235.5666, 219.8366); + this.addItem("03", "01", "2021", 239.4766, 81408728, 230.0366, 290.6666, 228.35); + this.addItem("03", "02", "2021", 228.8133, 71196487, 239.4266, 240.37, 228.3333); + this.addItem("03", "03", "2021", 217.7333, 90623889, 229.33, 233.5666, 217.235); + this.addItem("03", "04", "2021", 207.1466, 197758610, 218.60, 291.3133, 200.00); + this.addItem("03", "05", "2021", 199.3166, 268189407, 208.6866, 209.2806, 179.83); + this.addItem("03", "08", "2021", 187.6666, 155360896, 200.1833, 206.7083, 186.2633); + this.addItem("03", "09", "2021", 224.5266, 202570010, 202.7266, 226.03, 198.4033); + this.addItem("03", "10", "2021", 222.6866, 181817028, 233.4333, 239.2833, 218.3533); + this.addItem("03", "11", "2021", 233.20, 108761681, 233.1333, 234.1666, 225.7266); + this.addItem("03", "12", "2021", 231.2433, 100751530, 223.3333, 231.6266, 222.0464); + this.addItem("03", "15", "2021", 235.98, 88270449, 231.3633, 237.7266, 228.0133); + this.addItem("03", "16", "2021", 225.6266, 96587020, 234.45, 235.9733, 223.6666); + this.addItem("03", "17", "2021", 233.9366, 121117362, 218.9566, 234.5766, 217.0033); + this.addItem("03", "18", "2021", 217.72, 100107070, 228.0966, 229.7433, 217.3333); + this.addItem("03", "19", "2021", 218.29, 128681953, 215.5333, 219.0766, 208.2067); + this.addItem("03", "22", "2021", 223.3333, 118536672, 228.1966, 233.2066, 222.9166); + this.addItem("03", "23", "2021", 220.72, 91475619, 225.2566, 225.9333, 219.17); + this.addItem("03", "24", "2021", 210.09, 101385520, 222.6366, 222.6733, 210.0366); + this.addItem("03", "25", "2021", 213.4633, 117674562, 204.3333, 215.1666, 203.1666); + this.addItem("03", "26", "2021", 206.2366, 101558500, 213.9566, 214.6066, 199.9633); + this.addItem("03", "29", "2021", 203.7633, 85910979, 205.2133, 205.4933, 198.6733); + this.addItem("03", "30", "2021", 211.8733, 118297092, 200.5833, 212.5533, 197.0033); + this.addItem("03", "31", "2021", 222.6433, 100011880, 215.54, 224.00, 213.7033); + this.addItem("04", "01", "2021", 220.5833, 105895151, 229.4566, 230.8067, 219.8066); + this.addItem("04", "05", "2021", 230.35, 125528323, 235.9033, 236.0533, 228.2333); + this.addItem("04", "06", "2021", 230.54, 84815528, 230.10, 232.1833, 227.1233); + this.addItem("04", "07", "2021", 223.6566, 78928298, 229.00, 230.46, 222.6133); + this.addItem("04", "08", "2021", 227.9333, 71772997, 225.7933, 229.8499, 223.8816); + this.addItem("04", "09", "2021", 225.6733, 64311276, 225.9233, 226.99, 223.1433); + this.addItem("04", "12", "2021", 233.9933, 87407019, 228.5666, 234.9333, 227.3633); + this.addItem("04", "13", "2021", 254.1066, 133958443, 237.5666, 254.3333, 236.8866); + this.addItem("04", "14", "2021", 244.0766, 147052305, 256.90, 260.2633, 242.6766); + this.addItem("04", "15", "2021", 246.2833, 83546708, 247.70, 247.8966, 240.4366); + this.addItem("04", "16", "2021", 246.5933, 83938598, 242.8833, 249.8033, 241.5333); + this.addItem("04", "19", "2021", 238.21, 119058702, 239.8666, 241.80, 230.60); + this.addItem("04", "20", "2021", 239.6633, 106827131, 239.14, 245.75, 236.895, "Q1", "Quarter Earnings"); + this.addItem("04", "21", "2021", 248.04, 93646539, 234.9233, 248.28, 232.6666); + this.addItem("04", "22", "2021", 239.8966, 106770791, 247.1666, 251.2566, 239.3466); + this.addItem("04", "23", "2021", 243.1333, 85241679, 239.9333, 245.7866, 238.4866); + this.addItem("04", "26", "2021", 246.0666, 93115509, 247.00, 249.7666, 244.2017); + this.addItem("04", "27", "2021", 234.9133, 88311009, 239.32, 241.3333, 234.45); + this.addItem("04", "28", "2021", 231.4666, 66813157, 232.1366, 236.1666, 231.20); + this.addItem("04", "29", "2021", 225.6666, 86536359, 233.17, 234.0833, 222.8334); + this.addItem("04", "30", "2021", 236.48, 122276172, 222.53, 238.49, 222.0466); + this.addItem("05", "03", "2021", 228.30, 81129428, 234.60, 235.3333, 226.8333); + this.addItem("05", "04", "2021", 224.5333, 89217969, 226.3133, 227.8154, 219.2336); + this.addItem("05", "05", "2021", 223.6466, 65705677, 227.02, 228.4318, 222.4466); + this.addItem("05", "06", "2021", 221.18, 83353868, 226.92, 227.0066, 216.6666); + this.addItem("05", "07", "2021", 224.1233, 70407517, 221.9333, 230.00, 220.0733); + this.addItem("05", "10", "2021", 209.68, 94177269, 221.6333, 221.6833, 209.2033); + this.addItem("05", "11", "2021", 205.7333, 139511714, 199.7466, 209.0333, 198.5333); + this.addItem("05", "12", "2021", 196.63, 101470960, 200.83, 206.8033, 195.5883); + this.addItem("05", "13", "2021", 190.5633, 132554773, 200.515, 202.1533, 186.55); + this.addItem("05", "14", "2021", 196.58, 100112590, 194.47, 197.6233, 190.1533); + this.addItem("05", "17", "2021", 192.2766, 96743410, 191.851, 196.5766, 187.0666); + this.addItem("05", "18", "2021", 192.6233, 110491721, 189.3333, 198.75, 187.7933); + this.addItem("05", "19", "2021", 187.82, 118735212, 184.1833, 188.7366, 182.3266); + this.addItem("05", "20", "2021", 195.5933, 92463369, 191.6666, 196.2833, 190.3566); + this.addItem("05", "21", "2021", 193.6266, 78091808, 198.7033, 198.8933, 193.3333); + this.addItem("05", "24", "2021", 202.1466, 103674280, 193.8666, 204.8266, 191.2166); + this.addItem("05", "25", "2021", 201.5633, 84017798, 202.4366, 204.6633, 198.57); + this.addItem("05", "26", "2021", 206.3766, 85917939, 202.52, 208.7233, 200.50); + this.addItem("05", "27", "2021", 210.2833, 79111778, 206.7466, 210.3766, 205.4033); + this.addItem("05", "28", "2021", 208.4066, 68211127, 209.50, 211.8633, 207.46); + this.addItem("06", "01", "2021", 207.9666, 54254675, 209.2666, 211.2666, 206.85); + this.addItem("06", "02", "2021", 201.7066, 69908347, 206.71, 207.7866, 199.7133); + this.addItem("06", "03", "2021", 190.9466, 90335679, 200.60, 201.5166, 190.4066); + this.addItem("06", "04", "2021", 199.6833, 72110707, 193.2366, 200.2033, 192.40); + this.addItem("06", "07", "2021", 201.71, 67631047, 197.275, 203.3333, 194.2933); + this.addItem("06", "08", "2021", 201.1966, 78160238, 207.67, 207.6966, 198.50); + this.addItem("06", "09", "2021", 199.5933, 49753715, 200.7233, 203.93, 199.21); + this.addItem("06", "10", "2021", 203.3733, 71758837, 201.2933, 205.53, 200.1666); + this.addItem("06", "11", "2021", 203.2966, 48615905, 203.41, 204.1866, 200.5066); + this.addItem("06", "14", "2021", 205.8966, 61271946, 204.0766, 208.4966, 203.06); + this.addItem("06", "15", "2021", 199.7866, 53292455, 205.5633, 205.5966, 199.41); + this.addItem("06", "16", "2021", 201.6233, 66432397, 199.1783, 202.8333, 197.8333); + this.addItem("06", "17", "2021", 205.5333, 68104057, 200.6293, 207.1566, 200.4466); + this.addItem("06", "18", "2021", 207.77, 73682737, 204.4566, 209.45, 203.9333); + this.addItem("06", "21", "2021", 206.9433, 74438227, 208.16, 210.4633, 202.96); + this.addItem("06", "22", "2021", 207.9033, 57476676, 206.0833, 209.5231, 205.1666); + this.addItem("06", "23", "2021", 218.8566, 93297699, 210.6666, 219.068, 210.0133); + this.addItem("06", "24", "2021", 226.6066, 137947184, 224.9966, 232.54, 222.5366); + this.addItem("06", "25", "2021", 223.9566, 97490140, 229.86, 231.27, 222.90); + this.addItem("06", "28", "2021", 229.5733, 64884486, 223.88, 231.5666, 223.44); + this.addItem("06", "29", "2021", 226.92, 52143935, 228.2166, 229.1699, 225.2966); + this.addItem("06", "30", "2021", 226.5666, 56774586, 226.59, 230.9366, 226.0466); + this.addItem("07", "01", "2021", 225.9733, 55903566, 227.9733, 229.33, 224.2666); + this.addItem("07", "02", "2021", 226.30, 81292118, 226.3266, 233.3333, 224.42); + this.addItem("07", "06", "2021", 219.86, 69853357, 227.2371, 228.00, 217.1334); + this.addItem("07", "07", "2021", 214.8833, 56375886, 221.4233, 221.90, 212.7733); + this.addItem("07", "08", "2021", 217.6033, 68319967, 209.4566, 218.1433, 206.82); + this.addItem("07", "09", "2021", 218.9833, 54421655, 217.7283, 219.6366, 214.8966); + this.addItem("07", "12", "2021", 228.5666, 77781128, 220.7333, 229.08, 220.7203); + this.addItem("07", "13", "2021", 222.8466, 62898276, 228.7733, 231.0933, 222.0986); + this.addItem("07", "14", "2021", 217.7933, 64923576, 223.5833, 226.2033, 217.6133); + this.addItem("07", "15", "2021", 216.8666, 60628716, 219.4633, 222.0466, 212.6266); + this.addItem("07", "16", "2021", 214.74, 49112915, 218.2266, 218.8999, 214.0666); + this.addItem("07", "19", "2021", 215.4066, 63891276, 209.9633, 215.7333, 207.0966); + this.addItem("07", "20", "2021", 220.1666, 46461395, 217.33, 220.7972, 213.5003, "Q2", "Quarter Earnings"); + this.addItem("07", "21", "2021", 218.43, 41860024, 219.87, 221.6199, 216.7633); + this.addItem("07", "22", "2021", 216.42, 45317195, 218.8142, 220.7233, 214.8667); + this.addItem("07", "23", "2021", 214.46, 43814824, 215.4533, 216.2666, 212.4333); + this.addItem("07", "26", "2021", 219.2066, 76009688, 216.99, 222.7333, 215.7033); + this.addItem("07", "27", "2021", 214.9266, 98439880, 221.1333, 222.1666, 209.08); + this.addItem("07", "28", "2021", 215.66, 48019805, 215.665, 218.3233, 213.1333); + this.addItem("07", "29", "2021", 225.7833, 91183929, 216.5966, 227.8966, 216.2666); + this.addItem("07", "30", "2021", 229.0666, 88969239, 223.9193, 232.51, 223.00); + this.addItem("08", "02", "2021", 236.5566, 100847320, 233.3333, 242.3133, 232.80); + this.addItem("08", "03", "2021", 236.58, 64860756, 239.6666, 240.8833, 233.67); + this.addItem("08", "04", "2021", 236.9733, 51007955, 237.00, 241.6333, 236.31); + this.addItem("08", "05", "2021", 238.21, 38758924, 238.6666, 240.3166, 237.1366); + this.addItem("08", "06", "2021", 233.0333, 46869155, 237.30, 238.7766, 232.5433); + this.addItem("08", "09", "2021", 237.92, 44146054, 236.7233, 239.6766, 235.0433); + this.addItem("08", "10", "2021", 236.6633, 40296934, 237.9966, 238.8633, 233.96); + this.addItem("08", "11", "2021", 235.94, 29401677, 237.57, 238.3933, 234.7366); + this.addItem("08", "12", "2021", 240.75, 53045075, 235.4466, 240.9333, 233.1333); + this.addItem("08", "13", "2021", 239.0566, 50194415, 241.2366, 243.30, 238.1133); + this.addItem("08", "16", "2021", 228.7233, 69309907, 235.0233, 236.50, 225.4666); + this.addItem("08", "17", "2021", 221.9033, 71163847, 224.22, 224.86, 216.28); + this.addItem("08", "18", "2021", 229.6633, 61048146, 223.2493, 231.9233, 223.1166); + this.addItem("08", "19", "2021", 224.49, 42940474, 226.07, 228.85, 222.53); + this.addItem("08", "20", "2021", 226.7533, 44525614, 227.6166, 230.7099, 224.5666); + this.addItem("08", "23", "2021", 235.4333, 60794586, 228.4806, 237.3766, 226.9168); + this.addItem("08", "24", "2021", 236.1633, 39249214, 236.8933, 238.4066, 234.2133); + this.addItem("08", "25", "2021", 237.0666, 37936684, 235.6766, 238.99, 234.6666); + this.addItem("08", "26", "2021", 233.72, 39642874, 236.1033, 238.4666, 232.54); + this.addItem("08", "27", "2021", 237.3066, 41501284, 235.00, 238.3333, 234.0333); + this.addItem("08", "30", "2021", 243.6366, 55812666, 238.2383, 243.6666, 237.5766); + this.addItem("08", "31", "2021", 245.24, 62566326, 244.3333, 246.7966, 242.1466); + this.addItem("09", "01", "2021", 244.6966, 39613024, 244.6933, 247.33, 243.7567); + this.addItem("09", "02", "2021", 244.13, 38390224, 244.8333, 246.99, 243.5133); + this.addItem("09", "03", "2021", 244.5233, 45813155, 244.083, 244.6666, 241.40); + this.addItem("09", "07", "2021", 250.9733, 60119496, 246.6666, 253.40, 246.42); + this.addItem("09", "08", "2021", 251.29, 56379126, 253.86, 254.8166, 246.9244); + this.addItem("09", "09", "2021", 251.62, 42233194, 251.1366, 254.0333, 250.5433); + this.addItem("09", "10", "2021", 245.4233, 45552515, 253.20, 254.2033, 244.84); + this.addItem("09", "13", "2021", 247.6666, 68857447, 246.738, 248.26, 236.2833); + this.addItem("09", "14", "2021", 248.1633, 55574646, 247.5233, 251.49, 245.4666); + this.addItem("09", "15", "2021", 251.9433, 46073075, 248.3333, 252.2866, 246.12); + this.addItem("09", "16", "2021", 252.33, 41770174, 250.9433, 252.97, 249.2033); + this.addItem("09", "17", "2021", 253.1633, 84612548, 252.3833, 253.68, 250.00); + this.addItem("09", "20", "2021", 243.39, 74272957, 244.8525, 247.3333, 239.5416); + this.addItem("09", "21", "2021", 246.46, 48992165, 244.93, 248.2466, 243.48); + this.addItem("09", "22", "2021", 250.6466, 45378815, 247.8421, 251.2233, 246.3733); + this.addItem("09", "23", "2021", 251.2133, 35842594, 251.6666, 252.7333, 249.3066); + this.addItem("09", "24", "2021", 258.13, 64119066, 248.63, 258.2666, 248.1866); + this.addItem("09", "27", "2021", 263.7866, 84211988, 257.7066, 266.3333, 256.4366); + this.addItem("09", "28", "2021", 259.1866, 76144268, 262.40, 265.2133, 255.3933); + this.addItem("09", "29", "2021", 260.4366, 62828646, 259.9333, 264.50, 256.8933); + this.addItem("09", "30", "2021", 258.4933, 53867885, 260.3333, 263.0435, 258.3333); + this.addItem("10", "01", "2021", 258.4066, 51094235, 259.4666, 260.26, 254.53); + this.addItem("10", "04", "2021", 260.51, 91450029, 265.50, 268.9899, 258.7066); + this.addItem("10", "05", "2021", 260.1966, 55297896, 261.5986, 265.77, 258.0666); + this.addItem("10", "06", "2021", 260.9166, 43898314, 258.7333, 262.22, 257.74); + this.addItem("10", "07", "2021", 264.5366, 57587346, 261.82, 268.3333, 261.1266); + this.addItem("10", "08", "2021", 261.83, 50215805, 265.4033, 265.46, 260.3033); + this.addItem("10", "11", "2021", 263.98, 42600964, 262.55, 267.08, 261.8333); + this.addItem("10", "12", "2021", 268.5733, 66060127, 266.9766, 270.7733, 265.5233); + this.addItem("10", "13", "2021", 270.36, 42360244, 270.1566, 271.8033, 268.5933); + this.addItem("10", "14", "2021", 272.7733, 36741514, 271.83, 273.4166, 271.1167); + this.addItem("10", "15", "2021", 281.01, 56773716, 274.5793, 281.07, 274.1166); + this.addItem("10", "18", "2021", 290.0366, 72621727, 283.93, 291.7533, 283.8233); + this.addItem("10", "19", "2021", 288.09, 52143395, 292.51, 292.65, 287.5033, "Q3", "Quarter Earnings"); + this.addItem("10", "20", "2021", 288.60, 42096154, 288.45, 289.83, 285.7933); + this.addItem("10", "21", "2021", 298.00, 94444359, 285.3333, 300.00, 285.1682); + this.addItem("10", "22", "2021", 303.2266, 68642527, 298.50, 303.3333, 296.9866); + this.addItem("10", "25", "2021", 341.62, 188556319, 316.8433, 348.34, 314.7333); + this.addItem("10", "26", "2021", 339.4766, 187244929, 341.5633, 364.98, 333.8133); + this.addItem("10", "27", "2021", 345.9533, 115579392, 346.5533, 356.96, 343.5933); + this.addItem("10", "28", "2021", 359.0133, 81639518, 356.1016, 360.3333, 351.40); + this.addItem("10", "29", "2021", 371.3333, 89755269, 360.62, 371.7366, 357.735); + this.addItem("11", "01", "2021", 402.8633, 168146177, 381.6666, 403.25, 372.8866); + this.addItem("11", "02", "2021", 390.6666, 128213413, 386.4516, 402.8633, 382.00); + this.addItem("11", "03", "2021", 404.62, 103885570, 392.4433, 405.13, 384.2066); + this.addItem("11", "04", "2021", 409.97, 76192238, 411.47, 414.4966, 405.6666); + this.addItem("11", "05", "2021", 407.3633, 64886436, 409.3333, 413.29, 402.6666); + this.addItem("11", "08", "2021", 387.6466, 100337170, 383.2616, 399.00, 377.6666); + this.addItem("11", "09", "2021", 341.1666, 177317538, 391.20, 391.50, 337.1733); + this.addItem("11", "10", "2021", 355.9833, 128408173, 336.8033, 359.3666, 329.1033); + this.addItem("11", "11", "2021", 354.5033, 67189717, 367.59, 368.3233, 351.56); + this.addItem("11", "12", "2021", 344.4733, 76719458, 349.1666, 351.50, 339.7333); + this.addItem("11", "15", "2021", 337.7966, 104326960, 339.21, 343.9933, 326.20); + this.addItem("11", "16", "2021", 351.5766, 79627088, 334.4366, 352.3999, 334.06); + this.addItem("11", "17", "2021", 363.0033, 94336119, 354.5033, 373.2133, 351.8333); + this.addItem("11", "18", "2021", 365.46, 62696796, 368.85, 370.6666, 358.34); + this.addItem("11", "19", "2021", 379.02, 64926786, 366.29, 379.5733, 364.2333); + this.addItem("11", "22", "2021", 385.6233, 99217540, 387.4433, 400.65, 377.4766); + this.addItem("11", "23", "2021", 369.6766, 108515111, 389.17, 393.4999, 354.2333); + this.addItem("11", "24", "2021", 372.00, 67680727, 360.13, 377.59, 354.00); + this.addItem("11", "26", "2021", 360.64, 35042674, 366.49, 369.5942, 360.3333); + this.addItem("11", "29", "2021", 378.9966, 58393416, 366.9966, 380.89, 366.73); + this.addItem("11", "30", "2021", 381.5866, 81276128, 381.4566, 389.3333, 372.6666); + this.addItem("12", "01", "2021", 365.00, 68804107, 386.8983, 390.9466, 363.5866); + this.addItem("12", "02", "2021", 361.5333, 73114867, 366.3533, 371.00, 352.2166); + this.addItem("12", "03", "2021", 338.3233, 92322009, 361.5966, 363.5251, 333.4033); + this.addItem("12", "06", "2021", 336.3366, 81663128, 333.8366, 340.5466, 316.8333); + this.addItem("12", "07", "2021", 350.5833, 56084586, 348.0666, 352.5579, 342.27); + this.addItem("12", "08", "2021", 356.32, 41906374, 350.9033, 357.46, 344.3333); + this.addItem("12", "09", "2021", 334.60, 59438496, 353.5466, 354.1633, 334.12); + this.addItem("12", "10", "2021", 339.01, 59664366, 336.25, 340.3265, 327.51); + this.addItem("12", "13", "2021", 322.1366, 78595508, 333.6966, 335.00, 317.14); + this.addItem("12", "14", "2021", 319.5033, 70806277, 315.00, 322.1366, 310.00); + this.addItem("12", "15", "2021", 325.33, 75169238, 317.7366, 326.2499, 309.4167); + this.addItem("12", "16", "2021", 308.9733, 82771448, 331.50, 331.66, 307.2833); + this.addItem("12", "17", "2021", 310.8566, 100880260, 304.9233, 320.2199, 303.0133); + this.addItem("12", "20", "2021", 299.98, 56480016, 303.5666, 307.2294, 297.7966); + this.addItem("12", "21", "2021", 312.8433, 71517937, 305.6233, 313.1666, 295.3733); + this.addItem("12", "22", "2021", 336.29, 93634089, 321.8866, 338.5533, 319.0166); + this.addItem("12", "23", "2021", 355.6666, 92713299, 335.60, 357.6589, 332.52); + this.addItem("12", "27", "2021", 364.6466, 71145817, 357.89, 372.3333, 356.905); + this.addItem("12", "28", "2021", 362.8233, 60323916, 369.83, 372.9999, 359.4733); + this.addItem("12", "29", "2021", 362.0633, 56154066, 366.2133, 368.00, 354.7133); + this.addItem("12", "30", "2021", 356.78, 47040935, 353.7766, 365.1833, 351.05); + this.addItem("12", "31", "2021", 352.26, 40733644, 357.8148, 360.6666, 351.53); + this.addItem("01", "03", "2022", 399.9266, 104686060, 382.5833, 400.3566, 378.68); + this.addItem("01", "04", "2022", 383.1966, 100248280, 396.5166, 402.6666, 374.35); + this.addItem("01", "05", "2022", 362.7066, 80119808, 382.2166, 390.1133, 360.3367); + this.addItem("01", "06", "2022", 354.90, 90336489, 359.00, 362.6666, 340.1666); + this.addItem("01", "07", "2022", 342.32, 84164768, 360.1233, 360.3099, 336.6666); + this.addItem("01", "10", "2022", 352.7066, 91814889, 333.3333, 353.0333, 326.6666); + this.addItem("01", "11", "2022", 354.80, 66063217, 351.2233, 358.6166, 346.2733); + this.addItem("01", "12", "2022", 368.74, 83739038, 359.6166, 371.6133, 357.53); + this.addItem("01", "13", "2022", 343.8533, 97209790, 369.6883, 371.8666, 342.1797); + this.addItem("01", "14", "2022", 349.87, 72924427, 339.96, 350.6666, 337.7929); + this.addItem("01", "18", "2022", 343.5033, 66989407, 342.2016, 356.9299, 338.6866); + this.addItem("01", "19", "2022", 331.8833, 75442508, 347.235, 351.5566, 331.6666); + this.addItem("01", "20", "2022", 332.09, 70488757, 336.5766, 347.22, 331.3333); + this.addItem("01", "21", "2022", 314.6333, 103416040, 332.1133, 334.85, 313.50); + this.addItem("01", "24", "2022", 310.00, 152375145, 301.5866, 311.171, 283.8233); + this.addItem("01", "25", "2022", 306.1333, 86595909, 304.7333, 317.0866, 301.07, "Q4", "Quarter Earnings"); + this.addItem("01", "26", "2022", 312.47, 104867290, 317.4766, 329.23, 302.00); + this.addItem("01", "27", "2022", 276.3666, 147109575, 311.12, 311.7966, 276.3333); + this.addItem("01", "28", "2022", 282.1166, 134788963, 277.1866, 285.8333, 264.0033); + this.addItem("01", "31", "2022", 312.24, 104436100, 290.9033, 312.6633, 287.35); + this.addItem("02", "01", "2022", 310.4166, 73138357, 311.7366, 314.5666, 301.6666); + this.addItem("02", "02", "2022", 301.8866, 66793057, 309.3933, 310.50, 296.47); + this.addItem("02", "03", "2022", 297.0466, 78855578, 294.00, 312.3333, 293.5066); + this.addItem("02", "04", "2022", 307.7733, 73625467, 299.0733, 312.1666, 293.7233); + this.addItem("02", "07", "2022", 302.4466, 60994476, 307.93, 315.9233, 300.9029); + this.addItem("02", "08", "2022", 307.3333, 50729015, 301.8433, 308.7633, 298.2666); + this.addItem("02", "09", "2022", 310.6666, 52259555, 311.6666, 315.4233, 306.6666); + this.addItem("02", "10", "2022", 301.5166, 66126847, 302.79, 314.6033, 298.90); + this.addItem("02", "11", "2022", 286.6666, 79645868, 303.21, 305.32, 283.5666); + this.addItem("02", "14", "2022", 291.92, 67756417, 287.19, 299.6266, 284.3833); + this.addItem("02", "15", "2022", 307.4766, 57649536, 300.00, 307.6666, 297.7924); + this.addItem("02", "16", "2022", 307.7966, 51294395, 304.6833, 308.8099, 300.4033); + this.addItem("02", "17", "2022", 292.1166, 55178436, 304.42, 306.1666, 291.3666); + this.addItem("02", "18", "2022", 285.66, 68501857, 295.3333, 295.6233, 279.2033); + this.addItem("02", "22", "2022", 273.8433, 83288198, 278.0433, 285.5779, 267.0333); + this.addItem("02", "23", "2022", 254.68, 95257030, 276.81, 278.4332, 253.52); + this.addItem("02", "24", "2022", 266.9233, 135322304, 233.4633, 267.4933, 233.3333); + this.addItem("02", "25", "2022", 269.9566, 76067768, 269.7433, 273.1666, 260.8001); + this.addItem("02", "28", "2022", 290.1433, 99006880, 271.67, 292.2866, 271.5691); + this.addItem("03", "01", "2022", 288.1233, 74766877, 289.8933, 296.6266, 284.5933); + this.addItem("03", "02", "2022", 293.2966, 74643457, 290.71, 295.4933, 281.424); + this.addItem("03", "03", "2022", 279.7633, 61623516, 292.9233, 295.4796, 277.5333); + this.addItem("03", "04", "2022", 279.43, 67179877, 283.0333, 285.2166, 275.0536); + this.addItem("03", "07", "2022", 268.1933, 72494167, 285.4333, 288.7133, 268.19); + this.addItem("03", "08", "2022", 274.80, 80399108, 265.1766, 283.33, 260.7233); + this.addItem("03", "09", "2022", 286.3233, 59183976, 279.8266, 286.8533, 277.3366); + this.addItem("03", "10", "2022", 279.4333, 58648656, 283.8166, 284.8166, 270.12); + this.addItem("03", "11", "2022", 265.1166, 67037167, 280.0656, 281.2673, 264.59); + this.addItem("03", "14", "2022", 255.4566, 71152267, 260.2033, 266.90, 252.0133); + this.addItem("03", "15", "2022", 267.2966, 66841147, 258.4233, 268.5233, 252.19); + this.addItem("03", "16", "2022", 280.0766, 84028838, 269.6666, 280.6666, 267.42); + this.addItem("03", "17", "2022", 290.5333, 66582967, 276.9966, 291.6666, 275.2392); + this.addItem("03", "18", "2022", 301.7966, 100414210, 291.4966, 302.6166, 289.13); + this.addItem("03", "21", "2022", 307.0533, 81981668, 304.9933, 314.2833, 302.3633); + this.addItem("03", "22", "2022", 331.3266, 105868571, 310.00, 332.62, 307.25); + this.addItem("03", "23", "2022", 333.0366, 120676152, 326.6466, 346.90, 325.4666); + this.addItem("03", "24", "2022", 337.9733, 68920897, 336.5766, 341.4966, 329.60); + this.addItem("03", "25", "2022", 336.88, 62031546, 336.00, 340.5999, 332.44); + this.addItem("03", "28", "2022", 363.9466, 102506080, 355.0333, 365.9599, 351.20); + this.addItem("03", "29", "2022", 366.5233, 73614817, 369.33, 371.59, 357.7033); + this.addItem("03", "30", "2022", 364.6633, 59865006, 363.7233, 371.3166, 361.3333); + this.addItem("03", "31", "2022", 359.20, 48992765, 364.8566, 367.7133, 358.8803); + this.addItem("04", "01", "2022", 361.53, 54263225, 360.3833, 364.9166, 355.5466); + this.addItem("04", "04", "2022", 381.8166, 82177718, 363.1266, 383.3033, 357.51); + this.addItem("04", "05", "2022", 363.7533, 80075018, 378.7666, 384.29, 362.4333); + this.addItem("04", "06", "2022", 348.5866, 89348559, 357.8233, 359.6666, 342.5666); + this.addItem("04", "07", "2022", 352.42, 79447058, 350.7966, 358.8633, 340.5133); + this.addItem("04", "08", "2022", 341.83, 55013706, 347.7366, 349.48, 340.8116); + this.addItem("04", "11", "2022", 325.31, 59357226, 326.80, 336.156, 324.88); + this.addItem("04", "12", "2022", 328.9833, 65976097, 332.5466, 340.3973, 325.5333); + this.addItem("04", "13", "2022", 340.79, 55121226, 327.025, 342.08, 324.3656); + this.addItem("04", "14", "2022", 328.3333, 58422426, 333.0966, 337.5699, 327.3966); + this.addItem("04", "18", "2022", 334.7633, 51715235, 329.6766, 338.3066, 324.47); + this.addItem("04", "19", "2022", 342.7166, 49847825, 335.02, 344.98, 331.775); + this.addItem("04", "20", "2022", 325.7333, 70711327, 343.3333, 344.6666, 325.0833, "Q1", "Quarter Earnings"); + this.addItem("04", "21", "2022", 336.26, 105416351, 358.2433, 364.0733, 332.1383); + this.addItem("04", "22", "2022", 335.0166, 69696577, 338.3033, 344.95, 331.3333); + this.addItem("04", "25", "2022", 332.6733, 68341357, 326.3233, 336.2066, 325.10); + this.addItem("04", "26", "2022", 292.14, 136133684, 331.81, 333.3333, 291.6666); + this.addItem("04", "27", "2022", 293.8366, 76956398, 299.5266, 306.00, 292.4533); + this.addItem("04", "28", "2022", 292.5033, 124948542, 299.9933, 300.00, 273.90); + this.addItem("04", "29", "2022", 290.2533, 88133019, 300.75, 311.4666, 290.00); + this.addItem("05", "02", "2022", 300.98, 75781388, 286.9233, 302.1199, 282.6766); + this.addItem("05", "03", "2022", 303.0833, 63709596, 301.06, 308.0266, 296.1966); + this.addItem("05", "04", "2022", 317.54, 81643718, 301.3133, 318.50, 295.0933); + this.addItem("05", "05", "2022", 291.0933, 92519199, 313.07, 315.20, 285.90); + this.addItem("05", "06", "2022", 288.55, 72903127, 295.6666, 296.00, 281.035); + this.addItem("05", "09", "2022", 262.37, 90810219, 278.8166, 281.8766, 260.3833); + this.addItem("05", "10", "2022", 266.68, 84401648, 273.1033, 275.12, 258.0833); + this.addItem("05", "11", "2022", 244.6666, 97224460, 265.00, 269.9233, 242.40); + this.addItem("05", "12", "2022", 242.6666, 140312864, 233.6666, 253.22, 226.6666); + this.addItem("05", "13", "2022", 256.53, 92150739, 257.8266, 262.4499, 250.5216); + this.addItem("05", "16", "2022", 241.4566, 86098539, 255.72, 256.5866, 239.6961); + this.addItem("05", "17", "2022", 253.87, 80236118, 249.12, 254.8266, 242.95); + this.addItem("05", "18", "2022", 236.6033, 87811809, 248.1733, 253.50, 233.6033); + this.addItem("05", "19", "2022", 236.4733, 90296679, 235.6666, 244.6666, 231.37); + this.addItem("05", "20", "2022", 221.30, 144973334, 237.9966, 240.5273, 211.00); + this.addItem("05", "23", "2022", 224.9666, 88903659, 218.34, 226.6517, 212.6866); + this.addItem("05", "24", "2022", 209.3866, 89092539, 217.8433, 217.9733, 206.8566); + this.addItem("05", "25", "2022", 219.60, 92139339, 207.95, 223.1066, 207.67); + this.addItem("05", "26", "2022", 235.91, 106003361, 220.4733, 239.5566, 217.8866); + this.addItem("05", "27", "2022", 253.21, 89294979, 241.0833, 253.2666, 240.177); + this.addItem("05", "31", "2022", 252.7533, 101914390, 257.9466, 259.60, 244.7433); + this.addItem("06", "01", "2022", 246.79, 77247968, 251.72, 257.3266, 243.64); + this.addItem("06", "02", "2022", 258.3333, 93473139, 244.1566, 264.21, 242.0666); + this.addItem("06", "03", "2022", 234.5166, 112393751, 243.225, 247.7966, 233.4178); + this.addItem("06", "06", "2022", 238.28, 84204518, 244.3533, 244.8666, 234.35); + this.addItem("06", "07", "2022", 238.8866, 72808597, 234.00, 239.9966, 230.0933); + this.addItem("06", "08", "2022", 241.8666, 76210628, 240.0866, 249.9633, 239.1766); + this.addItem("06", "09", "2022", 239.7066, 96491320, 249.34, 255.5466, 239.3266); + this.addItem("06", "10", "2022", 232.23, 98090920, 235.1566, 239.50, 227.9133); + this.addItem("06", "13", "2022", 215.7366, 102767260, 223.1666, 226.6333, 214.6833); + this.addItem("06", "14", "2022", 220.89, 97988800, 218.2866, 226.33, 211.7366); + this.addItem("06", "15", "2022", 233.00, 119131962, 220.9166, 235.6633, 218.15); + this.addItem("06", "16", "2022", 213.10, 107390711, 222.7366, 225.1666, 208.6933); + this.addItem("06", "17", "2022", 216.76, 92641779, 213.4333, 220.9694, 213.1966); + this.addItem("06", "21", "2022", 237.0366, 122792982, 224.6033, 243.5773, 224.3333); + this.addItem("06", "22", "2022", 236.0866, 101527270, 234.5033, 246.8333, 233.8266); + this.addItem("06", "23", "2022", 235.07, 104202700, 237.905, 239.3166, 228.6366); + this.addItem("06", "24", "2022", 245.7066, 95770720, 237.4683, 246.0666, 236.0866); + this.addItem("06", "27", "2022", 244.92, 89178309, 249.3666, 252.07, 242.5655); + this.addItem("06", "28", "2022", 232.6633, 90666519, 244.4833, 249.97, 232.3433); + this.addItem("06", "29", "2022", 228.49, 82897268, 230.50, 231.1733, 222.2733); + this.addItem("06", "30", "2022", 224.4733, 94600449, 224.51, 229.4566, 218.8633); + this.addItem("07", "01", "2022", 227.2633, 74460457, 227.00, 230.23, 222.12); + this.addItem("07", "05", "2022", 233.0666, 84779108, 223.00, 233.1466, 216.1667); + this.addItem("07", "06", "2022", 231.7333, 71853637, 230.78, 234.5633, 227.1866); + this.addItem("07", "07", "2022", 244.5433, 81930698, 233.92, 245.3616, 232.21); + this.addItem("07", "08", "2022", 250.7633, 101854090, 242.3333, 254.9799, 241.1614); + this.addItem("07", "11", "2022", 234.3433, 99509230, 252.1033, 253.0633, 233.6266); + this.addItem("07", "12", "2022", 233.07, 87930969, 236.8466, 239.7733, 228.3683); + this.addItem("07", "13", "2022", 237.04, 97954510, 225.50, 242.0599, 225.0333); + this.addItem("07", "14", "2022", 238.3133, 78557498, 234.8966, 238.6533, 229.3333); + this.addItem("07", "15", "2022", 240.0666, 69683017, 240.00, 243.6233, 236.89); + this.addItem("07", "18", "2022", 240.5466, 82537448, 244.9366, 250.5166, 239.6033); + this.addItem("07", "19", "2022", 245.53, 80890118, 245.00, 247.14, 236.9766); + this.addItem("07", "20", "2022", 247.50, 88864089, 246.7833, 250.6633, 243.483, "Q2", "Quarter Earnings"); + this.addItem("07", "21", "2022", 271.7066, 142032194, 255.1066, 273.2666, 254.8666); + this.addItem("07", "22", "2022", 272.2433, 103472860, 276.22, 280.7866, 270.7133); + this.addItem("07", "25", "2022", 268.4333, 64073526, 272.2166, 274.1466, 267.40); + this.addItem("07", "26", "2022", 258.86, 66820777, 266.5133, 267.3099, 256.2633); + this.addItem("07", "27", "2022", 274.82, 88110009, 263.81, 275.9256, 261.79); + this.addItem("07", "28", "2022", 280.90, 84723008, 280.0666, 283.30, 272.80); + this.addItem("07", "29", "2022", 297.15, 95312890, 280.70, 298.32, 279.10); + this.addItem("08", "01", "2022", 297.2766, 117042912, 301.275, 311.8782, 295.00); + this.addItem("08", "02", "2022", 300.5866, 95577490, 294.0033, 307.8333, 292.6666); + this.addItem("08", "03", "2022", 307.3966, 80091128, 305.00, 309.55, 301.15); + this.addItem("08", "04", "2022", 308.6333, 72256327, 311.00, 313.6066, 305.00); + this.addItem("08", "05", "2022", 288.17, 113172911, 302.67, 304.6066, 285.5446); + this.addItem("08", "08", "2022", 290.4233, 99365290, 295.00, 305.20, 289.0854); + this.addItem("08", "09", "2022", 283.3333, 86244699, 290.2933, 292.3966, 279.3533); + this.addItem("08", "10", "2022", 294.3566, 94918869, 297.0666, 297.51, 283.37); + this.addItem("08", "11", "2022", 286.63, 70155067, 296.5133, 298.2366, 285.8333); + this.addItem("08", "12", "2022", 300.03, 79657298, 289.415, 300.16, 285.0333); + this.addItem("08", "15", "2022", 309.32, 89359179, 301.7866, 313.1333, 301.23); + this.addItem("08", "16", "2022", 306.5633, 88136319, 311.6666, 314.6666, 302.8833); + this.addItem("08", "17", "2022", 303.9966, 68765977, 303.3966, 309.6566, 300.0333); + this.addItem("08", "18", "2022", 302.87, 47500535, 306.00, 306.50, 301.8533); + this.addItem("08", "19", "2022", 296.6666, 61395396, 299.00, 300.36, 292.50); + this.addItem("08", "22", "2022", 289.9133, 55843356, 291.9133, 292.40, 286.2966); + this.addItem("08", "23", "2022", 296.4533, 63985056, 291.4533, 298.8266, 287.9233); + this.addItem("08", "24", "2022", 297.0966, 57259716, 297.5633, 303.6466, 296.50); + this.addItem("08", "25", "2022", 296.07, 53230010, 302.36, 302.96, 291.60, "S", "3-to-1 Stock Split"); + this.addItem("08", "26", "2022", 288.09, 57163950, 297.43, 302.00, 287.47); + this.addItem("08", "29", "2022", 284.82, 41864740, 282.83, 287.74, 280.70); + this.addItem("08", "30", "2022", 277.70, 50541760, 287.865, 288.48, 272.65); + this.addItem("08", "31", "2022", 275.61, 52107340, 280.62, 281.25, 271.81); + this.addItem("09", "01", "2022", 277.16, 54287020, 272.575, 277.58, 266.15); + this.addItem("09", "02", "2022", 270.21, 50890090, 281.065, 282.35, 269.08); + this.addItem("09", "06", "2022", 274.42, 55859980, 272.675, 275.99, 265.74); + this.addItem("09", "07", "2022", 283.70, 50028920, 273.10, 283.84, 272.27); + this.addItem("09", "08", "2022", 289.26, 53713120, 281.30, 289.50, 279.76); + this.addItem("09", "09", "2022", 299.68, 54470850, 291.67, 299.85, 291.245); + this.addItem("09", "12", "2022", 304.42, 48674600, 300.72, 305.49, 300.40); + this.addItem("09", "13", "2022", 292.13, 68229620, 292.90, 297.3999, 290.40); + this.addItem("09", "14", "2022", 302.61, 72628650, 292.24, 306.00, 291.64); + this.addItem("09", "15", "2022", 303.75, 64795520, 301.825, 309.12, 300.7247); + this.addItem("09", "16", "2022", 303.35, 87087790, 299.605, 303.71, 295.6005); + this.addItem("09", "19", "2022", 309.07, 60231160, 300.09, 309.84, 297.80); + this.addItem("09", "20", "2022", 308.73, 61642780, 306.91, 313.33, 305.58); + this.addItem("09", "21", "2022", 300.80, 62555660, 308.29, 313.80, 300.63); + this.addItem("09", "22", "2022", 288.59, 70545410, 299.86, 301.29, 285.82); + this.addItem("09", "23", "2022", 275.33, 63748360, 283.09, 284.50, 272.82); + this.addItem("09", "26", "2022", 276.01, 58076910, 271.83, 284.09, 270.31); + this.addItem("09", "27", "2022", 282.94, 61925190, 283.84, 288.67, 277.51); + this.addItem("09", "28", "2022", 287.81, 54664810, 283.08, 289.00, 277.57); + this.addItem("09", "29", "2022", 268.21, 77620640, 282.76, 283.65, 265.78); + this.addItem("09", "30", "2022", 265.25, 67726600, 266.145, 275.57, 262.47); + this.addItem("10", "03", "2022", 242.40, 98363540, 254.50, 255.16, 241.01); + this.addItem("10", "04", "2022", 249.44, 109578500, 250.52, 257.50, 242.01); + this.addItem("10", "05", "2022", 240.81, 86982670, 245.01, 246.6697, 233.27); + this.addItem("10", "06", "2022", 238.13, 69298440, 239.44, 244.58, 235.35); + this.addItem("10", "07", "2022", 223.07, 83916800, 233.935, 234.5715, 222.02); + this.addItem("10", "10", "2022", 222.96, 67925020, 223.93, 226.99, 218.3582); + this.addItem("10", "11", "2022", 216.50, 77013200, 220.945, 225.75, 215.00); + this.addItem("10", "12", "2022", 217.24, 66860700, 215.33, 219.2999, 211.51); + this.addItem("10", "13", "2022", 221.72, 91483050, 208.30, 222.99, 206.22); + this.addItem("10", "14", "2022", 204.99, 94124510, 224.01, 226.26, 204.16); + this.addItem("10", "17", "2022", 219.35, 79428810, 210.04, 221.86, 209.45); + this.addItem("10", "18", "2022", 220.19, 75891910, 229.50, 229.82, 217.25); + this.addItem("10", "19", "2022", 222.04, 66571480, 219.80, 222.93, 217.78, "Q3", "Quarter Earnings"); + this.addItem("10", "20", "2022", 207.28, 117798100, 208.28, 215.55, 202.00); + this.addItem("10", "21", "2022", 214.44, 75713750, 206.415, 214.66, 203.80); + this.addItem("10", "24", "2022", 211.25, 100446800, 205.82, 213.50, 198.5863); + this.addItem("10", "25", "2022", 222.415, 96507870, 210.10, 224.3498, 210.00); + this.addItem("10", "26", "2022", 224.64, 85327080, 219.40, 230.60, 218.20); + this.addItem("10", "27", "2022", 225.09, 61638820, 229.77, 233.81, 222.85); + this.addItem("10", "28", "2022", 228.52, 69152390, 225.40, 228.86, 216.35); + this.addItem("10", "31", "2022", 227.54, 61554340, 226.19, 229.85, 221.94); + this.addItem("11", "01", "2022", 227.82, 62688820, 234.05, 237.3951, 227.28); + this.addItem("11", "02", "2022", 214.98, 63070290, 226.04, 227.8699, 214.82); + this.addItem("11", "03", "2022", 215.31, 56538850, 211.36, 221.20, 210.14); + this.addItem("11", "04", "2022", 207.47, 98622210, 222.60, 223.80, 203.08); + this.addItem("11", "07", "2022", 197.08, 93916520, 208.65, 208.90, 196.66); + this.addItem("11", "08", "2022", 191.30, 128803400, 194.02, 195.20, 186.75); + this.addItem("11", "09", "2022", 177.59, 127062700, 190.775, 195.89, 177.12); + this.addItem("11", "10", "2022", 190.72, 132703000, 189.90, 191.00, 180.03); + this.addItem("11", "11", "2022", 195.97, 114403600, 186.00, 196.52, 182.59); + this.addItem("11", "14", "2022", 190.95, 92226650, 192.77, 195.73, 186.34); + this.addItem("11", "15", "2022", 194.42, 91293790, 195.88, 200.8237, 192.06); + this.addItem("11", "16", "2022", 186.92, 66567600, 191.51, 192.57, 185.66); + this.addItem("11", "17", "2022", 183.17, 64335970, 183.96, 186.16, 180.90); + this.addItem("11", "18", "2022", 180.19, 76048870, 185.05, 185.19, 176.55); + this.addItem("11", "21", "2022", 167.87, 92882710, 175.85, 176.77, 167.54); + this.addItem("11", "22", "2022", 169.91, 78452330, 168.63, 170.92, 166.185); + this.addItem("11", "23", "2022", 183.20, 109536700, 173.57, 183.62, 172.50); + this.addItem("11", "25", "2022", 182.86, 50672740, 185.06, 185.20, 180.63); + this.addItem("11", "28", "2022", 182.92, 93038150, 179.96, 188.50, 179.00); + this.addItem("11", "29", "2022", 180.83, 83357110, 184.99, 186.38, 178.75); + this.addItem("11", "30", "2022", 194.70, 109186400, 182.43, 194.76, 180.6301); + this.addItem("12", "01", "2022", 194.70, 80046210, 197.08, 198.92, 191.80); + this.addItem("12", "02", "2022", 194.86, 73645920, 191.78, 196.25, 191.11); + this.addItem("12", "05", "2022", 182.45, 93122670, 189.44, 191.27, 180.55); + this.addItem("12", "06", "2022", 179.82, 92150820, 181.215, 183.65, 175.33); + this.addItem("12", "07", "2022", 174.04, 84213280, 175.03, 179.38, 172.218); + this.addItem("12", "08", "2022", 173.44, 97624490, 172.20, 175.20, 169.06); + this.addItem("12", "09", "2022", 179.05, 104872300, 173.84, 182.50, 173.36); + this.addItem("12", "12", "2022", 167.82, 109794500, 176.10, 177.37, 167.52); + this.addItem("12", "13", "2022", 160.95, 175862700, 174.87, 175.05, 156.91); + this.addItem("12", "14", "2022", 156.80, 140682300, 159.25, 161.62, 155.31); + this.addItem("12", "15", "2022", 157.67, 122334500, 153.44, 160.9299, 153.28); + this.addItem("12", "16", "2022", 150.23, 139032200, 159.635, 160.99, 150.04); + this.addItem("12", "19", "2022", 149.87, 139390600, 154.00, 155.25, 145.82); + this.addItem("12", "20", "2022", 137.80, 159563300, 146.05, 148.47, 137.66); + this.addItem("12", "21", "2022", 137.57, 145417400, 139.335, 141.26, 135.89); + this.addItem("12", "22", "2022", 125.35, 210090300, 136.00, 136.63, 122.26); + this.addItem("12", "23", "2022", 123.15, 166989700, 126.37, 128.6173, 121.02); + this.addItem("12", "27", "2022", 109.10, 208643400, 117.495, 119.67, 108.76); + this.addItem("12", "28", "2022", 112.71, 221070500, 110.35, 116.27, 108.24); + this.addItem("12", "29", "2022", 121.82, 221923300, 120.385, 123.57, 117.495); + this.addItem("12", "30", "2022", 123.18, 157777300, 119.95, 124.48, 119.75); + this.addItem("01", "03", "2023", 108.10, 231402800, 118.47, 118.80, 104.64); + this.addItem("01", "04", "2023", 113.64, 180389000, 109.11, 114.59, 107.52); + this.addItem("01", "05", "2023", 110.34, 157986300, 110.51, 111.75, 107.1601); + this.addItem("01", "06", "2023", 113.06, 220911100, 103.00, 114.39, 101.81); + this.addItem("01", "09", "2023", 119.77, 190284000, 118.96, 123.52, 117.11); + this.addItem("01", "10", "2023", 118.85, 167642500, 121.07, 122.76, 114.92); + this.addItem("01", "11", "2023", 123.22, 183810800, 122.09, 125.95, 120.51); + this.addItem("01", "12", "2023", 123.56, 169400900, 122.56, 124.1311, 117.00); + this.addItem("01", "13", "2023", 122.40, 180714100, 116.55, 122.63, 115.60); + this.addItem("01", "17", "2023", 131.49, 186477000, 125.695, 131.70, 125.02); + this.addItem("01", "18", "2023", 128.78, 195680300, 136.555, 136.68, 127.01); + this.addItem("01", "19", "2023", 127.17, 170291900, 127.26, 129.99, 124.3082); + this.addItem("01", "20", "2023", 133.42, 138858100, 128.68, 133.51, 127.3466); + this.addItem("01", "23", "2023", 143.75, 203119200, 135.87, 145.3793, 134.27); + this.addItem("01", "24", "2023", 143.89, 158699100, 143.00, 146.50, 141.10); + this.addItem("01", "25", "2023", 144.43, 192734300, 141.905, 146.41, 138.07, "Q4", "Quarter Earnings"); + this.addItem("01", "26", "2023", 160.27, 234815100, 159.965, 161.42, 154.76); + this.addItem("01", "27", "2023", 177.90, 306590600, 162.43, 180.68, 161.17); + this.addItem("01", "30", "2023", 166.66, 230878800, 178.05, 179.77, 166.50); + this.addItem("01", "31", "2023", 173.22, 196813500, 164.57, 174.30, 162.78); + this.addItem("02", "01", "2023", 181.41, 213806300, 173.89, 183.805, 169.93); + this.addItem("02", "02", "2023", 188.27, 217448300, 187.325, 196.7501, 182.61); + this.addItem("02", "03", "2023", 189.98, 232662000, 183.95, 199.00, 183.69); + this.addItem("02", "06", "2023", 194.76, 186188100, 193.01, 198.17, 189.92); + this.addItem("02", "07", "2023", 196.81, 186010300, 196.43, 197.50, 189.55); + this.addItem("02", "08", "2023", 201.29, 180673600, 196.10, 203.00, 194.31); + this.addItem("02", "09", "2023", 207.32, 215431400, 207.775, 214.00, 204.77); + this.addItem("02", "10", "2023", 196.89, 204754100, 202.225, 206.20, 192.89); + this.addItem("02", "13", "2023", 194.64, 172475500, 194.415, 196.30, 187.61); + this.addItem("02", "14", "2023", 209.25, 216455700, 191.94, 209.82, 189.44); + this.addItem("02", "15", "2023", 214.24, 182108600, 211.755, 214.66, 206.11); + this.addItem("02", "16", "2023", 202.04, 229586500, 210.78, 217.65, 201.84); + this.addItem("02", "17", "2023", 208.31, 213738500, 199.985, 208.44, 197.50); + this.addItem("02", "21", "2023", 197.37, 180018600, 204.99, 209.71, 197.22); + this.addItem("02", "22", "2023", 200.86, 191828500, 197.93, 201.99, 191.78); + this.addItem("02", "23", "2023", 202.07, 146360000, 203.91, 205.14, 196.33); + this.addItem("02", "24", "2023", 196.88, 142228100, 196.325, 197.6695, 192.80); + this.addItem("02", "27", "2023", 207.63, 161028300, 202.03, 209.42, 201.26); + this.addItem("02", "28", "2023", 205.71, 153144900, 210.59, 211.23, 203.75); + this.addItem("03", "01", "2023", 202.77, 156852800, 206.21, 207.20, 198.52); + this.addItem("03", "02", "2023", 190.90, 181979200, 186.74, 193.7499, 186.01); + this.addItem("03", "03", "2023", 197.79, 154193300, 194.795, 200.48, 192.88); + this.addItem("03", "06", "2023", 193.81, 128100100, 198.54, 198.60, 192.30); + this.addItem("03", "07", "2023", 187.71, 148125800, 191.38, 194.20, 186.10); + this.addItem("03", "08", "2023", 182.00, 151897800, 185.04, 186.50, 180.00); + this.addItem("03", "09", "2023", 172.92, 170023800, 180.25, 185.18, 172.5124); + this.addItem("03", "10", "2023", 173.44, 191488900, 175.13, 178.29, 168.44); + this.addItem("03", "13", "2023", 174.48, 167790300, 167.455, 177.35, 163.91); + this.addItem("03", "14", "2023", 183.26, 143717900, 177.31, 183.80, 177.1401); + this.addItem("03", "15", "2023", 180.45, 145995600, 180.80, 182.34, 176.03); + this.addItem("03", "16", "2023", 184.13, 121374500, 180.365, 185.81, 178.84); + this.addItem("03", "17", "2023", 180.13, 133197100, 184.515, 186.2199, 177.33); + this.addItem("03", "20", "2023", 183.25, 129684400, 178.08, 186.44, 176.35); + this.addItem("03", "21", "2023", 197.58, 153391400, 188.28, 198.00, 188.04); + this.addItem("03", "22", "2023", 191.15, 150376400, 199.30, 200.66, 190.95); + this.addItem("03", "23", "2023", 192.22, 144193900, 195.26, 199.31, 188.65); + this.addItem("03", "24", "2023", 190.41, 116531600, 191.65, 192.36, 187.15); + this.addItem("03", "27", "2023", 191.81, 120851600, 194.415, 197.39, 189.94); + this.addItem("03", "28", "2023", 189.19, 98654640, 192.00, 192.35, 185.43); + this.addItem("03", "29", "2023", 193.88, 123660000, 193.13, 195.29, 189.44); + this.addItem("03", "30", "2023", 195.28, 110252200, 195.58, 197.33, 194.42); + this.addItem("03", "31", "2023", 207.46, 170222100, 197.53, 207.79, 197.20); + this.addItem("04", "03", "2023", 194.77, 169545900, 199.91, 202.6897, 192.20); + this.addItem("04", "04", "2023", 192.58, 126463800, 197.32, 198.7446, 190.32); + this.addItem("04", "05", "2023", 185.52, 133882500, 190.515, 190.68, 183.76); + this.addItem("04", "06", "2023", 185.06, 123857900, 183.08, 186.39, 179.74); + this.addItem("04", "10", "2023", 184.51, 142154600, 179.94, 185.10, 176.11); + this.addItem("04", "11", "2023", 186.79, 115770900, 186.69, 189.19, 185.6475); + this.addItem("04", "12", "2023", 180.54, 150256300, 190.74, 191.5846, 180.31); + this.addItem("04", "13", "2023", 185.90, 112933000, 182.955, 186.50, 180.94); + this.addItem("04", "14", "2023", 185.00, 96438660, 183.95, 186.28, 182.01); + this.addItem("04", "17", "2023", 187.04, 116662200, 186.32, 189.69, 182.69); + this.addItem("04", "18", "2023", 184.31, 92067020, 187.15, 187.69, 183.5775); + this.addItem("04", "19", "2023", 180.59, 125732700, 179.10, 183.50, 177.65, "Q1", "Quarter Earnings"); + this.addItem("04", "20", "2023", 162.99, 210970800, 166.165, 169.70, 160.56); + this.addItem("04", "21", "2023", 165.08, 123539000, 164.80, 166.00, 161.3208); + this.addItem("04", "24", "2023", 162.55, 140006600, 164.65, 165.65, 158.61); + this.addItem("04", "25", "2023", 160.67, 121999300, 159.82, 163.47, 158.75); + this.addItem("04", "26", "2023", 153.75, 153364100, 160.29, 160.67, 153.14); + this.addItem("04", "27", "2023", 160.19, 127015200, 152.64, 160.48, 152.37); + this.addItem("04", "28", "2023", 164.31, 122515800, 160.90, 165.00, 157.32); + this.addItem("05", "01", "2023", 161.83, 109015000, 163.17, 163.28, 158.83); + this.addItem("05", "02", "2023", 160.31, 128259700, 161.88, 165.49, 158.93); + this.addItem("05", "03", "2023", 160.61, 119728000, 160.01, 165.00, 159.91); + this.addItem("05", "04", "2023", 161.20, 95108490, 162.71, 162.95, 159.65); + this.addItem("05", "05", "2023", 170.06, 107607300, 163.97, 170.7899, 163.51); + this.addItem("05", "08", "2023", 171.79, 112249400, 173.72, 173.80, 169.19); + this.addItem("05", "09", "2023", 169.15, 88965040, 168.95, 169.82, 166.56); + this.addItem("05", "10", "2023", 168.54, 119840700, 172.55, 174.43, 166.68); + this.addItem("05", "11", "2023", 172.08, 103889900, 168.70, 173.57, 166.79); + this.addItem("05", "12", "2023", 167.98, 157849600, 176.07, 177.38, 167.23); + this.addItem("05", "15", "2023", 166.35, 105592500, 167.655, 169.76, 164.5499); + this.addItem("05", "16", "2023", 166.52, 98288790, 165.65, 169.5184, 164.35); + this.addItem("05", "17", "2023", 173.86, 125473600, 168.41, 174.50, 167.185); + this.addItem("05", "18", "2023", 176.89, 109520300, 174.22, 177.06, 172.45); + this.addItem("05", "19", "2023", 180.14, 136196700, 177.17, 181.95, 176.31); + this.addItem("05", "22", "2023", 188.87, 132001400, 180.70, 189.32, 180.11); + this.addItem("05", "23", "2023", 185.77, 156952100, 186.20, 192.96, 185.26); + this.addItem("05", "24", "2023", 182.90, 137605100, 182.23, 184.22, 178.22); + this.addItem("05", "25", "2023", 184.47, 96870720, 186.54, 186.78, 180.58); + this.addItem("05", "26", "2023", 193.17, 162061500, 184.62, 198.60, 184.53); + this.addItem("05", "30", "2023", 201.16, 128818700, 200.10, 204.48, 197.53); + this.addItem("05", "31", "2023", 203.93, 150711700, 199.78, 203.95, 195.12); + this.addItem("06", "01", "2023", 207.52, 148029900, 202.59, 209.80, 199.37); + this.addItem("06", "02", "2023", 213.97, 164398400, 210.15, 217.25, 209.752); + this.addItem("06", "05", "2023", 217.61, 151143100, 217.80, 221.29, 214.52); + this.addItem("06", "06", "2023", 221.31, 146911600, 216.14, 221.91, 212.53); + this.addItem("06", "07", "2023", 224.57, 185710800, 228.00, 230.83, 223.20); + this.addItem("06", "08", "2023", 234.86, 164489700, 224.22, 235.23, 223.01); + this.addItem("06", "09", "2023", 244.40, 200242400, 249.07, 252.42, 242.02); + this.addItem("06", "12", "2023", 249.83, 150740500, 247.94, 250.97, 244.59); + this.addItem("06", "13", "2023", 258.71, 162384300, 253.51, 259.68, 251.34); + this.addItem("06", "14", "2023", 256.79, 170575500, 260.17, 261.57, 250.50); + this.addItem("06", "15", "2023", 255.90, 160171200, 248.40, 258.95, 247.29); + this.addItem("06", "16", "2023", 260.54, 167915600, 258.92, 263.60, 257.21); + this.addItem("06", "20", "2023", 274.45, 165611200, 261.50, 274.75, 261.12); + this.addItem("06", "21", "2023", 259.46, 211797100, 275.13, 276.99, 257.78); + this.addItem("06", "22", "2023", 264.61, 166875900, 250.77, 265.00, 248.25); + this.addItem("06", "23", "2023", 256.60, 177460800, 259.29, 262.45, 252.80); + this.addItem("06", "26", "2023", 241.05, 179990600, 250.06, 258.37, 240.70); + this.addItem("06", "27", "2023", 250.21, 164968200, 243.24, 250.39, 240.85); + this.addItem("06", "28", "2023", 256.24, 159770800, 249.70, 259.88, 248.89); + this.addItem("06", "29", "2023", 257.50, 131283400, 258.03, 260.74, 253.61); + this.addItem("06", "30", "2023", 261.77, 112620800, 260.60, 264.45, 259.89); + this.addItem("07", "03", "2023", 279.82, 118999000, 276.49, 284.25, 275.11); + this.addItem("07", "05", "2023", 282.48, 131530900, 278.82, 283.85, 277.60); + this.addItem("07", "06", "2023", 276.54, 120707400, 278.09, 279.97, 272.88); + } + + +} + +public class HistoricalStockInfo +{ + constructor(month: String, day: String, year: String, high: Double, volume: Double, close: Double, open: Double, low: Double, label: String? = null, details: String? = null) { + this.High = high; + this.Volume = volume; + this.Close = close; + this.Open = open; + this.Low = low; + + this.Index = 0; // This will be set later + this.Label = label ?: ""; + this.Details = details ?: ""; + this.Date = java.util.Calendar.getInstance(); + this.Date!!.set( + year.toInt(), + month.toInt() - 1, // Java Calendar months are 0-based + day.toInt() + ); + } + public var High: Double; + public var Low: Double; + public var Close: Double; + public var Open: Double; + public var Volume: Double; + + public var Index: Int; + public var Label: String?; + public var Details: String?; + public var Date: java.util.Calendar?; +} +//end data \ No newline at end of file diff --git a/code-gen-library/HistoricalStockTSLA/WPF.cs b/code-gen-library/HistoricalStockTSLA/Desktop.cs similarity index 100% rename from code-gen-library/HistoricalStockTSLA/WPF.cs rename to code-gen-library/HistoricalStockTSLA/Desktop.cs diff --git a/code-gen-library/InvoicesData/XPLAT-CONFIG.json b/code-gen-library/InvoicesData/XPLAT-CONFIG.json new file mode 100644 index 000000000..40727ac66 --- /dev/null +++ b/code-gen-library/InvoicesData/XPLAT-CONFIG.json @@ -0,0 +1,7 @@ +[{ + "platform": "Kotlin", + "location": "jsonFile" +},{ + "platform": "Swift", + "location": "jsonFile" +}] \ No newline at end of file diff --git a/code-gen-library/InvoicesDataExtendedDates/Android.kt b/code-gen-library/InvoicesDataExtendedDates/Android.kt new file mode 100644 index 000000000..e10a58cdc --- /dev/null +++ b/code-gen-library/InvoicesDataExtendedDates/Android.kt @@ -0,0 +1,185 @@ +//begin imports +//end imports + +//begin data +public class InvoicesDataExtendedDates: ArrayList +{ + public constructor() { + this.add(Invoice().apply { + ProductID = 1 + ProductName = "Chai" + SupplierID = 1 + CategoryID = 1 + QuantityPerUnit = "10 boxes x 20 bags" + UnitPrice = 18.0000 + UnitsInStock = 39 + UnitsOnOrder = 0.030 + ReorderLevel = 10 + Discontinued = false + OrderDate = toDate("2012-02-12") + OrderDateDelay = toDate("2012-02-12") + OrderFullDate = toDate("2012-02-12") + }); + this.add(Invoice().apply + { + ProductID = 2 + ProductName = "Chang" + SupplierID = 1 + CategoryID = 1 + QuantityPerUnit = "24 - 12 oz bottles" + UnitPrice = 19.0000 + UnitsInStock = 17 + UnitsOnOrder = 0.040 + ReorderLevel = 25 + Discontinued = true + OrderDate = toDate("2003-03-17") + OrderDateDelay = toDate("2003-03-17") + OrderFullDate = toDate("2003-03-17") + }); + this.add(Invoice().apply + { + ProductID = 3 + ProductName = "Aniseed Syrup" + SupplierID = 1 + CategoryID = 2 + QuantityPerUnit = "12 - 550 ml bottles" + UnitPrice = 10.0000 + UnitsInStock = 13 + UnitsOnOrder = 0.070 + ReorderLevel = 25 + Discontinued = false + OrderDate = toDate("2006-03-17") + OrderDateDelay = toDate("2006-03-17") + OrderFullDate = toDate("2006-03-17") + }); + this.add(Invoice().apply + { + ProductID = 4 + ProductName = "Chef Antons Cajun Seasoning" + SupplierID = 2 + CategoryID = 2 + QuantityPerUnit = "48 - 6 oz jars" + UnitPrice = 22.0000 + UnitsInStock = 53 + UnitsOnOrder = 0.030 + ReorderLevel = 0 + Discontinued = false + OrderDate = toDate("2016-03-17") + OrderDateDelay = toDate("2016-03-17") + OrderFullDate = toDate("2016-03-17") + }); + this.add(Invoice().apply + { + ProductID = 5 + ProductName = "Chef Antons Gumbo Mix" + SupplierID = 2 + CategoryID = 2 + QuantityPerUnit = "36 boxes" + UnitPrice = 21.3500 + UnitsInStock = 0 + UnitsOnOrder = 0.030 + ReorderLevel = 0 + Discontinued = true + OrderDate = toDate("2011-11-11") + OrderDateDelay = toDate("2011-11-11") + OrderFullDate = toDate("2011-11-11") + }); + this.add(Invoice().apply + { + ProductID = 6 + ProductName = "Grandmas Boysenberry Spread" + SupplierID = 3 + CategoryID = 2 + QuantityPerUnit = "12 - 8 oz jars" + UnitPrice = 25.0000 + UnitsInStock = 0 + UnitsOnOrder = 0.030 + ReorderLevel = 25 + Discontinued = false + OrderDate = toDate("2017-12-17") + OrderDateDelay = toDate("2017-12-17") + OrderFullDate = toDate("2017-12-17") + }); + this.add(Invoice().apply + { + ProductID = 7 + ProductName = "Uncle Bobs Organic Dried Pears" + SupplierID = 3 + CategoryID = 7 + QuantityPerUnit = "12 - 1 lb pkgs." + UnitPrice = 30.0000 + UnitsInStock = 150 + UnitsOnOrder = 0.030 + ReorderLevel = 10 + Discontinued = false + OrderDate = toDate("2016-07-17") + OrderDateDelay = toDate("2016-07-17") + OrderFullDate = toDate("2016-07-17") + }); + this.add(Invoice().apply + { + ProductID = 8 + ProductName = "Northwoods Cranberry Sauce" + SupplierID = 3 + CategoryID = 2 + QuantityPerUnit = "12 - 12 oz jars" + UnitPrice = 40.0000 + UnitsInStock = 6 + UnitsOnOrder = 0.030 + ReorderLevel = 0 + Discontinued = false + OrderDate = toDate("2018-01-17") + OrderDateDelay = toDate("2018-01-17") + OrderFullDate = toDate("2018-01-17") + }); + this.add(Invoice().apply + { + ProductID = 9 + ProductName = "Mishi Kobe Niku" + SupplierID = 4 + CategoryID = 6 + QuantityPerUnit = "18 - 500 g pkgs." + UnitPrice = 97.0000 + UnitsInStock = 29 + UnitsOnOrder = 0.030 + ReorderLevel = 0 + Discontinued = true + OrderDate = toDate("2010-02-17") + OrderDateDelay = toDate("2010-02-17") + OrderFullDate = toDate("2010-02-17") + }); + } + +} + +public class Invoice +{ + public constructor() { + } + public var ProductID: Int = 0; + public var ProductName: String? = null; + public var SupplierID: Int = 0; + public var CategoryID: Int = 0; + public var QuantityPerUnit: String? = null; + public var UnitPrice: Double = 0.0; + public var UnitsInStock: Int = 0; + public var UnitsOnOrder: Double = 0.0; + public var ReorderLevel: Int = 0; + public var Discontinued: Boolean = false; + public var OrderDate: java.util.Calendar = java.util.Calendar.getInstance(); + public var OrderDateDelay: java.util.Calendar = java.util.Calendar.getInstance(); + public var OrderFullDate: java.util.Calendar = java.util.Calendar.getInstance(); + + public fun toDate(dateString: String): java.util.Calendar { + val calendar = java.util.Calendar.getInstance() + try { + val dateFormat = java.text.SimpleDateFormat("yyyy-MM-dd") + calendar.time = dateFormat.parse(dateString) + } catch (e: Exception) { + e.printStackTrace() + } + return calendar + } +} +//end data + diff --git a/code-gen-library/InvoicesDataExtendedDates/iOS.swift b/code-gen-library/InvoicesDataExtendedDates/iOS.swift new file mode 100644 index 000000000..fc1f35231 --- /dev/null +++ b/code-gen-library/InvoicesDataExtendedDates/iOS.swift @@ -0,0 +1,173 @@ +//begin imports +//end imports + +//begin data +public class InvoicesDataExtendedDates: ArrayList { + public init() { + super.init(); + self.add(item: Invoice().apply { + $0.ProductID = 1 + $0.ProductName = "Chai" + $0.SupplierID = 1 + $0.CategoryID = 1 + $0.QuantityPerUnit = "10 boxes x 20 bags" + $0.UnitPrice = 18.0000 + $0.UnitsInStock = 39 + $0.UnitsOnOrder = 0.030 + $0.ReorderLevel = 10 + $0.Discontinued = false + $0.OrderDate = Invoice.toDate("2012-02-12") + $0.OrderDateDelay = Invoice.toDate("2012-02-12") + $0.OrderFullDate = Invoice.toDate("2012-02-12") + }) + self.add(item: Invoice().apply { + $0.ProductID = 2 + $0.ProductName = "Chang" + $0.SupplierID = 1 + $0.CategoryID = 1 + $0.QuantityPerUnit = "24 - 12 oz bottles" + $0.UnitPrice = 19.0000 + $0.UnitsInStock = 17 + $0.UnitsOnOrder = 0.040 + $0.ReorderLevel = 25 + $0.Discontinued = true + $0.OrderDate = Invoice.toDate("2003-03-17") + $0.OrderDateDelay = Invoice.toDate("2003-03-17") + $0.OrderFullDate = Invoice.toDate("2003-03-17") + }) + self.add(item: Invoice().apply { + $0.ProductID = 3 + $0.ProductName = "Aniseed Syrup" + $0.SupplierID = 1 + $0.CategoryID = 2 + $0.QuantityPerUnit = "12 - 550 ml bottles" + $0.UnitPrice = 10.0000 + $0.UnitsInStock = 13 + $0.UnitsOnOrder = 0.070 + $0.ReorderLevel = 25 + $0.Discontinued = false + $0.OrderDate = Invoice.toDate("2006-03-17") + $0.OrderDateDelay = Invoice.toDate("2006-03-17") + $0.OrderFullDate = Invoice.toDate("2006-03-17") + }) + self.add(item: Invoice().apply { + $0.ProductID = 4 + $0.ProductName = "Chef Antons Cajun Seasoning" + $0.SupplierID = 2 + $0.CategoryID = 2 + $0.QuantityPerUnit = "48 - 6 oz jars" + $0.UnitPrice = 22.0000 + $0.UnitsInStock = 53 + $0.UnitsOnOrder = 0.030 + $0.ReorderLevel = 0 + $0.Discontinued = false + $0.OrderDate = Invoice.toDate("2016-03-17") + $0.OrderDateDelay = Invoice.toDate("2016-03-17") + $0.OrderFullDate = Invoice.toDate("2016-03-17") + }) + self.add(item: Invoice().apply { + $0.ProductID = 5 + $0.ProductName = "Chef Antons Gumbo Mix" + $0.SupplierID = 2 + $0.CategoryID = 2 + $0.QuantityPerUnit = "36 boxes" + $0.UnitPrice = 21.3500 + $0.UnitsInStock = 0 + $0.UnitsOnOrder = 0.030 + $0.ReorderLevel = 0 + $0.Discontinued = true + $0.OrderDate = Invoice.toDate("2011-11-11") + $0.OrderDateDelay = Invoice.toDate("2011-11-11") + $0.OrderFullDate = Invoice.toDate("2011-11-11") + }) + self.add(item: Invoice().apply { + $0.ProductID = 6 + $0.ProductName = "Grandmas Boysenberry Spread" + $0.SupplierID = 3 + $0.CategoryID = 2 + $0.QuantityPerUnit = "12 - 8 oz jars" + $0.UnitPrice = 25.0000 + $0.UnitsInStock = 0 + $0.UnitsOnOrder = 0.030 + $0.ReorderLevel = 25 + $0.Discontinued = false + $0.OrderDate = Invoice.toDate("2017-12-17") + $0.OrderDateDelay = Invoice.toDate("2017-12-17") + $0.OrderFullDate = Invoice.toDate("2017-12-17") + }) + self.add(item: Invoice().apply { + $0.ProductID = 7 + $0.ProductName = "Uncle Bobs Organic Dried Pears" + $0.SupplierID = 3 + $0.CategoryID = 7 + $0.QuantityPerUnit = "12 - 1 lb pkgs." + $0.UnitPrice = 30.0000 + $0.UnitsInStock = 150 + $0.UnitsOnOrder = 0.030 + $0.ReorderLevel = 10 + $0.Discontinued = false + $0.OrderDate = Invoice.toDate("2016-07-17") + $0.OrderDateDelay = Invoice.toDate("2016-07-17") + $0.OrderFullDate = Invoice.toDate("2016-07-17") + }) + self.add(item: Invoice().apply { + $0.ProductID = 8 + $0.ProductName = "Northwoods Cranberry Sauce" + $0.SupplierID = 3 + $0.CategoryID = 2 + $0.QuantityPerUnit = "12 - 12 oz jars" + $0.UnitPrice = 40.0000 + $0.UnitsInStock = 6 + $0.UnitsOnOrder = 0.030 + $0.ReorderLevel = 0 + $0.Discontinued = false + $0.OrderDate = Invoice.toDate("2018-01-17") + $0.OrderDateDelay = Invoice.toDate("2018-01-17") + $0.OrderFullDate = Invoice.toDate("2018-01-17") + }) + self.add(item: Invoice().apply { + $0.ProductID = 9 + $0.ProductName = "Mishi Kobe Niku" + $0.SupplierID = 4 + $0.CategoryID = 6 + $0.QuantityPerUnit = "18 - 500 g pkgs." + $0.UnitPrice = 97.0000 + $0.UnitsInStock = 29 + $0.UnitsOnOrder = 0.030 + $0.ReorderLevel = 0 + $0.Discontinued = true + $0.OrderDate = Invoice.toDate("2010-02-17") + $0.OrderDateDelay = Invoice.toDate("2010-02-17") + $0.OrderFullDate = Invoice.toDate("2010-02-17") + }) + } + + public required init(arrayLiteral: Invoice?...) { + super.init(array: arrayLiteral); + } +} + +public class Invoice: ISampleDataItem { + public init() {} + + public var ProductID: Int = 0 + public var ProductName: String? = nil + public var SupplierID: Int = 0 + public var CategoryID: Int = 0 + public var QuantityPerUnit: String? = nil + public var UnitPrice: Double = 0.0 + public var UnitsInStock: Int = 0 + public var UnitsOnOrder: Double = 0.0 + public var ReorderLevel: Int = 0 + public var Discontinued: Bool = false + public var OrderDate: Date = Date() + public var OrderDateDelay: Date = Date() + public var OrderFullDate: Date = Date() + + public static func toDate(_ dateString: String) -> Date { + let formatter = DateFormatter() + formatter.dateFormat = "yyyy-MM-dd" + return formatter.date(from: dateString) ?? Date() + } +} +//end data diff --git a/code-gen-library/InvoicesWorldData/XPLAT-CONFIG.json b/code-gen-library/InvoicesWorldData/XPLAT-CONFIG.json new file mode 100644 index 000000000..40727ac66 --- /dev/null +++ b/code-gen-library/InvoicesWorldData/XPLAT-CONFIG.json @@ -0,0 +1,7 @@ +[{ + "platform": "Kotlin", + "location": "jsonFile" +},{ + "platform": "Swift", + "location": "jsonFile" +}] \ No newline at end of file diff --git a/code-gen-library/MultiColumnsExportData/XPLAT-CONFIG.json b/code-gen-library/MultiColumnsExportData/XPLAT-CONFIG.json index 0c11c2eb2..868e143ee 100644 --- a/code-gen-library/MultiColumnsExportData/XPLAT-CONFIG.json +++ b/code-gen-library/MultiColumnsExportData/XPLAT-CONFIG.json @@ -6,5 +6,11 @@ { "platform": "React", "location": "jsonFile" - } + },{ + "platform": "Kotlin", + "location": "jsonFile" + },{ + "platform": "Swift", + "location": "jsonFile" +} ] diff --git a/code-gen-library/MultipleStocks/Android.kt b/code-gen-library/MultipleStocks/Android.kt new file mode 100644 index 000000000..366655fab --- /dev/null +++ b/code-gen-library/MultipleStocks/Android.kt @@ -0,0 +1,94 @@ +//begin imports +//end imports + +//begin async data +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.withContext +import java.net.URL +import java.text.SimpleDateFormat +import java.util.* +import org.json.JSONArray +import org.json.JSONObject + +public class StockItem( + var open: Double? = null, + var close: Double? = null, + var high: Double? = null, + var low: Double? = null, + var volume: Double? = null, + var date: Calendar? = null +) + +public class MultipleStocks { + + suspend fun fetch(): List> { + val dataSources = listOf( + getGoogleStock(), + getAmazonStock() + ) + return dataSources + } + + suspend fun getAmazonStock(): List { + val url = "https://static.infragistics.com/xplatform/data/stocks/stockAmazon.json" + val jsonData = fetchJsonArray(url) + val stockData = convertData(jsonData) + // You can attach metadata here if needed + return stockData + } + + suspend fun getGoogleStock(): List { + val url = "https://static.infragistics.com/xplatform/data/stocks/stockGoogle.json" + val jsonData = fetchJsonArray(url) + val stockData = convertData(jsonData) + return stockData + } + + suspend fun getTeslaStock(): List { + val url = "https://static.infragistics.com/xplatform/data/stocks/stockTesla.json" + val jsonData = fetchJsonArray(url) + return convertData(jsonData) + } + + suspend fun getMicrosoftStock(): List { + val url = "https://static.infragistics.com/xplatform/data/stocks/stockMicrosoft.json" + val jsonData = fetchJsonArray(url) + return convertData(jsonData) + } + + private suspend fun fetchJsonArray(url: String): JSONArray = withContext(Dispatchers.IO) { + val jsonText = URL(url).readText() + JSONArray(jsonText) + } + + private fun convertData(jsonArray: JSONArray): List { + val stockItems = mutableListOf() + val dateFormat = SimpleDateFormat("yyyy-MM-dd", Locale.US) + + for (i in 0 until jsonArray.length()) { + val json = jsonArray.getJSONObject(i) + val date = dateFormat.parse(json.getString("date"))?.apply { + hours = 13 + minutes = 0 + seconds = 0 + } + val calendar = Calendar.getInstance().apply { + time = date ?: Date() + } + + val item = StockItem( + open = json.optDouble("open"), + high = json.optDouble("high"), + low = json.optDouble("low"), + close = json.optDouble("close"), + volume = json.optDouble("volume"), + date = calendar + ) + stockItems.add(item) + } + + return stockItems + } +} + +//end async data \ No newline at end of file diff --git a/code-gen-library/MultipleStocks/WPF.cs b/code-gen-library/MultipleStocks/Desktop.cs similarity index 100% rename from code-gen-library/MultipleStocks/WPF.cs rename to code-gen-library/MultipleStocks/Desktop.cs diff --git a/code-gen-library/MultipleStocks/iOS.swift b/code-gen-library/MultipleStocks/iOS.swift new file mode 100644 index 000000000..3f23b4621 --- /dev/null +++ b/code-gen-library/MultipleStocks/iOS.swift @@ -0,0 +1,101 @@ +//begin imports +//end imports + +//begin async data +import Foundation + +public class StockItem: ISampleDataItem { + public var open: Double? + public var close: Double? + public var high: Double? + public var low: Double? + public var volume: Double? + public var date: Date? + + public init(open: Double? = nil, close: Double? = nil, high: Double? = nil, low: Double? = nil, volume: Double? = nil, date: Date? = nil) { + self.open = open + self.close = close + self.high = high + self.low = low + self.volume = volume + self.date = date + } +} + +public class MultipleStocks { + + public func fetch() async -> [[StockItem]] { + async let google = getGoogleStock() + async let amazon = getAmazonStock() + return await [google, amazon] + } + + public func getAmazonStock() async -> [StockItem] { + let url = "https://static.infragistics.com/xplatform/data/stocks/stockAmazon.json" + let jsonData = await fetchJsonArray(url: url) + let stockData = convertData(jsonArray: jsonData) + // You can attach metadata here if needed + return stockData + } + + public func getGoogleStock() async -> [StockItem] { + let url = "https://static.infragistics.com/xplatform/data/stocks/stockGoogle.json" + let jsonData = await fetchJsonArray(url: url) + let stockData = convertData(jsonArray: jsonData) + return stockData + } + + public func getTeslaStock() async -> [StockItem] { + let url = "https://static.infragistics.com/xplatform/data/stocks/stockTesla.json" + let jsonData = await fetchJsonArray(url: url) + return convertData(jsonArray: jsonData) + } + + public func getMicrosoftStock() async -> [StockItem] { + let url = "https://static.infragistics.com/xplatform/data/stocks/stockMicrosoft.json" + let jsonData = await fetchJsonArray(url: url) + return convertData(jsonArray: jsonData) + } + + private func fetchJsonArray(url: String) async -> [[String: Any]] { + guard let url = URL(string: url) else { return [] } + do { + let (data, _) = try await URLSession.shared.data(from: url) + if let jsonArray = try JSONSerialization.jsonObject(with: data) as? [[String: Any]] { + return jsonArray + } + } catch { + print("Error fetching JSON: \(error)") + } + return [] + } + + private func convertData(jsonArray: [[String: Any]]) -> [StockItem] { + var stockItems: [StockItem] = [] + let dateFormatter = DateFormatter() + dateFormatter.dateFormat = "yyyy-MM-dd" + dateFormatter.locale = Locale(identifier: "en_US") + + for json in jsonArray { + let dateString = json["date"] as? String ?? "" + var date = dateFormatter.date(from: dateString) + if let d = date { + var calendar = Foundation.Calendar.current + date = calendar.date(bySettingHour: 13, minute: 0, second: 0, of: d) + } + + let item = StockItem( + open: json["open"] as? Double, + close: json["close"] as? Double, + high: json["high"] as? Double, + low: json["low"] as? Double, + volume: json["volume"] as? Double, + date: date + ) + stockItems.append(item) + } + + return stockItems + } +} +//end async data diff --git a/code-gen-library/MyTimelineData/Android.kt b/code-gen-library/MyTimelineData/Android.kt new file mode 100644 index 000000000..2fb342f2a --- /dev/null +++ b/code-gen-library/MyTimelineData/Android.kt @@ -0,0 +1,36 @@ +//begin imports +//end imports + +//begin data +public class MyTimelineData: ArrayList { + constructor() { + + this.add(MyTimelineInfo().apply { Index = 0; Label = "0"; Value = 10.0; Date = toDate("2000-01-11")}); + this.add(MyTimelineInfo().apply { Index = 1; Label = "1"; Value = 40.0; Date = toDate("2000-01-12")}); + this.add(MyTimelineInfo().apply { Index = 2; Label = "2"; Value = 20.0; Date = toDate("2000-01-13")}); + this.add(MyTimelineInfo().apply { Index = 3; Label = "3"; Value = 30.0; Date = toDate("2000-01-14")}); + } +} + +public class MyTimelineInfo +{ + constructor() { + } + public var Index: Int = 0; + public var Value: Double = 0.0; + public var Label: String? = null; + public var Details: String? = null; + public var Date: java.util.Calendar? = null; + + public fun toDate(dateString: String): java.util.Calendar { + val calendar = java.util.Calendar.getInstance() + try { + val dateFormat = java.text.SimpleDateFormat("yyyy-MM-dd") + calendar.time = dateFormat.parse(dateString) + } catch (e: Exception) { + e.printStackTrace() + } + return calendar + } +} +//end data diff --git a/code-gen-library/MyTimelineData/WPF.cs b/code-gen-library/MyTimelineData/Destkop.cs similarity index 100% rename from code-gen-library/MyTimelineData/WPF.cs rename to code-gen-library/MyTimelineData/Destkop.cs diff --git a/code-gen-library/MyTimelineData/iOS.swift b/code-gen-library/MyTimelineData/iOS.swift new file mode 100644 index 000000000..abc720804 --- /dev/null +++ b/code-gen-library/MyTimelineData/iOS.swift @@ -0,0 +1,54 @@ +//begin imports +//end imports + +//begin data +public class MyTimelineData: ArrayList { + public init() { + super.init(); + self.add(item: MyTimelineInfo().apply { + $0.Index = 0 + $0.Label = "0" + $0.Value = 10.0 + $0.Date = MyTimelineInfo.toDate("2000-01-11") + }) + self.add(item: MyTimelineInfo().apply { + $0.Index = 1 + $0.Label = "1" + $0.Value = 40.0 + $0.Date = MyTimelineInfo.toDate("2000-01-12") + }) + self.add(item: MyTimelineInfo().apply { + $0.Index = 2 + $0.Label = "2" + $0.Value = 20.0 + $0.Date = MyTimelineInfo.toDate("2000-01-13") + }) + self.add(item: MyTimelineInfo().apply { + $0.Index = 3 + $0.Label = "3" + $0.Value = 30.0 + $0.Date = MyTimelineInfo.toDate("2000-01-14") + }) + } + + public required init(arrayLiteral: MyTimelineInfo...) { + super.init(array: arrayLiteral); + } +} + +public class MyTimelineInfo: ISampleDataItem { + public init() {} + + public var Index: Int = 0 + public var Value: Double = 0.0 + public var Label: String? = nil + public var Details: String? = nil + public var Date: Date? = nil + + public static func toDate(_ dateString: String) -> Date? { + let formatter = DateFormatter() + formatter.dateFormat = "yyyy-MM-dd" + return formatter.date(from: dateString) + } +} +//end data diff --git a/code-gen-library/PivotData/XPLAT-CONFIG.json b/code-gen-library/PivotData/XPLAT-CONFIG.json new file mode 100644 index 000000000..1fbcc020b --- /dev/null +++ b/code-gen-library/PivotData/XPLAT-CONFIG.json @@ -0,0 +1,8 @@ +[{ + "platform": "Kotlin", + "location": "jsonFile" + +},{ + "platform": "Swift", + "location": "jsonFile" +}] \ No newline at end of file diff --git a/code-gen-library/PivotDataFlat/XPLAT-CONFIG.json b/code-gen-library/PivotDataFlat/XPLAT-CONFIG.json new file mode 100644 index 000000000..40727ac66 --- /dev/null +++ b/code-gen-library/PivotDataFlat/XPLAT-CONFIG.json @@ -0,0 +1,7 @@ +[{ + "platform": "Kotlin", + "location": "jsonFile" +},{ + "platform": "Swift", + "location": "jsonFile" +}] \ No newline at end of file diff --git a/code-gen-library/PivotSalesData/XPLAT-CONFIG.json b/code-gen-library/PivotSalesData/XPLAT-CONFIG.json new file mode 100644 index 000000000..87d1fb391 --- /dev/null +++ b/code-gen-library/PivotSalesData/XPLAT-CONFIG.json @@ -0,0 +1,4 @@ +[{ + "platform": "Kotlin", + "location": "jsonFile" +}] \ No newline at end of file diff --git a/code-gen-library/PropertyEditorInitAggregationsOnViewInit/Android.kt b/code-gen-library/PropertyEditorInitAggregationsOnViewInit/Android.kt new file mode 100644 index 000000000..3d2216833 --- /dev/null +++ b/code-gen-library/PropertyEditorInitAggregationsOnViewInit/Android.kt @@ -0,0 +1,53 @@ +//begin imports +import com.infragistics.mobile.controls.IgaPropertyEditorPanel; +import com.infragistics.mobile.controls.IgaPropertyEditorPropertyDescription; +import com.infragistics.mobile.controls.IgaPropertyEditorPropertyDescriptionChangedEventArgs; +import com.infragistics.mobile.controls.IgaCategoryChart; +import com.infragistics.mobile.controls.IgaPropertyEditorValueType; +//end imports + +import com.infragistics.mobile.controls.CodeGenHelper; + +public class PropertyEditorInitAggregationsOnViewInit { + + //begin eventHandler + public fun propertyEditorInitAggregationsOnViewInit() { + + var editor = CodeGenHelper.getDescription("editor"); + var initialSummariesDropdown = IgaPropertyEditorPropertyDescription(); + var sortGroupsDropdown = IgaPropertyEditorPropertyDescription(); + + initialSummariesDropdown.label = "Initial Summaries"; + initialSummariesDropdown.valueType = PropertyEditorValueType.EnumValue; + initialSummariesDropdown.shouldOverrideDefaultEditor = true; + initialSummariesDropdown.dropDownNames = arrayOf("Sum(Sales) as Sales", "Avg(Sales) as Sales", "Min(Sales) as Sales", "Max(Sales) as Sales", "Count(Sales) as Sales" ); + initialSummariesDropdown.dropDownValues = arrayOf("Sum(Sales) as Sales", "Avg(Sales) as Sales", "Min(Sales) as Sales", "Max(Sales) as Sales", "Count(Sales) as Sales" ); + + sortGroupsDropdown.label = "Sort Groups" + sortGroupsDropdown.valueType = IgaPropertyEditorValueType.EnumValue; + sortGroupsDropdown.shouldOverrideDefaultEditor = true; + sortGroupsDropdown.dropDownNames = arrayOf("Sales Asc", "Sales Desc"); + sortGroupsDropdown.dropDownValues = arrayOf("Sales Asc","Sales Desc"); + + editor.properties.add(initialSummariesDropdown); + editor.properties.add(sortGroupsDropdown); + + initialSummariesDropdown.changed = this.editorChangeUpdateInitialSummaries; + sortGroupsDropdown.changed = this.editorChangeUpdateGroupSorts; + } + + public fun editorChangeUpdateInitialSummaries(sender: Any?, args: IgaPropertyEditorPropertyDescriptionChangedEventArgs) { + + var chart = CodeGenHelper.getDescription("content"); + var intialSummaryVal = args.newValue.toString(); + chart.initialSummaries = intialSummaryVal; + } + + public fun editorChangeUpdateGroupSorts(sender: Any?, args: IgaPropertyEditorPropertyDescriptionChangedEventArgs) { + var chart = CodeGenHelper.getDescription("content"); + var groupSortsVal = args.newValue.toString(); + chart.groupSorts = groupSortsVal; + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/PropertyEditorInitAggregationsOnViewInit/iOS.swift b/code-gen-library/PropertyEditorInitAggregationsOnViewInit/iOS.swift new file mode 100644 index 000000000..e17b0c171 --- /dev/null +++ b/code-gen-library/PropertyEditorInitAggregationsOnViewInit/iOS.swift @@ -0,0 +1,45 @@ +//begin imports +//end imports + +public class PropertyEditorInitAggregationsOnViewInit { + + //begin eventHandler + public func propertyEditorInitAggregationsOnViewInit() { + + var editor = CodeGenHelper.getDescription(IgsPropertyEditorPanel.self, "editor") + var initialSummariesDropdown = IgsPropertyEditorPropertyDescription() + var sortGroupsDropdown = IgsPropertyEditorPropertyDescription() + + initialSummariesDropdown.label = "Initial Summaries" + initialSummariesDropdown.valueType = PropertyEditorValueType.EnumValue + initialSummariesDropdown.shouldOverrideDefaultEditor = true + initialSummariesDropdown.dropDownNames = ["Sum(Sales) as Sales", "Avg(Sales) as Sales", "Min(Sales) as Sales", "Max(Sales) as Sales", "Count(Sales) as Sales"] + initialSummariesDropdown.dropDownValues = ["Sum(Sales) as Sales", "Avg(Sales) as Sales", "Min(Sales) as Sales", "Max(Sales) as Sales", "Count(Sales) as Sales"] + + sortGroupsDropdown.label = "Sort Groups" + sortGroupsDropdown.valueType = IgsPropertyEditorValueType.EnumValue + sortGroupsDropdown.shouldOverrideDefaultEditor = true + sortGroupsDropdown.dropDownNames = ["Sales Asc", "Sales Desc"] + sortGroupsDropdown.dropDownValues = ["Sales Asc", "Sales Desc"] + + editor.properties.append(initialSummariesDropdown) + editor.properties.append(sortGroupsDropdown) + + initialSummariesDropdown.changed = self.editorChangeUpdateInitialSummaries + sortGroupsDropdown.changed = self.editorChangeUpdateGroupSorts + } + + public func editorChangeUpdateInitialSummaries(sender: Any?, args: IgsPropertyEditorPropertyDescriptionChangedEventArgs?) { + + var chart = CodeGenHelper.getDescription(IgsCategoryChart.self, "content") + var intialSummaryVal = String(describing: args.newValue) + chart.initialSummaries = intialSummaryVal + } + + public func editorChangeUpdateGroupSorts(sender: Any?, args: IgsPropertyEditorPropertyDescriptionChangedEventArgs?) { + var chart = CodeGenHelper.getDescription(IgsCategoryChart.self, "content") + var groupSortsVal = String(describing: args.newValue) + chart.groupSorts = groupSortsVal + } + //end eventHandler +} diff --git a/code-gen-library/RetailSalesPerformanceData/XPLAT.json b/code-gen-library/RetailSalesPerformanceData/XPLAT.json index f7a7cf3b8..468ca01c7 100644 --- a/code-gen-library/RetailSalesPerformanceData/XPLAT.json +++ b/code-gen-library/RetailSalesPerformanceData/XPLAT.json @@ -3,289 +3,289 @@ "Category": "Home Appliances", "Subcategory": "Cleaning", "Product": "Vacuum A", - "Sales (Units)": 694, - "Revenue ($)": 528828, - "Profit ($)": 105765.6 + "Sales": 694, + "Revenue": 528828, + "Profit": 105765.6 }, { "Category": "Home Appliances", "Subcategory": "Cleaning", "Product": "Mop B", - "Sales (Units)": 675, - "Revenue ($)": 382050, - "Profit ($)": 76410.0 + "Sales": 675, + "Revenue": 382050, + "Profit": 76410.0 }, { "Category": "Electronics", "Subcategory": "Laptops", "Product": "Laptop C", - "Sales (Units)": 671, - "Revenue ($)": 504592, - "Profit ($)": 100918.40000000001 + "Sales": 671, + "Revenue": 504592, + "Profit": 100918.40000000001 }, { "Category": "Furniture", "Subcategory": "Bedroom", "Product": "Wardrobe B", - "Sales (Units)": 212, - "Revenue ($)": 54060, - "Profit ($)": 10812.0 + "Sales": 212, + "Revenue": 54060, + "Profit": 10812.0 }, { "Category": "Home Appliances", "Subcategory": "Kitchen", "Product": "Blender A", - "Sales (Units)": 181, - "Revenue ($)": 79821, - "Profit ($)": 15964.2 + "Sales": 181, + "Revenue": 79821, + "Profit": 15964.2 }, { "Category": "Furniture", "Subcategory": "Bedroom", "Product": "Dresser C", - "Sales (Units)": 434, - "Revenue ($)": 148428, - "Profit ($)": 29685.600000000002 + "Sales": 434, + "Revenue": 148428, + "Profit": 29685.600000000002 }, { "Category": "Furniture", "Subcategory": "Office", "Product": "Desk A", - "Sales (Units)": 441, - "Revenue ($)": 244314, - "Profit ($)": 48862.8 + "Sales": 441, + "Revenue": 244314, + "Profit": 48862.8 }, { "Category": "Furniture", "Subcategory": "Bedroom", "Product": "Dresser C", - "Sales (Units)": 429, - "Revenue ($)": 167739, - "Profit ($)": 33547.8 + "Sales": 429, + "Revenue": 167739, + "Profit": 33547.8 }, { "Category": "Furniture", "Subcategory": "Office", "Product": "Desk A", - "Sales (Units)": 537, - "Revenue ($)": 516594, - "Profit ($)": 103318.8 + "Sales": 537, + "Revenue": 516594, + "Profit": 103318.8 }, { "Category": "Home Appliances", "Subcategory": "Cleaning", "Product": "Broom C", - "Sales (Units)": 439, - "Revenue ($)": 340225, - "Profit ($)": 68045.0 + "Sales": 439, + "Revenue": 340225, + "Profit": 68045.0 }, { "Category": "Home Appliances", "Subcategory": "Laundry", "Product": "Dryer B", - "Sales (Units)": 338, - "Revenue ($)": 176774, - "Profit ($)": 35354.8 + "Sales": 338, + "Revenue": 176774, + "Profit": 35354.8 }, { "Category": "Home Appliances", "Subcategory": "Laundry", "Product": "Iron C", - "Sales (Units)": 510, - "Revenue ($)": 380460, - "Profit ($)": 76092.0 + "Sales": 510, + "Revenue": 380460, + "Profit": 76092.0 }, { "Category": "Electronics", "Subcategory": "Mobile Phones", "Product": "Smartphone A", - "Sales (Units)": 882, - "Revenue ($)": 480690, - "Profit ($)": 96138.0 + "Sales": 882, + "Revenue": 480690, + "Profit": 96138.0 }, { "Category": "Home Appliances", "Subcategory": "Kitchen", "Product": "Microwave B", - "Sales (Units)": 504, - "Revenue ($)": 195048, - "Profit ($)": 39009.6 + "Sales": 504, + "Revenue": 195048, + "Profit": 39009.6 }, { "Category": "Furniture", "Subcategory": "Office", "Product": "Desk A", - "Sales (Units)": 633, - "Revenue ($)": 243072, - "Profit ($)": 48614.4 + "Sales": 633, + "Revenue": 243072, + "Profit": 48614.4 }, { "Category": "Home Appliances", "Subcategory": "Cleaning", "Product": "Broom C", - "Sales (Units)": 772, - "Revenue ($)": 470148, - "Profit ($)": 94029.6 + "Sales": 772, + "Revenue": 470148, + "Profit": 94029.6 }, { "Category": "Electronics", "Subcategory": "Tablets", "Product": "Tablet B", - "Sales (Units)": 910, - "Revenue ($)": 413140, - "Profit ($)": 82628.0 + "Sales": 910, + "Revenue": 413140, + "Profit": 82628.0 }, { "Category": "Furniture", "Subcategory": "Bedroom", "Product": "Dresser C", - "Sales (Units)": 53, - "Revenue ($)": 48813, - "Profit ($)": 9762.6 + "Sales": 53, + "Revenue": 48813, + "Profit": 9762.6 }, { "Category": "Electronics", "Subcategory": "Mobile Phones", "Product": "Smartphone C", - "Sales (Units)": 741, - "Revenue ($)": 259350, - "Profit ($)": 51870.0 + "Sales": 741, + "Revenue": 259350, + "Profit": 51870.0 }, { "Category": "Home Appliances", "Subcategory": "Cleaning", "Product": "Vacuum A", - "Sales (Units)": 944, - "Revenue ($)": 607936, - "Profit ($)": 121587.20000000001 + "Sales": 944, + "Revenue": 607936, + "Profit": 121587.20000000001 }, { "Category": "Home Appliances", "Subcategory": "Kitchen", "Product": "Toaster C", - "Sales (Units)": 644, - "Revenue ($)": 293020, - "Profit ($)": 58604.0 + "Sales": 644, + "Revenue": 293020, + "Profit": 58604.0 }, { "Category": "Electronics", "Subcategory": "Tablets", "Product": "Tablet B", - "Sales (Units)": 692, - "Revenue ($)": 405512, - "Profit ($)": 81102.40000000001 + "Sales": 692, + "Revenue": 405512, + "Profit": 81102.40000000001 }, { "Category": "Furniture", "Subcategory": "Living Room", "Product": "Coffee Table B", - "Sales (Units)": 378, - "Revenue ($)": 300888, - "Profit ($)": 60177.600000000006 + "Sales": 378, + "Revenue": 300888, + "Profit": 60177.600000000006 }, { "Category": "Furniture", "Subcategory": "Bedroom", "Product": "Bed A", - "Sales (Units)": 717, - "Revenue ($)": 205779, - "Profit ($)": 41155.8 + "Sales": 717, + "Revenue": 205779, + "Profit": 41155.8 }, { "Category": "Home Appliances", "Subcategory": "Laundry", "Product": "Washing Machine", - "Sales (Units)": 399, - "Revenue ($)": 83391, - "Profit ($)": 16678.2 + "Sales": 399, + "Revenue": 83391, + "Profit": 16678.2 }, { "Category": "Home Appliances", "Subcategory": "Laundry", "Product": "Dryer B", - "Sales (Units)": 107, - "Revenue ($)": 55533, - "Profit ($)": 11106.6 + "Sales": 107, + "Revenue": 55533, + "Profit": 11106.6 }, { "Category": "Electronics", "Subcategory": "Mobile Phones", "Product": "Smartphone A", - "Sales (Units)": 853, - "Revenue ($)": 512653, - "Profit ($)": 102530.6 + "Sales": 853, + "Revenue": 512653, + "Profit": 102530.6 }, { "Category": "Home Appliances", "Subcategory": "Kitchen", "Product": "Toaster C", - "Sales (Units)": 830, - "Revenue ($)": 392590, - "Profit ($)": 78518.0 + "Sales": 830, + "Revenue": 392590, + "Profit": 78518.0 }, { "Category": "Electronics", "Subcategory": "Mobile Phones", "Product": "Smartphone C", - "Sales (Units)": 527, - "Revenue ($)": 463760, - "Profit ($)": 92752.0 + "Sales": 527, + "Revenue": 463760, + "Profit": 92752.0 }, { "Category": "Home Appliances", "Subcategory": "Kitchen", "Product": "Toaster C", - "Sales (Units)": 847, - "Revenue ($)": 579348, - "Profit ($)": 115869.6 + "Sales": 847, + "Revenue": 579348, + "Profit": 115869.6 }, { "Category": "Furniture", "Subcategory": "Living Room", "Product": "TV Stand C", - "Sales (Units)": 692, - "Revenue ($)": 382676, - "Profit ($)": 76535.2 + "Sales": 692, + "Revenue": 382676, + "Profit": 76535.2 }, { "Category": "Electronics", "Subcategory": "Laptops", "Product": "Laptop A", - "Sales (Units)": 799, - "Revenue ($)": 288439, - "Profit ($)": 57687.8 + "Sales": 799, + "Revenue": 288439, + "Profit": 57687.8 }, { "Category": "Furniture", "Subcategory": "Living Room", "Product": "Coffee Table B", - "Sales (Units)": 764, - "Revenue ($)": 374360, - "Profit ($)": 74872.0 + "Sales": 764, + "Revenue": 374360, + "Profit": 74872.0 }, { "Category": "Furniture", "Subcategory": "Living Room", "Product": "TV Stand C", - "Sales (Units)": 263, - "Revenue ($)": 88894, - "Profit ($)": 17778.8 + "Sales": 263, + "Revenue": 88894, + "Profit": 17778.8 }, { "Category": "Furniture", "Subcategory": "Bedroom", "Product": "Bed A", - "Sales (Units)": 784, - "Revenue ($)": 254800, - "Profit ($)": 50960.0 + "Sales": 784, + "Revenue": 254800, + "Profit": 50960.0 }, { "Category": "Home Appliances", "Subcategory": "Laundry", "Product": "Dryer B", - "Sales (Units)": 958, - "Revenue ($)": 695508, - "Profit ($)": 139101.6 + "Sales": 958, + "Revenue": 695508, + "Profit": 139101.6 }, { "Category": "Electronics", diff --git a/code-gen-library/RetailSalesPerformanceLocalDataSource/WPF.cs b/code-gen-library/RetailSalesPerformanceLocalDataSource/Desktop.cs similarity index 80% rename from code-gen-library/RetailSalesPerformanceLocalDataSource/WPF.cs rename to code-gen-library/RetailSalesPerformanceLocalDataSource/Desktop.cs index f645b6b61..dc7b23335 100644 --- a/code-gen-library/RetailSalesPerformanceLocalDataSource/WPF.cs +++ b/code-gen-library/RetailSalesPerformanceLocalDataSource/Desktop.cs @@ -2,6 +2,7 @@ using System; using System.Collections.Generic; using System.Collections; +using Infragistics.Controls.DataSource; //end imports public class RetailSalesPerformanceLocalDataSource : LocalDataSource @@ -9,10 +10,10 @@ public class RetailSalesPerformanceLocalDataSource : LocalDataSource public RetailSalesPerformanceLocalDataSource(){ - List data = new List(); + List data = new List(); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Home Appliances", Subcategory = "Cleaning", @@ -21,7 +22,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 528828, Profit = 105765.6 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Home Appliances", Subcategory = "Cleaning", @@ -30,7 +31,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 382050, Profit = 76410.0 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Electronics", Subcategory = "Laptops", @@ -39,7 +40,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 504592, Profit = 100918.40000000001 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Furniture", Subcategory = "Bedroom", @@ -48,7 +49,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 54060, Profit = 10812.0 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Home Appliances", Subcategory = "Kitchen", @@ -57,7 +58,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 79821, Profit = 15964.2 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Furniture", Subcategory = "Bedroom", @@ -66,7 +67,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 148428, Profit = 29685.600000000002 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Furniture", Subcategory = "Office", @@ -75,7 +76,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 244314, Profit = 48862.8 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Furniture", Subcategory = "Bedroom", @@ -84,7 +85,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 167739, Profit = 33547.8 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Furniture", Subcategory = "Office", @@ -93,7 +94,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 516594, Profit = 103318.8 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Home Appliances", Subcategory = "Cleaning", @@ -102,7 +103,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 340225, Profit = 68045.0 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Home Appliances", Subcategory = "Laundry", @@ -111,7 +112,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 176774, Profit = 35354.8 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Home Appliances", Subcategory = "Laundry", @@ -120,7 +121,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 380460, Profit = 76092.0 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Electronics", Subcategory = "Mobile Phones", @@ -129,7 +130,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 480690, Profit = 96138.0 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Home Appliances", Subcategory = "Kitchen", @@ -138,7 +139,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 195048, Profit = 39009.6 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Furniture", Subcategory = "Office", @@ -147,7 +148,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 243072, Profit = 48614.4 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Home Appliances", Subcategory = "Cleaning", @@ -156,7 +157,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 470148, Profit = 94029.6 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Electronics", Subcategory = "Tablets", @@ -165,7 +166,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 413140, Profit = 82628.0 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Furniture", Subcategory = "Bedroom", @@ -174,7 +175,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 48813, Profit = 9762.6 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Electronics", Subcategory = "Mobile Phones", @@ -183,7 +184,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 259350, Profit = 51870.0 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Home Appliances", Subcategory = "Cleaning", @@ -192,7 +193,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 607936, Profit = 121587.20000000001 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Home Appliances", Subcategory = "Kitchen", @@ -201,7 +202,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 293020, Profit = 58604.0 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Electronics", Subcategory = "Tablets", @@ -210,7 +211,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 405512, Profit = 81102.40000000001 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Furniture", Subcategory = "Living Room", @@ -219,7 +220,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 300888, Profit = 60177.600000000006 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Furniture", Subcategory = "Bedroom", @@ -228,7 +229,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 205779, Profit = 41155.8 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Home Appliances", Subcategory = "Laundry", @@ -237,7 +238,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 83391, Profit = 16678.2 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Home Appliances", Subcategory = "Laundry", @@ -246,7 +247,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 55533, Profit = 11106.6 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Electronics", Subcategory = "Mobile Phones", @@ -255,7 +256,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 512653, Profit = 102530.6 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Home Appliances", Subcategory = "Kitchen", @@ -264,7 +265,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 392590, Profit = 78518.0 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Electronics", Subcategory = "Mobile Phones", @@ -273,7 +274,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 463760, Profit = 92752.0 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Home Appliances", Subcategory = "Kitchen", @@ -282,7 +283,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 579348, Profit = 115869.6 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Furniture", Subcategory = "Living Room", @@ -291,7 +292,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 382676, Profit = 76535.2 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Electronics", Subcategory = "Laptops", @@ -300,7 +301,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 288439, Profit = 57687.8 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Furniture", Subcategory = "Living Room", @@ -309,7 +310,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 374360, Profit = 74872.0 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Furniture", Subcategory = "Living Room", @@ -318,7 +319,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 88894, Profit = 17778.8 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Furniture", Subcategory = "Bedroom", @@ -327,7 +328,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 254800, Profit = 50960.0 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Home Appliances", Subcategory = "Laundry", @@ -336,7 +337,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 695508, Profit = 139101.6 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Electronics", Subcategory = "Laptops", @@ -345,7 +346,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 209616, Profit = 41923.200000000004 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Electronics", Subcategory = "Laptops", @@ -354,7 +355,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 257983, Profit = 51596.600000000006 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Furniture", Subcategory = "Office", @@ -363,7 +364,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 346500, Profit = 69300.0 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Electronics", Subcategory = "Mobile Phones", @@ -372,7 +373,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 84972, Profit = 16994.4 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Home Appliances", Subcategory = "Laundry", @@ -381,7 +382,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 99936, Profit = 19987.2 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Furniture", Subcategory = "Office", @@ -390,7 +391,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 252413, Profit = 50482.600000000006 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Electronics", Subcategory = "Laptops", @@ -399,7 +400,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 246250, Profit = 49250.0 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Furniture", Subcategory = "Living Room", @@ -408,7 +409,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 870428, Profit = 174085.6 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Furniture", Subcategory = "Bedroom", @@ -417,7 +418,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 325628, Profit = 65125.600000000006 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Furniture", Subcategory = "Office", @@ -426,7 +427,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 85347, Profit = 17069.4 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Furniture", Subcategory = "Bedroom", @@ -435,7 +436,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 50740, Profit = 10148.0 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Electronics", Subcategory = "Laptops", @@ -444,7 +445,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 320142, Profit = 64028.4 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Home Appliances", Subcategory = "Cleaning", @@ -453,7 +454,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 12483, Profit = 2496.6000000000004 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Electronics", Subcategory = "Tablets", @@ -462,7 +463,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 15860, Profit = 3172.0 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Furniture", Subcategory = "Living Room", @@ -471,7 +472,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 39396, Profit = 7879.200000000001 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Furniture", Subcategory = "Living Room", @@ -480,7 +481,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 617065, Profit = 123413.0 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Furniture", Subcategory = "Bedroom", @@ -489,7 +490,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 115884, Profit = 23176.800000000003 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Electronics", Subcategory = "Laptops", @@ -498,7 +499,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 737840, Profit = 147568.0 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Furniture", Subcategory = "Living Room", @@ -507,7 +508,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 318780, Profit = 63756.0 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Home Appliances", Subcategory = "Cleaning", @@ -516,7 +517,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 395550, Profit = 79110.0 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Furniture", Subcategory = "Living Room", @@ -525,7 +526,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 208765, Profit = 41753.0 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Furniture", Subcategory = "Bedroom", @@ -534,7 +535,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 409248, Profit = 81849.6 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Electronics", Subcategory = "Tablets", @@ -543,7 +544,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 880752, Profit = 176150.40000000002 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Home Appliances", Subcategory = "Laundry", @@ -552,7 +553,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 614684, Profit = 122936.8 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Furniture", Subcategory = "Living Room", @@ -561,7 +562,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 398202, Profit = 79640.40000000001 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Home Appliances", Subcategory = "Laundry", @@ -570,7 +571,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 344040, Profit = 68808.0 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Electronics", Subcategory = "Tablets", @@ -579,7 +580,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 354384, Profit = 70876.8 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Home Appliances", Subcategory = "Cleaning", @@ -588,7 +589,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 446831, Profit = 89366.20000000001 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Furniture", Subcategory = "Living Room", @@ -597,7 +598,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 221328, Profit = 44265.600000000006 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Electronics", Subcategory = "Tablets", @@ -606,7 +607,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 69856, Profit = 13971.2 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Home Appliances", Subcategory = "Laundry", @@ -615,7 +616,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 315464, Profit = 63092.8 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Home Appliances", Subcategory = "Cleaning", @@ -624,7 +625,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 42435, Profit = 8487.0 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Furniture", Subcategory = "Office", @@ -633,7 +634,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 197508, Profit = 39501.600000000006 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Furniture", Subcategory = "Office", @@ -642,7 +643,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 171479, Profit = 34295.8 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Home Appliances", Subcategory = "Cleaning", @@ -651,7 +652,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 627465, Profit = 125493.0 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Electronics", Subcategory = "Mobile Phones", @@ -660,7 +661,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 51811, Profit = 10362.2 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Home Appliances", Subcategory = "Cleaning", @@ -669,7 +670,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 147356, Profit = 29471.2 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Home Appliances", Subcategory = "Cleaning", @@ -678,7 +679,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 82280, Profit = 16456.0 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Electronics", Subcategory = "Mobile Phones", @@ -687,7 +688,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 432014, Profit = 86402.8 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Furniture", Subcategory = "Bedroom", @@ -696,7 +697,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 126900, Profit = 25380.0 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Home Appliances", Subcategory = "Cleaning", @@ -705,7 +706,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 106743, Profit = 21348.600000000002 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Home Appliances", Subcategory = "Laundry", @@ -714,7 +715,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 367724, Profit = 73544.8 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Home Appliances", Subcategory = "Kitchen", @@ -723,7 +724,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 308975, Profit = 61795.0 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Furniture", Subcategory = "Office", @@ -732,7 +733,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 37200, Profit = 7440.0 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Furniture", Subcategory = "Living Room", @@ -741,7 +742,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 886000, Profit = 177200.0 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Electronics", Subcategory = "Mobile Phones", @@ -750,7 +751,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 107464, Profit = 21492.800000000003 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Home Appliances", Subcategory = "Kitchen", @@ -759,7 +760,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 182416, Profit = 36483.200000000004 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Electronics", Subcategory = "Tablets", @@ -768,7 +769,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 247818, Profit = 49563.600000000006 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Furniture", Subcategory = "Bedroom", @@ -777,7 +778,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 528710, Profit = 105742.0 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Electronics", Subcategory = "Tablets", @@ -786,7 +787,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 136203, Profit = 27240.600000000002 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Electronics", Subcategory = "Laptops", @@ -795,7 +796,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 343882, Profit = 68776.40000000001 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Home Appliances", Subcategory = "Kitchen", @@ -804,7 +805,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 164996, Profit = 32999.200000000004 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Furniture", Subcategory = "Living Room", @@ -813,7 +814,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 180960, Profit = 36192.0 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Electronics", Subcategory = "Tablets", @@ -822,7 +823,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 351680, Profit = 70336.0 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Electronics", Subcategory = "Mobile Phones", @@ -831,7 +832,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 279801, Profit = 55960.200000000004 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Home Appliances", Subcategory = "Cleaning", @@ -840,7 +841,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 49473, Profit = 9894.6 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Home Appliances", Subcategory = "Kitchen", @@ -849,7 +850,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 359921, Profit = 71984.2 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Furniture", Subcategory = "Office", @@ -858,7 +859,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 112056, Profit = 22411.2 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Electronics", Subcategory = "Tablets", @@ -867,7 +868,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 54912, Profit = 10982.400000000001 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Electronics", Subcategory = "Laptops", @@ -876,7 +877,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 642284, Profit = 128456.8 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Electronics", Subcategory = "Laptops", @@ -885,7 +886,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 386610, Profit = 77322.0 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Electronics", Subcategory = "Mobile Phones", @@ -894,7 +895,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 125852, Profit = 25170.4 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Furniture", Subcategory = "Living Room", @@ -903,7 +904,7 @@ public RetailSalesPerformanceLocalDataSource(){ Revenue = 623198, Profit = 124639.6 }); - data.Add(new RetailSalesPerformanceDataItem() + data.Add(new RetailSalesPerformanceDataLDSItem() { Category = "Home Appliances", Subcategory = "Cleaning", @@ -914,11 +915,11 @@ public RetailSalesPerformanceLocalDataSource(){ }); - this.DataSource = data; + this.ItemsSource = data; } } - public class RetailSalesPerformanceDataItem + public class RetailSalesPerformanceDataLDSItem { public string Category { get; set; } public string Subcategory { get; set; } diff --git a/code-gen-library/SalesData/XPLAT-CONFIG.json b/code-gen-library/SalesData/XPLAT-CONFIG.json new file mode 100644 index 000000000..87d1fb391 --- /dev/null +++ b/code-gen-library/SalesData/XPLAT-CONFIG.json @@ -0,0 +1,4 @@ +[{ + "platform": "Kotlin", + "location": "jsonFile" +}] \ No newline at end of file diff --git a/code-gen-library/SalesEmbedded/Android.kt b/code-gen-library/SalesEmbedded/Android.kt new file mode 100644 index 000000000..666eb7a52 --- /dev/null +++ b/code-gen-library/SalesEmbedded/Android.kt @@ -0,0 +1,1072 @@ +//begin imports +//end imports + +//begin data +public class SalesEmbedded: ArrayList { + constructor() { + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "501"; ManufacturingPrice = 15.0; SalePrice = 23.0; GrossSales = 26440.0; Discounts = 0.0; Sales = 26440.0; COGS = 16185.0; Profit = 11255.0; Date = "1/1/20"; MonthName = "January"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Kensington"; UnitsSold = "1372"; ManufacturingPrice = 3.0; SalePrice = 20.0; GrossSales = 27440.0; Discounts = 0.0; Sales = 27440.0; COGS = 16185.0; Profit = 11255.0; Date = "1/1/20"; MonthName = "January"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Kensington"; UnitsSold = "2762"; ManufacturingPrice = 3.0; SalePrice = 20.0; GrossSales = 55240.0; Discounts = 0.0; Sales = 55240.0; COGS = 13210.0; Profit = 42030.0; Date = "1/1/20"; MonthName = "January"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Kensington"; UnitsSold = "1464"; ManufacturingPrice = 3.0; SalePrice = 15.0; GrossSales = 21960.0; Discounts = 0.0; Sales = 21960.0; COGS = 21780.0; Profit = 180.0; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Kensington"; UnitsSold = "719"; ManufacturingPrice = 3.0; SalePrice = 15.0; GrossSales = 10785.0; Discounts = 0.0; Sales = 10785.0; COGS = 8880.0; Profit = 1905.0; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Kensington"; UnitsSold = "3576"; ManufacturingPrice = 3.0; SalePrice = 15.0; GrossSales = 53640.0; Discounts = 0.0; Sales = 53640.0; COGS = 24700.0; Profit = 28940.0; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Kensington"; UnitsSold = "4422"; ManufacturingPrice = 3.0; SalePrice = 350.0; GrossSales = 1547700.0; Discounts = 0.0; Sales = 1547700.0; COGS = 393380.0; Profit = 1154320.0; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Royal Oak"; UnitsSold = "3649"; ManufacturingPrice = 5.0; SalePrice = 15.0; GrossSales = 54735.0; Discounts = 0.0; Sales = 54735.0; COGS = 9210.0; Profit = 45525.0; Date = "3/1/20"; MonthName = "March"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Royal Oak"; UnitsSold = "4172"; ManufacturingPrice = 5.0; SalePrice = 12.0; GrossSales = 50064.0; Discounts = 0.0; Sales = 50064.0; COGS = 7554.0; Profit = 42510.0; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Royal Oak"; UnitsSold = "3841"; ManufacturingPrice = 5.0; SalePrice = 20.0; GrossSales = 76820.0; Discounts = 0.0; Sales = 76820.0; COGS = 18990.0; Profit = 57830.0; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Royal Oak"; UnitsSold = "3726"; ManufacturingPrice = 5.0; SalePrice = 12.0; GrossSales = 44712.0; Discounts = 0.0; Sales = 44712.0; COGS = 4635.0; Profit = 40077.0; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Royal Oak"; UnitsSold = "2625"; ManufacturingPrice = 5.0; SalePrice = 15.0; GrossSales = 39375.0; Discounts = 0.0; Sales = 39375.0; COGS = 24700.0; Profit = 14675.0; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Royal Oak"; UnitsSold = "1958"; ManufacturingPrice = 5.0; SalePrice = 125.0; GrossSales = 244750.0; Discounts = 0.0; Sales = 244750.0; COGS = 319860.0; Profit = 75110.0; Date = "7/1/20"; MonthName = "July"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Royal Oak"; UnitsSold = "3271"; ManufacturingPrice = 5.0; SalePrice = 300.0; GrossSales = 981300.0; Discounts = 0.0; Sales = 981300.0; COGS = 239500.0; Profit = 741800.0; Date = "8/1/20"; MonthName = "August"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Royal Oak"; UnitsSold = "2091"; ManufacturingPrice = 5.0; SalePrice = 7.0; GrossSales = 14637.0; Discounts = 0.0; Sales = 14637.0; COGS = 10730.0; Profit = 3907.0; Date = "9/1/20"; MonthName = "September"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Royal Oak"; UnitsSold = "2825"; ManufacturingPrice = 5.0; SalePrice = 15.0; GrossSales = 42375.0; Discounts = 0.0; Sales = 42375.0; COGS = 6150.0; Profit = 36225.0; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "2513"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 50260.0; Discounts = 0.0; Sales = 50260.0; COGS = 2920.0; Profit = 47340.0; Date = "2/1/20"; MonthName = "February"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "883"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 13245.0; Discounts = 0.0; Sales = 13245.0; COGS = 9740.0; Profit = 3505.0; Date = "2/1/20"; MonthName = "February"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "2087"; ManufacturingPrice = 10.0; SalePrice = 12.0; GrossSales = 25044.0; Discounts = 0.0; Sales = 25044.0; COGS = 7554.0; Profit = 17490.0; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "2563"; ManufacturingPrice = 10.0; SalePrice = 350.0; GrossSales = 897050.0; Discounts = 0.0; Sales = 897050.0; COGS = 261560.0; Profit = 635490.0; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "2846"; ManufacturingPrice = 10.0; SalePrice = 12.0; GrossSales = 34152.0; Discounts = 0.0; Sales = 34152.0; COGS = 1101.0; Profit = 33051.0; Date = "7/1/20"; MonthName = "July"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "997"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 6979.0; Discounts = 0.0; Sales = 6979.0; COGS = 4415.0; Profit = 2564.0; Date = "8/1/20"; MonthName = "August"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "2290"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 34350.0; Discounts = 0.0; Sales = 34350.0; COGS = 24720.0; Profit = 9630.0; Date = "9/1/20"; MonthName = "September"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "2133"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 14931.0; Discounts = 0.0; Sales = 14931.0; COGS = 5715.0; Profit = 9216.0; Date = "10/1/20"; MonthName = "October"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "3617"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 72340.0; Discounts = 0.0; Sales = 72340.0; COGS = 18170.0; Profit = 54170.0; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "1266"; ManufacturingPrice = 10.0; SalePrice = 350.0; GrossSales = 443100.0; Discounts = 0.0; Sales = 443100.0; COGS = 393380.0; Profit = 49720.0; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Burlington"; UnitsSold = "894"; ManufacturingPrice = 120.0; SalePrice = 7.0; GrossSales = 6258.0; Discounts = 0.0; Sales = 6258.0; COGS = 7465.0; Profit = 1207.0; Date = "1/1/20"; MonthName = "January"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Burlington"; UnitsSold = "2725"; ManufacturingPrice = 120.0; SalePrice = 125.0; GrossSales = 340625.0; Discounts = 0.0; Sales = 340625.0; COGS = 216480.0; Profit = 124145.0; Date = "2/1/20"; MonthName = "February"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Burlington"; UnitsSold = "3061"; ManufacturingPrice = 120.0; SalePrice = 12.0; GrossSales = 36732.0; Discounts = 0.0; Sales = 36732.0; COGS = 6483.0; Profit = 30249.0; Date = "3/1/20"; MonthName = "March"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Burlington"; UnitsSold = "3958"; ManufacturingPrice = 120.0; SalePrice = 350.0; GrossSales = 1385300.0; Discounts = 0.0; Sales = 1385300.0; COGS = 261560.0; Profit = 1123740.0; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Burlington"; UnitsSold = "3920"; ManufacturingPrice = 120.0; SalePrice = 12.0; GrossSales = 47040.0; Discounts = 0.0; Sales = 47040.0; COGS = 4635.0; Profit = 42405.0; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Burlington"; UnitsSold = "3381"; ManufacturingPrice = 120.0; SalePrice = 125.0; GrossSales = 422625.0; Discounts = 0.0; Sales = 422625.0; COGS = 338520.0; Profit = 84105.0; Date = "8/1/20"; MonthName = "August"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Mandarin"; UnitsSold = "4307"; ManufacturingPrice = 250.0; SalePrice = 300.0; GrossSales = 1292100.0; Discounts = 0.0; Sales = 1292100.0; COGS = 500250.0; Profit = 791850.0; Date = "2/1/20"; MonthName = "February"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Mandarin"; UnitsSold = "878"; ManufacturingPrice = 250.0; SalePrice = 12.0; GrossSales = 10536.0; Discounts = 0.0; Sales = 10536.0; COGS = 8514.0; Profit = 2022.0; Date = "4/1/20"; MonthName = "April"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Mandarin"; UnitsSold = "496"; ManufacturingPrice = 250.0; SalePrice = 15.0; GrossSales = 7440.0; Discounts = 0.0; Sales = 7440.0; COGS = 21780.0; Profit = 14340.0; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Mandarin"; UnitsSold = "3367"; ManufacturingPrice = 250.0; SalePrice = 15.0; GrossSales = 50505.0; Discounts = 0.0; Sales = 50505.0; COGS = 8880.0; Profit = 41625.0; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Mandarin"; UnitsSold = "2055"; ManufacturingPrice = 250.0; SalePrice = 300.0; GrossSales = 616500.0; Discounts = 0.0; Sales = 616500.0; COGS = 537750.0; Profit = 78750.0; Date = "9/1/20"; MonthName = "September"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Mandarin"; UnitsSold = "4041"; ManufacturingPrice = 250.0; SalePrice = 20.0; GrossSales = 80820.0; Discounts = 0.0; Sales = 80820.0; COGS = 18170.0; Profit = 62650.0; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Luxe"; UnitsSold = "3237"; ManufacturingPrice = 260.0; SalePrice = 350.0; GrossSales = 1132950.0; Discounts = 0.0; Sales = 1132950.0; COGS = 715000.0; Profit = 417950.0; Date = "2/1/20"; MonthName = "February"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Luxe"; UnitsSold = "630"; ManufacturingPrice = 260.0; SalePrice = 12.0; GrossSales = 7560.0; Discounts = 0.0; Sales = 7560.0; COGS = 5859.0; Profit = 1701.0; Date = "4/1/20"; MonthName = "April"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Luxe"; UnitsSold = "4210"; ManufacturingPrice = 260.0; SalePrice = 125.0; GrossSales = 526250.0; Discounts = 0.0; Sales = 526250.0; COGS = 506340.0; Profit = 19910.0; Date = "4/1/20"; MonthName = "April"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Luxe"; UnitsSold = "1127"; ManufacturingPrice = 260.0; SalePrice = 20.0; GrossSales = 22540.0; Discounts = 0.0; Sales = 22540.0; COGS = 18990.0; Profit = 3550.0; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Luxe"; UnitsSold = "3438"; ManufacturingPrice = 260.0; SalePrice = 7.0; GrossSales = 24066.0; Discounts = 0.0; Sales = 24066.0; COGS = 8430.0; Profit = 15636.0; Date = "7/1/20"; MonthName = "July"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Luxe"; UnitsSold = "2015"; ManufacturingPrice = 260.0; SalePrice = 12.0; GrossSales = 24180.0; Discounts = 0.0; Sales = 24180.0; COGS = 6423.0; Profit = 17757.0; Date = "8/1/20"; MonthName = "August"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Luxe"; UnitsSold = "2534"; ManufacturingPrice = 260.0; SalePrice = 7.0; GrossSales = 17738.0; Discounts = 0.0; Sales = 17738.0; COGS = 5715.0; Profit = 12023.0; Date = "10/1/20"; MonthName = "October"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Luxe"; UnitsSold = "1384"; ManufacturingPrice = 260.0; SalePrice = 15.0; GrossSales = 20760.0; Discounts = 0.0; Sales = 20760.0; COGS = 6150.0; Profit = 14610.0; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "3561"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 24927.0; Discounts = 276.15; Sales = 24650.85; COGS = 19725.0; Profit = 4925.85; Date = "1/1/20"; MonthName = "January"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "1823"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 27345.0; Discounts = 344.4; Sales = 27000.6; COGS = 22960.0; Profit = 4040.6; Date = "2/1/20"; MonthName = "February"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "2795"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 19565.0; Discounts = 72.1; Sales = 19492.9; COGS = 5150.0; Profit = 14342.9; Date = "5/1/20"; MonthName = "May"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Burlington"; UnitsSold = "457"; ManufacturingPrice = 120.0; SalePrice = 7.0; GrossSales = 3199.0; Discounts = 44.73; Sales = 3154.27; COGS = 3195.0; Profit = 40.73; Date = "11/1/20"; MonthName = "November"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Mandarin"; UnitsSold = "3785"; ManufacturingPrice = 250.0; SalePrice = 7.0; GrossSales = 26495.0; Discounts = 92.82; Sales = 26402.18; COGS = 6630.0; Profit = 19772.18; Date = "3/1/20"; MonthName = "March"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Kensington"; UnitsSold = "748"; ManufacturingPrice = 3.0; SalePrice = 12.0; GrossSales = 8976.0; Discounts = 222.96; Sales = 8753.04; COGS = 5574.0; Profit = 3179.04; Date = "2/1/20"; MonthName = "February"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Kensington"; UnitsSold = "1021"; ManufacturingPrice = 3.0; SalePrice = 350.0; GrossSales = 357350.0; Discounts = 4235.0; Sales = 353115.0; COGS = 314600.0; Profit = 38515.0; Date = "3/1/20"; MonthName = "March"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Kensington"; UnitsSold = "2076"; ManufacturingPrice = 3.0; SalePrice = 7.0; GrossSales = 14532.0; Discounts = 177.03; Sales = 14354.97; COGS = 12645.0; Profit = 1709.97; Date = "7/1/20"; MonthName = "July"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Kensington"; UnitsSold = "4316"; ManufacturingPrice = 3.0; SalePrice = 12.0; GrossSales = 51792.0; Discounts = 173.4; Sales = 51618.6; COGS = 4335.0; Profit = 47283.6; Date = "9/1/20"; MonthName = "September"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Kensington"; UnitsSold = "4174"; ManufacturingPrice = 3.0; SalePrice = 12.0; GrossSales = 50088.0; Discounts = 320.52; Sales = 49767.48; COGS = 8013.0; Profit = 41754.48; Date = "9/1/20"; MonthName = "September"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Kensington"; UnitsSold = "3736"; ManufacturingPrice = 3.0; SalePrice = 350.0; GrossSales = 1307600.0; Discounts = 4889.5; Sales = 1302710.5; COGS = 363220.0; Profit = 939490.5; Date = "10/1/20"; MonthName = "October"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Kensington"; UnitsSold = "1914"; ManufacturingPrice = 3.0; SalePrice = 350.0; GrossSales = 669900.0; Discounts = 7542.5; Sales = 662357.5; COGS = 560300.0; Profit = 102057.5; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Royal Oak"; UnitsSold = "2742"; ManufacturingPrice = 5.0; SalePrice = 15.0; GrossSales = 41130.0; Discounts = 332.1; Sales = 40797.9; COGS = 22140.0; Profit = 18657.9; Date = "3/1/20"; MonthName = "March"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Royal Oak"; UnitsSold = "1499"; ManufacturingPrice = 5.0; SalePrice = 300.0; GrossSales = 449700.0; Discounts = 6903.0; Sales = 442797.0; COGS = 575250.0; Profit = 132453.0; Date = "4/1/20"; MonthName = "April"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Royal Oak"; UnitsSold = "3772"; ManufacturingPrice = 5.0; SalePrice = 20.0; GrossSales = 75440.0; Discounts = 275.1; Sales = 75164.9; COGS = 13755.0; Profit = 61409.9; Date = "7/1/20"; MonthName = "July"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Royal Oak"; UnitsSold = "1112"; ManufacturingPrice = 5.0; SalePrice = 7.0; GrossSales = 7784.0; Discounts = 128.1; Sales = 7655.9; COGS = 9150.0; Profit = 1494.1; Date = "8/1/20"; MonthName = "August"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "2368"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 35520.0; Discounts = 227.1; Sales = 35292.9; COGS = 15140.0; Profit = 20152.9; Date = "2/1/20"; MonthName = "February"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "1586"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 11102.0; Discounts = 314.48; Sales = 10787.52; COGS = 22462.5; Profit = 11674.98; Date = "4/1/20"; MonthName = "April"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "3386"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 423250.0; Discounts = 908.75; Sales = 422341.25; COGS = 87240.0; Profit = 335101.25; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "852"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 106500.0; Discounts = 983.75; Sales = 105516.25; COGS = 94440.0; Profit = 11076.25; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "2783"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 347875.0; Discounts = 2278.75; Sales = 345596.25; COGS = 218760.0; Profit = 126836.25; Date = "7/1/20"; MonthName = "July"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "2684"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 40260.0; Discounts = 112.05; Sales = 40147.95; COGS = 7470.0; Profit = 32677.95; Date = "9/1/20"; MonthName = "September"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "4083"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 1224900.0; Discounts = 8715.0; Sales = 1216185.0; COGS = 726250.0; Profit = 489935.0; Date = "11/1/20"; MonthName = "November"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "2816"; ManufacturingPrice = 10.0; SalePrice = 350.0; GrossSales = 985600.0; Discounts = 7542.5; Sales = 978057.5; COGS = 560300.0; Profit = 417757.5; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Burlington"; UnitsSold = "4294"; ManufacturingPrice = 120.0; SalePrice = 20.0; GrossSales = 85880.0; Discounts = 772.8; Sales = 85107.2; COGS = 38640.0; Profit = 46467.2; Date = "4/1/20"; MonthName = "April"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Burlington"; UnitsSold = "2856"; ManufacturingPrice = 120.0; SalePrice = 7.0; GrossSales = 19992.0; Discounts = 25.34; Sales = 19966.66; COGS = 1810.0; Profit = 18156.66; Date = "5/1/20"; MonthName = "May"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Burlington"; UnitsSold = "1407"; ManufacturingPrice = 120.0; SalePrice = 125.0; GrossSales = 175875.0; Discounts = 1153.75; Sales = 174721.25; COGS = 110760.0; Profit = 63961.25; Date = "8/1/20"; MonthName = "August"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Mandarin"; UnitsSold = "1265"; ManufacturingPrice = 250.0; SalePrice = 7.0; GrossSales = 8855.0; Discounts = 18.41; Sales = 8836.59; COGS = 1315.0; Profit = 7521.59; Date = "3/1/20"; MonthName = "March"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Mandarin"; UnitsSold = "3892"; ManufacturingPrice = 250.0; SalePrice = 350.0; GrossSales = 1362200.0; Discounts = 3302.25; Sales = 1358897.75; COGS = 245310.0; Profit = 1113587.75; Date = "4/1/20"; MonthName = "April"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Mandarin"; UnitsSold = "3068"; ManufacturingPrice = 250.0; SalePrice = 125.0; GrossSales = 383500.0; Discounts = 908.75; Sales = 382591.25; COGS = 87240.0; Profit = 295351.25; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Mandarin"; UnitsSold = "2181"; ManufacturingPrice = 250.0; SalePrice = 125.0; GrossSales = 272625.0; Discounts = 983.75; Sales = 271641.25; COGS = 94440.0; Profit = 177201.25; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Mandarin"; UnitsSold = "1356"; ManufacturingPrice = 250.0; SalePrice = 300.0; GrossSales = 406800.0; Discounts = 2958.0; Sales = 403842.0; COGS = 246500.0; Profit = 177201.25; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Mandarin"; UnitsSold = "1814"; ManufacturingPrice = 250.0; SalePrice = 350.0; GrossSales = 634900.0; Discounts = 4889.5; Sales = 630010.5; COGS = 363220.0; Profit = 266790.5; Date = "10/1/20"; MonthName = "October"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Mandarin"; UnitsSold = "1495"; ManufacturingPrice = 250.0; SalePrice = 125.0; GrossSales = 186875.0; Discounts = 2180.0; Sales = 184695.0; COGS = 209280.0; Profit = 24585.0; Date = "11/1/20"; MonthName = "November"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Kensington"; UnitsSold = "1463"; ManufacturingPrice = 3.0; SalePrice = 125.0; GrossSales = 182875.0; Discounts = 1856.25; Sales = 181018.75; COGS = 89100.0; Profit = 91918.75; Date = "4/1/20"; MonthName = "April"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Kensington"; UnitsSold = "215"; ManufacturingPrice = 3.0; SalePrice = 12.0; GrossSales = 2580.0; Discounts = 310.8; Sales = 2269.2; COGS = 3885.0; Profit = 1615.8; Date = "10/1/20"; MonthName = "October"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Kensington"; UnitsSold = "566"; ManufacturingPrice = 3.0; SalePrice = 350.0; GrossSales = 198100.0; Discounts = 19964.0; Sales = 178136.0; COGS = 741520.0; Profit = 563384.0; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Royal Oak"; UnitsSold = "3255"; ManufacturingPrice = 5.0; SalePrice = 12.0; GrossSales = 39060.0; Discounts = 274.08; Sales = 38785.92; COGS = 3426.0; Profit = 35359.92; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Royal Oak"; UnitsSold = "772"; ManufacturingPrice = 5.0; SalePrice = 20.0; GrossSales = 15440.0; Discounts = 626.4; Sales = 14813.6; COGS = 15660.0; Profit = 846.4; Date = "10/1/20"; MonthName = "October"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Royal Oak"; UnitsSold = "1135"; ManufacturingPrice = 5.0; SalePrice = 12.0; GrossSales = 13620.0; Discounts = 165.6; Sales = 13454.4; COGS = 2070.0; Profit = 11384.4; Date = "11/1/20"; MonthName = "November"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "1193"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 17895.0; Discounts = 708.9; Sales = 17186.1; COGS = 23630.0; Profit = 6443.9; Date = "2/1/20"; MonthName = "February"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "2530"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 759000.0; Discounts = 5508.0; Sales = 753492.0; COGS = 229500.0; Profit = 523992.0; Date = "5/1/20"; MonthName = "May"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "3451"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 1035300.0; Discounts = 10368.0; Sales = 1024932.0; COGS = 432000.0; Profit = 592932.0; Date = "5/1/20"; MonthName = "May"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "3059"; ManufacturingPrice = 10.0; SalePrice = 12.0; GrossSales = 36708.0; Discounts = 274.08; Sales = 36433.92; COGS = 3426.0; Profit = 33007.92; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "3957"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 494625.0; Discounts = 1655.0; Sales = 492970.0; COGS = 79440.0; Profit = 413530.0; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "3444"; ManufacturingPrice = 10.0; SalePrice = 12.0; GrossSales = 41328.0; Discounts = 310.8; Sales = 41017.2; COGS = 3885.0; Profit = 37132.2; Date = "10/1/20"; MonthName = "October"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "3154"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 946200.0; Discounts = 11496.0; Sales = 934704.0; COGS = 479000.0; Profit = 455704.0; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "4108"; ManufacturingPrice = 10.0; SalePrice = 350.0; GrossSales = 1437800.0; Discounts = 19964.0; Sales = 1417836.0; COGS = 741520.0; Profit = 676316.0; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "3760"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 470000.0; Discounts = 6822.5; Sales = 463177.5; COGS = 327480.0; Profit = 135697.5; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "2334"; ManufacturingPrice = 10.0; SalePrice = 12.0; GrossSales = 28008.0; Discounts = 253.2; Sales = 27754.8; COGS = 3165.0; Profit = 24589.8; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "580"; ManufacturingPrice = 10.0; SalePrice = 12.0; GrossSales = 6960.0; Discounts = 260.16; Sales = 6699.84; COGS = 3252.0; Profit = 3447.84; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Burlington"; UnitsSold = "2610"; ManufacturingPrice = 120.0; SalePrice = 20.0; GrossSales = 52200.0; Discounts = 626.4; Sales = 51573.6; COGS = 15660.0; Profit = 35913.6; Date = "10/1/20"; MonthName = "October"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Burlington"; UnitsSold = "1459"; ManufacturingPrice = 120.0; SalePrice = 350.0; GrossSales = 510650.0; Discounts = 20139.0; Sales = 490511.0; COGS = 748020.0; Profit = 257509.0; Date = "10/1/20"; MonthName = "October"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Burlington"; UnitsSold = "3774"; ManufacturingPrice = 120.0; SalePrice = 12.0; GrossSales = 45288.0; Discounts = 253.2; Sales = 45034.8; COGS = 3165.0; Profit = 41869.8; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Burlington"; UnitsSold = "2572"; ManufacturingPrice = 120.0; SalePrice = 12.0; GrossSales = 30864.0; Discounts = 260.16; Sales = 30603.84; COGS = 3252.0; Profit = 27351.84; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Mandarin"; UnitsSold = "320"; ManufacturingPrice = 250.0; SalePrice = 125.0; GrossSales = 40000.0; Discounts = 1655.0; Sales = 38345.0; COGS = 79440.0; Profit = 41095.0; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Mandarin"; UnitsSold = "3275"; ManufacturingPrice = 250.0; SalePrice = 350.0; GrossSales = 1146250.0; Discounts = 20139.0; Sales = 1126111.0; COGS = 748020.0; Profit = 378091.0; Date = "10/1/20"; MonthName = "October"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Mandarin"; UnitsSold = "3582"; ManufacturingPrice = 250.0; SalePrice = 125.0; GrossSales = 447750.0; Discounts = 6822.5; Sales = 440927.5; COGS = 327480.0; Profit = 113447.5; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Luxe"; UnitsSold = "4056"; ManufacturingPrice = 260.0; SalePrice = 300.0; GrossSales = 1216800.0; Discounts = 1554.0; Sales = 1215246.0; COGS = 64750.0; Profit = 1150496.0; Date = "3/1/20"; MonthName = "March"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Luxe"; UnitsSold = "2144"; ManufacturingPrice = 260.0; SalePrice = 300.0; GrossSales = 643200.0; Discounts = 6606.0; Sales = 636594.0; COGS = 275250.0; Profit = 361344.0; Date = "3/1/20"; MonthName = "March"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Luxe"; UnitsSold = "3502"; ManufacturingPrice = 260.0; SalePrice = 125.0; GrossSales = 437750.0; Discounts = 5690.0; Sales = 432060.0; COGS = 273120.0; Profit = 158940.0; Date = "5/1/20"; MonthName = "May"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Luxe"; UnitsSold = "679"; ManufacturingPrice = 260.0; SalePrice = 20.0; GrossSales = 13580.0; Discounts = 494.4; Sales = 13085.6; COGS = 12360.0; Profit = 725.6; Date = "11/1/20"; MonthName = "November"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Luxe"; UnitsSold = "2351"; ManufacturingPrice = 260.0; SalePrice = 20.0; GrossSales = 47020.0; Discounts = 376.4; Sales = 46643.6; COGS = 9410.0; Profit = 37233.6; Date = "11/1/20"; MonthName = "November"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Luxe"; UnitsSold = "2043"; ManufacturingPrice = 260.0; SalePrice = 300.0; GrossSales = 612900.0; Discounts = 11496.0; Sales = 601404.0; COGS = 479000.0; Profit = 122404.0; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Kensington"; UnitsSold = "3565"; ManufacturingPrice = 3.0; SalePrice = 125.0; GrossSales = 445625.0; Discounts = 15913.13; Sales = 429711.88; COGS = 509220.0; Profit = 79508.13; Date = "4/1/20"; MonthName = "April"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Kensington"; UnitsSold = "1401"; ManufacturingPrice = 3.0; SalePrice = 20.0; GrossSales = 28020.0; Discounts = 1548.0; Sales = 26472.0; COGS = 25800.0; Profit = 672.0; Date = "4/1/20"; MonthName = "April"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Kensington"; UnitsSold = "2077"; ManufacturingPrice = 3.0; SalePrice = 300.0; GrossSales = 623100.0; Discounts = 6201.0; Sales = 616899.0; COGS = 172250.0; Profit = 444649.0; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Kensington"; UnitsSold = "3643"; ManufacturingPrice = 3.0; SalePrice = 12.0; GrossSales = 43716.0; Discounts = 700.92; Sales = 43015.08; COGS = 5841.0; Profit = 37174.08; Date = "9/1/20"; MonthName = "September"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Royal Oak"; UnitsSold = "2960"; ManufacturingPrice = 5.0; SalePrice = 7.0; GrossSales = 20720.0; Discounts = 411.18; Sales = 20308.82; COGS = 9790.0; Profit = 10518.82; Date = "2/1/20"; MonthName = "February"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Royal Oak"; UnitsSold = "1201"; ManufacturingPrice = 5.0; SalePrice = 12.0; GrossSales = 14412.0; Discounts = 684.36; Sales = 13727.64; COGS = 5703.0; Profit = 8024.64; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Royal Oak"; UnitsSold = "2321"; ManufacturingPrice = 5.0; SalePrice = 7.0; GrossSales = 16247.0; Discounts = 114.24; Sales = 16132.76; COGS = 2720.0; Profit = 13412.76; Date = "9/1/20"; MonthName = "September"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Royal Oak"; UnitsSold = "3972"; ManufacturingPrice = 5.0; SalePrice = 125.0; GrossSales = 496500.0; Discounts = 4826.25; Sales = 491673.75; COGS = 154440.0; Profit = 337233.75; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Royal Oak"; UnitsSold = "3878"; ManufacturingPrice = 5.0; SalePrice = 125.0; GrossSales = 484750.0; Discounts = 6397.5; Sales = 478352.5; COGS = 204720.0; Profit = 273632.5; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "2278"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 683400.0; Discounts = 21910.5; Sales = 661489.5; COGS = 608625.0; Profit = 52864.5; Date = "1/1/20"; MonthName = "January"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "1075"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 134375.0; Discounts = 6652.5; Sales = 127722.5; COGS = 212880.0; Profit = 85157.5; Date = "3/1/20"; MonthName = "March"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "4050"; ManufacturingPrice = 10.0; SalePrice = 12.0; GrossSales = 48600.0; Discounts = 684.36; Sales = 47915.64; COGS = 5703.0; Profit = 42212.64; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "3035"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 910500.0; Discounts = 6201.0; Sales = 904299.0; COGS = 172250.0; Profit = 732049.0; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "3636"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 454500.0; Discounts = 5887.5; Sales = 448612.5; COGS = 188400.0; Profit = 260212.5; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "1379"; ManufacturingPrice = 10.0; SalePrice = 12.0; GrossSales = 16548.0; Discounts = 493.02; Sales = 16054.98; COGS = 4108.5; Profit = 11946.48; Date = "7/1/20"; MonthName = "July"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "4492"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 561500.0; Discounts = 7533.75; Sales = 553966.25; COGS = 241080.0; Profit = 312886.25; Date = "10/1/20"; MonthName = "October"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "1744"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 218000.0; Discounts = 4826.25; Sales = 213173.75; COGS = 154440.0; Profit = 58733.75; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "2341"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 292625.0; Discounts = 6397.5; Sales = 286227.5; COGS = 204720.0; Profit = 81507.5; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Burlington"; UnitsSold = "3835"; ManufacturingPrice = 120.0; SalePrice = 125.0; GrossSales = 479375.0; Discounts = 7533.75; Sales = 471841.25; COGS = 241080.0; Profit = 230761.25; Date = "10/1/20"; MonthName = "October"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Mandarin"; UnitsSold = "1161"; ManufacturingPrice = 250.0; SalePrice = 300.0; GrossSales = 348300.0; Discounts = 25596.0; Sales = 322704.0; COGS = 711000.0; Profit = 388296.0; Date = "2/1/20"; MonthName = "February"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Mandarin"; UnitsSold = "876"; ManufacturingPrice = 250.0; SalePrice = 12.0; GrossSales = 10512.0; Discounts = 689.76; Sales = 9822.24; COGS = 5748.0; Profit = 4074.24; Date = "4/1/20"; MonthName = "April"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Mandarin"; UnitsSold = "1705"; ManufacturingPrice = 250.0; SalePrice = 125.0; GrossSales = 213125.0; Discounts = 5887.5; Sales = 207237.5; COGS = 188400.0; Profit = 18837.5; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Mandarin"; UnitsSold = "1805"; ManufacturingPrice = 250.0; SalePrice = 300.0; GrossSales = 541500.0; Discounts = 16866.0; Sales = 524634.0; COGS = 468500.0; Profit = 56134.0; Date = "8/1/20"; MonthName = "August"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Mandarin"; UnitsSold = "389"; ManufacturingPrice = 250.0; SalePrice = 350.0; GrossSales = 136150.0; Discounts = 17241.0; Sales = 118909.0; COGS = 426920.0; Profit = 308011.0; Date = "8/1/20"; MonthName = "August"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Kensington"; UnitsSold = "1459"; ManufacturingPrice = 3.0; SalePrice = 20.0; GrossSales = 29180.0; Discounts = 498.6; Sales = 28681.4; COGS = 8310.0; Profit = 20371.4; Date = "5/1/20"; MonthName = "May"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Burlington"; UnitsSold = "4236"; ManufacturingPrice = 120.0; SalePrice = 20.0; GrossSales = 84720.0; Discounts = 2310.3; Sales = 82409.7; COGS = 38505.0; Profit = 43904.7; Date = "4/1/20"; MonthName = "April"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Mandarin"; UnitsSold = "3627"; ManufacturingPrice = 250.0; SalePrice = 12.0; GrossSales = 43524.0; Discounts = 892.44; Sales = 42631.56; COGS = 7437.0; Profit = 35194.56; Date = "1/1/20"; MonthName = "January"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Royal Oak"; UnitsSold = "1756"; ManufacturingPrice = 5.0; SalePrice = 15.0; GrossSales = 26340.0; Discounts = 1218.6; Sales = 25121.4; COGS = 20310.0; Profit = 4811.4; Date = "10/1/20"; MonthName = "October"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "307"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 4605.0; Discounts = 1218.6; Sales = 3386.4; COGS = 20310.0; Profit = 16923.6; Date = "10/1/20"; MonthName = "October"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Kensington"; UnitsSold = "1222"; ManufacturingPrice = 3.0; SalePrice = 300.0; GrossSales = 366600.0; Discounts = 24252.0; Sales = 342348.0; COGS = 505250.0; Profit = 162902.0; Date = "10/1/20"; MonthName = "October"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Kensington"; UnitsSold = "489"; ManufacturingPrice = 3.0; SalePrice = 350.0; GrossSales = 171150.0; Discounts = 3836.0; Sales = 167314.0; COGS = 71240.0; Profit = 96074.0; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Royal Oak"; UnitsSold = "4133"; ManufacturingPrice = 5.0; SalePrice = 15.0; GrossSales = 61995.0; Discounts = 1180.2; Sales = 60814.8; COGS = 19670.0; Profit = 41144.8; Date = "3/1/20"; MonthName = "March"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Royal Oak"; UnitsSold = "2743"; ManufacturingPrice = 5.0; SalePrice = 300.0; GrossSales = 822900.0; Discounts = 22308.0; Sales = 800592.0; COGS = 464750.0; Profit = 335842.0; Date = "8/1/20"; MonthName = "August"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Royal Oak"; UnitsSold = "4460"; ManufacturingPrice = 5.0; SalePrice = 300.0; GrossSales = 1338000.0; Discounts = 24252.0; Sales = 1313748.0; COGS = 505250.0; Profit = 808498.0; Date = "10/1/20"; MonthName = "October"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Royal Oak"; UnitsSold = "1232"; ManufacturingPrice = 5.0; SalePrice = 125.0; GrossSales = 154000.0; Discounts = 5690.0; Sales = 148310.0; COGS = 136560.0; Profit = 11750.0; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "2586"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 18102.0; Discounts = 1190.28; Sales = 16911.72; COGS = 21255.0; Profit = 4343.28; Date = "1/1/20"; MonthName = "January"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "1332"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 166500.0; Discounts = 3975.0; Sales = 162525.0; COGS = 95400.0; Profit = 67125.0; Date = "3/1/20"; MonthName = "March"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "4487"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 1346100.0; Discounts = 16974.0; Sales = 1329126.0; COGS = 353625.0; Profit = 975501.0; Date = "4/1/20"; MonthName = "April"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "3862"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 1158600.0; Discounts = 35016.0; Sales = 1123584.0; COGS = 729500.0; Profit = 394084.0; Date = "5/1/20"; MonthName = "May"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "1765"; ManufacturingPrice = 10.0; SalePrice = 350.0; GrossSales = 617750.0; Discounts = 48300.0; Sales = 569450.0; COGS = 897000.0; Profit = 327550.0; Date = "7/1/20"; MonthName = "July"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "3533"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 441625.0; Discounts = 14940.0; Sales = 426685.0; COGS = 358560.0; Profit = 68125.0; Date = "7/1/20"; MonthName = "July"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "2016"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 30240.0; Discounts = 130.8; Sales = 30109.2; COGS = 2180.0; Profit = 27929.2; Date = "9/1/20"; MonthName = "September"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "2938"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 58760.0; Discounts = 1659.2; Sales = 57100.8; COGS = 20740.0; Profit = 36360.8; Date = "9/1/20"; MonthName = "September"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "3352"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 67040.0; Discounts = 844.8; Sales = 66195.2; COGS = 10560.0; Profit = 55635.2; Date = "9/1/20"; MonthName = "September"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "2430"; ManufacturingPrice = 10.0; SalePrice = 350.0; GrossSales = 850500.0; Discounts = 3836.0; Sales = 846664.0; COGS = 71240.0; Profit = 775424.0; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "535"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 66875.0; Discounts = 5690.0; Sales = 61185.0; COGS = 136560.0; Profit = 75375.0; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Burlington"; UnitsSold = "1523"; ManufacturingPrice = 120.0; SalePrice = 12.0; GrossSales = 18276.0; Discounts = 703.2; Sales = 17572.8; COGS = 4395.0; Profit = 13177.8; Date = "3/1/20"; MonthName = "March"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Burlington"; UnitsSold = "1782"; ManufacturingPrice = 120.0; SalePrice = 350.0; GrossSales = 623700.0; Discounts = 30478.0; Sales = 593222.0; COGS = 566020.0; Profit = 27202.0; Date = "10/1/20"; MonthName = "October"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Mandarin"; UnitsSold = "347"; ManufacturingPrice = 250.0; SalePrice = 12.0; GrossSales = 4164.0; Discounts = 415.68; Sales = 3748.32; COGS = 2598.0; Profit = 1150.32; Date = "5/1/20"; MonthName = "May"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Mandarin"; UnitsSold = "3509"; ManufacturingPrice = 250.0; SalePrice = 350.0; GrossSales = 1228150.0; Discounts = 30478.0; Sales = 1197672.0; COGS = 566020.0; Profit = 631652.0; Date = "10/1/20"; MonthName = "October"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Luxe"; UnitsSold = "2943"; ManufacturingPrice = 260.0; SalePrice = 350.0; GrossSales = 1030050.0; Discounts = 26110.0; Sales = 1003940.0; COGS = 484900.0; Profit = 519040.0; Date = "2/1/20"; MonthName = "February"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Luxe"; UnitsSold = "4037"; ManufacturingPrice = 260.0; SalePrice = 125.0; GrossSales = 504625.0; Discounts = 5370.0; Sales = 499255.0; COGS = 128880.0; Profit = 370375.0; Date = "4/1/20"; MonthName = "April"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Luxe"; UnitsSold = "4146"; ManufacturingPrice = 260.0; SalePrice = 350.0; GrossSales = 1451100.0; Discounts = 26698.0; Sales = 1424402.0; COGS = 495820.0; Profit = 928582.0; Date = "9/1/20"; MonthName = "September"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "725"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 5075.0; Discounts = 480.2; Sales = 4594.8; COGS = 6860.0; Profit = 2265.2; Date = "1/1/20"; MonthName = "January"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "2325"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 16275.0; Discounts = 941.15; Sales = 15333.85; COGS = 13445.0; Profit = 1888.85; Date = "10/1/20"; MonthName = "October"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "675"; ManufacturingPrice = 10.0; SalePrice = 12.0; GrossSales = 8100.0; Discounts = 1458.6; Sales = 6641.4; COGS = 7293.0; Profit = 651.6; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Burlington"; UnitsSold = "2990"; ManufacturingPrice = 120.0; SalePrice = 12.0; GrossSales = 35880.0; Discounts = 1458.6; Sales = 34421.4; COGS = 7293.0; Profit = 27128.4; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Mandarin"; UnitsSold = "1072"; ManufacturingPrice = 250.0; SalePrice = 7.0; GrossSales = 7504.0; Discounts = 941.15; Sales = 6562.85; COGS = 13445.0; Profit = 6882.15; Date = "10/1/20"; MonthName = "October"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Luxe"; UnitsSold = "1048"; ManufacturingPrice = 260.0; SalePrice = 7.0; GrossSales = 7336.0; Discounts = 589.05; Sales = 6746.95; COGS = 8415.0; Profit = 1668.05; Date = "7/1/20"; MonthName = "July"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Luxe"; UnitsSold = "469"; ManufacturingPrice = 260.0; SalePrice = 12.0; GrossSales = 5628.0; Discounts = 673.8; Sales = 4954.2; COGS = 3369.0; Profit = 1585.2; Date = "8/1/20"; MonthName = "August"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Kensington"; UnitsSold = "4240"; ManufacturingPrice = 3.0; SalePrice = 12.0; GrossSales = 50880.0; Discounts = 1119.0; Sales = 49761.0; COGS = 5595.0; Profit = 44166.0; Date = "2/1/20"; MonthName = "February"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Kensington"; UnitsSold = "1976"; ManufacturingPrice = 3.0; SalePrice = 12.0; GrossSales = 23712.0; Discounts = 669.6; Sales = 23042.4; COGS = 3348.0; Profit = 19694.4; Date = "2/1/20"; MonthName = "February"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Kensington"; UnitsSold = "1984"; ManufacturingPrice = 3.0; SalePrice = 20.0; GrossSales = 39680.0; Discounts = 1563.0; Sales = 38117.0; COGS = 15630.0; Profit = 22487.0; Date = "5/1/20"; MonthName = "May"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Kensington"; UnitsSold = "480"; ManufacturingPrice = 3.0; SalePrice = 300.0; GrossSales = 144000.0; Discounts = 14865.0; Sales = 129135.0; COGS = 247750.0; Profit = 118615.0; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Kensington"; UnitsSold = "1205"; ManufacturingPrice = 3.0; SalePrice = 15.0; GrossSales = 18075.0; Discounts = 2093.25; Sales = 15981.75; COGS = 27910.0; Profit = 11928.25; Date = "11/1/20"; MonthName = "November"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Kensington"; UnitsSold = "2480"; ManufacturingPrice = 3.0; SalePrice = 7.0; GrossSales = 17360.0; Discounts = 199.5; Sales = 17160.5; COGS = 2850.0; Profit = 14310.5; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Kensington"; UnitsSold = "2926"; ManufacturingPrice = 3.0; SalePrice = 7.0; GrossSales = 20482.0; Discounts = 870.45; Sales = 19611.55; COGS = 12435.0; Profit = 7176.55; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Royal Oak"; UnitsSold = "3210"; ManufacturingPrice = 5.0; SalePrice = 350.0; GrossSales = 1123500.0; Discounts = 24228.75; Sales = 1099271.25; COGS = 359970.0; Profit = 739301.25; Date = "1/1/20"; MonthName = "January"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Royal Oak"; UnitsSold = "3221"; ManufacturingPrice = 5.0; SalePrice = 125.0; GrossSales = 402625.0; Discounts = 22668.75; Sales = 379956.25; COGS = 435240.0; Profit = 55283.75; Date = "7/1/20"; MonthName = "July"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Royal Oak"; UnitsSold = "1127"; ManufacturingPrice = 5.0; SalePrice = 12.0; GrossSales = 13524.0; Discounts = 1405.2; Sales = 12118.8; COGS = 7026.0; Profit = 5092.8; Date = "11/1/20"; MonthName = "November"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "1610"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 32200.0; Discounts = 1303.0; Sales = 30897.0; COGS = 13030.0; Profit = 17867.0; Date = "2/1/20"; MonthName = "February"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "4100"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 512500.0; Discounts = 18700.0; Sales = 493800.0; COGS = 359040.0; Profit = 134760.0; Date = "3/1/20"; MonthName = "March"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "1012"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 126500.0; Discounts = 14906.25; Sales = 111593.75; COGS = 286200.0; Profit = 174606.25; Date = "3/1/20"; MonthName = "March"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "3337"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 1001100.0; Discounts = 24105.0; Sales = 976995.0; COGS = 401750.0; Profit = 575245.0; Date = "4/1/20"; MonthName = "April"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "3955"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 27685.0; Discounts = 814.45; Sales = 26870.55; COGS = 11635.0; Profit = 15235.55; Date = "5/1/20"; MonthName = "May"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "4347"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 1304100.0; Discounts = 14865.0; Sales = 1289235.0; COGS = 247750.0; Profit = 1041485.0; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "1548"; ManufacturingPrice = 10.0; SalePrice = 350.0; GrossSales = 541800.0; Discounts = 10535.0; Sales = 531265.0; COGS = 156520.0; Profit = 374745.0; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "2153"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 32295.0; Discounts = 1965.0; Sales = 30330.0; COGS = 26200.0; Profit = 4130.0; Date = "9/1/20"; MonthName = "September"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "4126"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 515750.0; Discounts = 5381.25; Sales = 510368.75; COGS = 103320.0; Profit = 407048.75; Date = "10/1/20"; MonthName = "October"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "3376"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 67520.0; Discounts = 2663.0; Sales = 64857.0; COGS = 26630.0; Profit = 38227.0; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Burlington"; UnitsSold = "2244"; ManufacturingPrice = 120.0; SalePrice = 15.0; GrossSales = 33660.0; Discounts = 416.25; Sales = 33243.75; COGS = 5550.0; Profit = 27693.75; Date = "1/1/20"; MonthName = "January"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Burlington"; UnitsSold = "1360"; ManufacturingPrice = 120.0; SalePrice = 15.0; GrossSales = 20400.0; Discounts = 2145.75; Sales = 18254.25; COGS = 28610.0; Profit = 10355.75; Date = "1/1/20"; MonthName = "January"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Burlington"; UnitsSold = "279"; ManufacturingPrice = 120.0; SalePrice = 125.0; GrossSales = 34875.0; Discounts = 5043.75; Sales = 29831.25; COGS = 96840.0; Profit = 67008.75; Date = "2/1/20"; MonthName = "February"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Burlington"; UnitsSold = "2521"; ManufacturingPrice = 120.0; SalePrice = 350.0; GrossSales = 882350.0; Discounts = 10535.0; Sales = 871815.0; COGS = 156520.0; Profit = 715295.0; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Burlington"; UnitsSold = "2433"; ManufacturingPrice = 120.0; SalePrice = 20.0; GrossSales = 48660.0; Discounts = 2832.0; Sales = 45828.0; COGS = 28320.0; Profit = 17508.0; Date = "8/1/20"; MonthName = "August"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Burlington"; UnitsSold = "1738"; ManufacturingPrice = 120.0; SalePrice = 20.0; GrossSales = 34760.0; Discounts = 1579.0; Sales = 33181.0; COGS = 15790.0; Profit = 17391.0; Date = "8/1/20"; MonthName = "August"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Burlington"; UnitsSold = "1106"; ManufacturingPrice = 120.0; SalePrice = 125.0; GrossSales = 138250.0; Discounts = 5381.25; Sales = 132868.75; COGS = 103320.0; Profit = 29548.75; Date = "10/1/20"; MonthName = "October"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Burlington"; UnitsSold = "213"; ManufacturingPrice = 120.0; SalePrice = 300.0; GrossSales = 63900.0; Discounts = 18750.0; Sales = 45150.0; COGS = 312500.0; Profit = 267350.0; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Mandarin"; UnitsSold = "2929"; ManufacturingPrice = 250.0; SalePrice = 20.0; GrossSales = 58580.0; Discounts = 2663.0; Sales = 55917.0; COGS = 26630.0; Profit = 29287.0; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Mandarin"; UnitsSold = "2389"; ManufacturingPrice = 250.0; SalePrice = 7.0; GrossSales = 16723.0; Discounts = 199.5; Sales = 16523.5; COGS = 2850.0; Profit = 13673.5; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Mandarin"; UnitsSold = "3086"; ManufacturingPrice = 250.0; SalePrice = 7.0; GrossSales = 21602.0; Discounts = 870.45; Sales = 20731.55; COGS = 12435.0; Profit = 8296.55; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Luxe"; UnitsSold = "745"; ManufacturingPrice = 260.0; SalePrice = 350.0; GrossSales = 260750.0; Discounts = 23625.0; Sales = 237125.0; COGS = 351000.0; Profit = 113875.0; Date = "2/1/20"; MonthName = "February"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Luxe"; UnitsSold = "1266"; ManufacturingPrice = 260.0; SalePrice = 350.0; GrossSales = 443100.0; Discounts = 9660.0; Sales = 433440.0; COGS = 143520.0; Profit = 289920.0; Date = "8/1/20"; MonthName = "August"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Luxe"; UnitsSold = "4287"; ManufacturingPrice = 260.0; SalePrice = 300.0; GrossSales = 1286100.0; Discounts = 18750.0; Sales = 1267350.0; COGS = 312500.0; Profit = 954850.0; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "3193"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 47895.0; Discounts = 3420.9; Sales = 44474.1; COGS = 38010.0; Profit = 6464.1; Date = "4/1/20"; MonthName = "April"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Kensington"; UnitsSold = "1967"; ManufacturingPrice = 3.0; SalePrice = 20.0; GrossSales = 39340.0; Discounts = 1341.0; Sales = 37999.0; COGS = 11175.0; Profit = 26824.0; Date = "1/1/20"; MonthName = "January"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Kensington"; UnitsSold = "631"; ManufacturingPrice = 3.0; SalePrice = 15.0; GrossSales = 9465.0; Discounts = 2559.6; Sales = 6905.4; COGS = 28440.0; Profit = 21534.6; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Kensington"; UnitsSold = "3469"; ManufacturingPrice = 3.0; SalePrice = 12.0; GrossSales = 41628.0; Discounts = 404.64; Sales = 41223.36; COGS = 1686.0; Profit = 39537.36; Date = "9/1/20"; MonthName = "September"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Kensington"; UnitsSold = "3215"; ManufacturingPrice = 3.0; SalePrice = 15.0; GrossSales = 48225.0; Discounts = 1827.0; Sales = 46398.0; COGS = 20300.0; Profit = 26098.0; Date = "11/1/20"; MonthName = "November"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Royal Oak"; UnitsSold = "1959"; ManufacturingPrice = 5.0; SalePrice = 350.0; GrossSales = 685650.0; Discounts = 20580.0; Sales = 665070.0; COGS = 254800.0; Profit = 410270.0; Date = "4/1/20"; MonthName = "April"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Royal Oak"; UnitsSold = "2181"; ManufacturingPrice = 5.0; SalePrice = 350.0; GrossSales = 763350.0; Discounts = 30660.0; Sales = 732690.0; COGS = 379600.0; Profit = 353090.0; Date = "5/1/20"; MonthName = "May"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Royal Oak"; UnitsSold = "2205"; ManufacturingPrice = 5.0; SalePrice = 12.0; GrossSales = 26460.0; Discounts = 1960.56; Sales = 24499.44; COGS = 8169.0; Profit = 16330.44; Date = "11/1/20"; MonthName = "November"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "1890"; ManufacturingPrice = 10.0; SalePrice = 350.0; GrossSales = 661500.0; Discounts = 31416.0; Sales = 630084.0; COGS = 388960.0; Profit = 241124.0; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Burlington"; UnitsSold = "2417"; ManufacturingPrice = 120.0; SalePrice = 125.0; GrossSales = 302125.0; Discounts = 7140.0; Sales = 294985.0; COGS = 114240.0; Profit = 180745.0; Date = "2/1/20"; MonthName = "February"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Burlington"; UnitsSold = "1158"; ManufacturingPrice = 120.0; SalePrice = 125.0; GrossSales = 144750.0; Discounts = 20662.5; Sales = 124087.5; COGS = 330600.0; Profit = 206512.5; Date = "2/1/20"; MonthName = "February"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Burlington"; UnitsSold = "803"; ManufacturingPrice = 120.0; SalePrice = 15.0; GrossSales = 12045.0; Discounts = 1377.0; Sales = 10668.0; COGS = 15300.0; Profit = 4632.0; Date = "5/1/20"; MonthName = "May"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Burlington"; UnitsSold = "3705"; ManufacturingPrice = 120.0; SalePrice = 350.0; GrossSales = 1296750.0; Discounts = 31416.0; Sales = 1265334.0; COGS = 388960.0; Profit = 876374.0; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Burlington"; UnitsSold = "589"; ManufacturingPrice = 120.0; SalePrice = 7.0; GrossSales = 4123.0; Discounts = 629.16; Sales = 3493.84; COGS = 7490.0; Profit = 3996.16; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Mandarin"; UnitsSold = "3999"; ManufacturingPrice = 250.0; SalePrice = 15.0; GrossSales = 59985.0; Discounts = 2559.6; Sales = 57425.4; COGS = 28440.0; Profit = 28985.4; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Mandarin"; UnitsSold = "4256"; ManufacturingPrice = 250.0; SalePrice = 7.0; GrossSales = 29792.0; Discounts = 629.16; Sales = 29162.84; COGS = 7490.0; Profit = 21672.84; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Luxe"; UnitsSold = "2160"; ManufacturingPrice = 260.0; SalePrice = 125.0; GrossSales = 270000.0; Discounts = 14906.25; Sales = 255093.75; COGS = 238500.0; Profit = 16593.75; Date = "1/1/20"; MonthName = "January"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Luxe"; UnitsSold = "466"; ManufacturingPrice = 260.0; SalePrice = 350.0; GrossSales = 163100.0; Discounts = 35259.0; Sales = 127841.0; COGS = 436540.0; Profit = 308699.0; Date = "9/1/20"; MonthName = "September"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "1478"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 22170.0; Discounts = 1978.2; Sales = 20191.8; COGS = 21980.0; Profit = 1788.2; Date = "8/1/20"; MonthName = "August"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "3798"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 56970.0; Discounts = 1568.7; Sales = 55401.3; COGS = 17430.0; Profit = 37971.3; Date = "8/1/20"; MonthName = "August"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "447"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 6705.0; Discounts = 1037.7; Sales = 5667.3; COGS = 11530.0; Profit = 5862.7; Date = "10/1/20"; MonthName = "October"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Burlington"; UnitsSold = "745"; ManufacturingPrice = 120.0; SalePrice = 20.0; GrossSales = 14900.0; Discounts = 1201.2; Sales = 13698.8; COGS = 10010.0; Profit = 3688.8; Date = "8/1/20"; MonthName = "August"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Burlington"; UnitsSold = "1732"; ManufacturingPrice = 120.0; SalePrice = 7.0; GrossSales = 12124.0; Discounts = 559.86; Sales = 11564.14; COGS = 6665.0; Profit = 4899.14; Date = "11/1/20"; MonthName = "November"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Mandarin"; UnitsSold = "1759"; ManufacturingPrice = 250.0; SalePrice = 15.0; GrossSales = 26385.0; Discounts = 1037.7; Sales = 25347.3; COGS = 11530.0; Profit = 13817.3; Date = "10/1/20"; MonthName = "October"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Kensington"; UnitsSold = "338"; ManufacturingPrice = 3.0; SalePrice = 12.0; GrossSales = 4056.0; Discounts = 610.68; Sales = 3445.32; COGS = 2181.0; Profit = 1264.32; Date = "2/1/20"; MonthName = "February"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Kensington"; UnitsSold = "3911"; ManufacturingPrice = 3.0; SalePrice = 12.0; GrossSales = 46932.0; Discounts = 1582.56; Sales = 45349.44; COGS = 5652.0; Profit = 39697.44; Date = "8/1/20"; MonthName = "August"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Royal Oak"; UnitsSold = "4473"; ManufacturingPrice = 5.0; SalePrice = 12.0; GrossSales = 53676.0; Discounts = 1965.6; Sales = 51710.4; COGS = 7020.0; Profit = 44690.4; Date = "1/1/20"; MonthName = "January"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Royal Oak"; UnitsSold = "383"; ManufacturingPrice = 5.0; SalePrice = 12.0; GrossSales = 4596.0; Discounts = 1967.28; Sales = 2628.72; COGS = 7026.0; Profit = 4397.28; Date = "11/1/20"; MonthName = "November"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Burlington"; UnitsSold = "1062"; ManufacturingPrice = 120.0; SalePrice = 15.0; GrossSales = 15930.0; Discounts = 1325.1; Sales = 14604.9; COGS = 12620.0; Profit = 1984.9; Date = "5/1/20"; MonthName = "May"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Burlington"; UnitsSold = "4083"; ManufacturingPrice = 120.0; SalePrice = 7.0; GrossSales = 28581.0; Discounts = 556.15; Sales = 28024.85; COGS = 5675.0; Profit = 22349.85; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Burlington"; UnitsSold = "3974"; ManufacturingPrice = 120.0; SalePrice = 7.0; GrossSales = 27818.0; Discounts = 268.03; Sales = 27549.97; COGS = 2735.0; Profit = 24814.97; Date = "11/1/20"; MonthName = "November"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Burlington"; UnitsSold = "3723"; ManufacturingPrice = 120.0; SalePrice = 7.0; GrossSales = 26061.0; Discounts = 775.18; Sales = 25285.82; COGS = 7910.0; Profit = 17375.82; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Mandarin"; UnitsSold = "2435"; ManufacturingPrice = 250.0; SalePrice = 12.0; GrossSales = 29220.0; Discounts = 1460.34; Sales = 27759.66; COGS = 5215.5; Profit = 22544.16; Date = "4/1/20"; MonthName = "April"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Mandarin"; UnitsSold = "1763"; ManufacturingPrice = 250.0; SalePrice = 7.0; GrossSales = 12341.0; Discounts = 775.18; Sales = 11565.82; COGS = 7910.0; Profit = 3655.82; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Luxe"; UnitsSold = "4473"; ManufacturingPrice = 260.0; SalePrice = 7.0; GrossSales = 31311.0; Discounts = 556.15; Sales = 30754.85; COGS = 5675.0; Profit = 25079.85; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Kensington"; UnitsSold = "1246"; ManufacturingPrice = 3.0; SalePrice = 350.0; GrossSales = 436100.0; Discounts = 43144.5; Sales = 392955.5; COGS = 457860.0; Profit = 64904.5; Date = "3/1/20"; MonthName = "March"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Kensington"; UnitsSold = "1615"; ManufacturingPrice = 3.0; SalePrice = 300.0; GrossSales = 484500.0; Discounts = 9408.0; Sales = 475092.0; COGS = 112000.0; Profit = 363092.0; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Kensington"; UnitsSold = "749"; ManufacturingPrice = 3.0; SalePrice = 300.0; GrossSales = 224700.0; Discounts = 45801.0; Sales = 178899.0; COGS = 545250.0; Profit = 366351.0; Date = "10/1/20"; MonthName = "October"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Royal Oak"; UnitsSold = "1318"; ManufacturingPrice = 5.0; SalePrice = 20.0; GrossSales = 26360.0; Discounts = 2766.4; Sales = 23593.6; COGS = 19760.0; Profit = 3833.6; Date = "10/1/20"; MonthName = "October"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Royal Oak"; UnitsSold = "2882"; ManufacturingPrice = 5.0; SalePrice = 300.0; GrossSales = 864600.0; Discounts = 45801.0; Sales = 818799.0; COGS = 545250.0; Profit = 273549.0; Date = "10/1/20"; MonthName = "October"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "2484"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 745200.0; Discounts = 35742.0; Sales = 709458.0; COGS = 425500.0; Profit = 283958.0; Date = "5/1/20"; MonthName = "May"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "3169"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 950700.0; Discounts = 9408.0; Sales = 941292.0; COGS = 112000.0; Profit = 829292.0; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "4080"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 510000.0; Discounts = 30738.75; Sales = 479261.25; COGS = 421560.0; Profit = 57701.25; Date = "7/1/20"; MonthName = "July"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "3943"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 59145.0; Discounts = 2206.05; Sales = 56938.95; COGS = 21010.0; Profit = 35928.95; Date = "8/1/20"; MonthName = "August"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "253"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 5060.0; Discounts = 2149.0; Sales = 2911.0; COGS = 15350.0; Profit = 12439.0; Date = "9/1/20"; MonthName = "September"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Burlington"; UnitsSold = "799"; ManufacturingPrice = 120.0; SalePrice = 300.0; GrossSales = 239700.0; Discounts = 34839.0; Sales = 204861.0; COGS = 414750.0; Profit = 209889.0; Date = "7/1/20"; MonthName = "July"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Burlington"; UnitsSold = "3942"; ManufacturingPrice = 120.0; SalePrice = 20.0; GrossSales = 78840.0; Discounts = 852.6; Sales = 77987.4; COGS = 6090.0; Profit = 71897.4; Date = "8/1/20"; MonthName = "August"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Burlington"; UnitsSold = "2498"; ManufacturingPrice = 120.0; SalePrice = 125.0; GrossSales = 312250.0; Discounts = 18261.25; Sales = 293988.75; COGS = 250440.0; Profit = 43548.75; Date = "9/1/20"; MonthName = "September"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Burlington"; UnitsSold = "2517"; ManufacturingPrice = 120.0; SalePrice = 20.0; GrossSales = 50340.0; Discounts = 2766.4; Sales = 47573.6; COGS = 19760.0; Profit = 27813.6; Date = "10/1/20"; MonthName = "October"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Burlington"; UnitsSold = "1145"; ManufacturingPrice = 120.0; SalePrice = 300.0; GrossSales = 343500.0; Discounts = 28812.0; Sales = 314688.0; COGS = 343000.0; Profit = 28312.0; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Mandarin"; UnitsSold = "3814"; ManufacturingPrice = 250.0; SalePrice = 12.0; GrossSales = 45768.0; Discounts = 2725.38; Sales = 43042.62; COGS = 9733.5; Profit = 33309.12; Date = "1/1/20"; MonthName = "January"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Mandarin"; UnitsSold = "1188"; ManufacturingPrice = 250.0; SalePrice = 300.0; GrossSales = 356400.0; Discounts = 20139.0; Sales = 336261.0; COGS = 239750.0; Profit = 96511.0; Date = "2/1/20"; MonthName = "February"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Mandarin"; UnitsSold = "2233"; ManufacturingPrice = 250.0; SalePrice = 300.0; GrossSales = 669900.0; Discounts = 57687.0; Sales = 612213.0; COGS = 686750.0; Profit = 74537.0; Date = "2/1/20"; MonthName = "February"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Luxe"; UnitsSold = "421"; ManufacturingPrice = 260.0; SalePrice = 125.0; GrossSales = 52625.0; Discounts = 14393.75; Sales = 38231.25; COGS = 197400.0; Profit = 159168.75; Date = "5/1/20"; MonthName = "May"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Luxe"; UnitsSold = "269"; ManufacturingPrice = 260.0; SalePrice = 350.0; GrossSales = 94150.0; Discounts = 70462.0; Sales = 23688.0; COGS = 747760.0; Profit = 724072.0; Date = "9/1/20"; MonthName = "September"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Luxe"; UnitsSold = "952"; ManufacturingPrice = 260.0; SalePrice = 20.0; GrossSales = 19040.0; Discounts = 1565.2; Sales = 17474.8; COGS = 11180.0; Profit = 6294.8; Date = "11/1/20"; MonthName = "November"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Luxe"; UnitsSold = "2964"; ManufacturingPrice = 260.0; SalePrice = 300.0; GrossSales = 889200.0; Discounts = 28812.0; Sales = 860388.0; COGS = 343000.0; Profit = 517388.0; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Royal Oak"; UnitsSold = "1505"; ManufacturingPrice = 5.0; SalePrice = 7.0; GrossSales = 10535.0; Discounts = 273.28; Sales = 10261.72; COGS = 2440.0; Profit = 7821.72; Date = "2/1/20"; MonthName = "February"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Royal Oak"; UnitsSold = "1678"; ManufacturingPrice = 5.0; SalePrice = 20.0; GrossSales = 33560.0; Discounts = 2051.2; Sales = 31508.8; COGS = 12820.0; Profit = 18688.8; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "4249"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 29743.0; Discounts = 143.92; Sales = 29599.08; COGS = 1285.0; Profit = 28314.08; Date = "5/1/20"; MonthName = "May"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Luxe"; UnitsSold = "1677"; ManufacturingPrice = 260.0; SalePrice = 20.0; GrossSales = 33540.0; Discounts = 2051.2; Sales = 31488.8; COGS = 12820.0; Profit = 18668.8; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Kensington"; UnitsSold = "3051"; ManufacturingPrice = 3.0; SalePrice = 125.0; GrossSales = 381375.0; Discounts = 15400.0; Sales = 365975.0; COGS = 184800.0; Profit = 181175.0; Date = "8/1/20"; MonthName = "August"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Kensington"; UnitsSold = "3372"; ManufacturingPrice = 3.0; SalePrice = 15.0; GrossSales = 50580.0; Discounts = 588.0; Sales = 49992.0; COGS = 4900.0; Profit = 45092.0; Date = "11/1/20"; MonthName = "November"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Kensington"; UnitsSold = "1686"; ManufacturingPrice = 3.0; SalePrice = 350.0; GrossSales = 590100.0; Discounts = 38136.0; Sales = 551964.0; COGS = 354120.0; Profit = 197844.0; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Royal Oak"; UnitsSold = "3086"; ManufacturingPrice = 5.0; SalePrice = 15.0; GrossSales = 46290.0; Discounts = 3001.2; Sales = 43288.8; COGS = 25010.0; Profit = 18278.8; Date = "3/1/20"; MonthName = "March"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Royal Oak"; UnitsSold = "4150"; ManufacturingPrice = 5.0; SalePrice = 20.0; GrossSales = 83000.0; Discounts = 1132.8; Sales = 81867.2; COGS = 7080.0; Profit = 74787.2; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Royal Oak"; UnitsSold = "3027"; ManufacturingPrice = 5.0; SalePrice = 20.0; GrossSales = 60540.0; Discounts = 1032.0; Sales = 59508.0; COGS = 6450.0; Profit = 53058.0; Date = "7/1/20"; MonthName = "July"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Royal Oak"; UnitsSold = "4359"; ManufacturingPrice = 5.0; SalePrice = 300.0; GrossSales = 1307700.0; Discounts = 37488.0; Sales = 1270212.0; COGS = 390500.0; Profit = 879712.0; Date = "8/1/20"; MonthName = "August"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Royal Oak"; UnitsSold = "1589"; ManufacturingPrice = 5.0; SalePrice = 15.0; GrossSales = 23835.0; Discounts = 853.2; Sales = 22981.8; COGS = 7110.0; Profit = 15871.8; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "2679"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 334875.0; Discounts = 11140.0; Sales = 323735.0; COGS = 133680.0; Profit = 190055.0; Date = "3/1/20"; MonthName = "March"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "3401"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 23807.0; Discounts = 705.04; Sales = 23101.96; COGS = 6295.0; Profit = 16806.96; Date = "4/1/20"; MonthName = "April"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "2815"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 19705.0; Discounts = 613.2; Sales = 19091.8; COGS = 5475.0; Profit = 13616.8; Date = "5/1/20"; MonthName = "May"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "2964"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 59280.0; Discounts = 2185.6; Sales = 57094.4; COGS = 13660.0; Profit = 43434.4; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "4173"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 1251900.0; Discounts = 59040.0; Sales = 1192860.0; COGS = 615000.0; Profit = 577860.0; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "1157"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 8099.0; Discounts = 379.68; Sales = 7719.32; COGS = 3390.0; Profit = 4329.32; Date = "8/1/20"; MonthName = "August"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "3065"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 21455.0; Discounts = 894.88; Sales = 20560.12; COGS = 7990.0; Profit = 12570.12; Date = "8/1/20"; MonthName = "August"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "4080"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 81600.0; Discounts = 3094.4; Sales = 78505.6; COGS = 19340.0; Profit = 59165.6; Date = "9/1/20"; MonthName = "September"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "1713"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 34260.0; Discounts = 4788.8; Sales = 29471.2; COGS = 29930.0; Profit = 458.8; Date = "9/1/20"; MonthName = "September"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "1691"; ManufacturingPrice = 10.0; SalePrice = 350.0; GrossSales = 591850.0; Discounts = 38136.0; Sales = 553714.0; COGS = 354120.0; Profit = 199594.0; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Burlington"; UnitsSold = "2305"; ManufacturingPrice = 120.0; SalePrice = 12.0; GrossSales = 27660.0; Discounts = 574.08; Sales = 27085.92; COGS = 1794.0; Profit = 25291.92; Date = "3/1/20"; MonthName = "March"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Burlington"; UnitsSold = "3401"; ManufacturingPrice = 120.0; SalePrice = 7.0; GrossSales = 23807.0; Discounts = 1627.92; Sales = 22179.08; COGS = 14535.0; Profit = 7644.08; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Burlington"; UnitsSold = "2288"; ManufacturingPrice = 120.0; SalePrice = 7.0; GrossSales = 16016.0; Discounts = 1309.28; Sales = 14706.72; COGS = 11690.0; Profit = 3016.72; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Burlington"; UnitsSold = "4086"; ManufacturingPrice = 120.0; SalePrice = 300.0; GrossSales = 1225800.0; Discounts = 15240.0; Sales = 1210560.0; COGS = 158750.0; Profit = 1051810.0; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Mandarin"; UnitsSold = "2651"; ManufacturingPrice = 250.0; SalePrice = 350.0; GrossSales = 927850.0; Discounts = 16086.0; Sales = 911764.0; COGS = 149370.0; Profit = 762394.0; Date = "4/1/20"; MonthName = "April"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Mandarin"; UnitsSold = "3971"; ManufacturingPrice = 250.0; SalePrice = 7.0; GrossSales = 27797.0; Discounts = 1309.28; Sales = 26487.72; COGS = 11690.0; Profit = 14797.72; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Mandarin"; UnitsSold = "2512"; ManufacturingPrice = 250.0; SalePrice = 350.0; GrossSales = 879200.0; Discounts = 10668.0; Sales = 868532.0; COGS = 99060.0; Profit = 769472.0; Date = "8/1/20"; MonthName = "August"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Mandarin"; UnitsSold = "2745"; ManufacturingPrice = 250.0; SalePrice = 350.0; GrossSales = 960750.0; Discounts = 11816.0; Sales = 948934.0; COGS = 109720.0; Profit = 839214.0; Date = "8/1/20"; MonthName = "August"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Mandarin"; UnitsSold = "1903"; ManufacturingPrice = 250.0; SalePrice = 300.0; GrossSales = 570900.0; Discounts = 51216.0; Sales = 519684.0; COGS = 533500.0; Profit = 13816.0; Date = "9/1/20"; MonthName = "September"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Luxe"; UnitsSold = "2914"; ManufacturingPrice = 260.0; SalePrice = 20.0; GrossSales = 58280.0; Discounts = 1132.8; Sales = 57147.2; COGS = 7080.0; Profit = 50067.2; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Luxe"; UnitsSold = "1889"; ManufacturingPrice = 260.0; SalePrice = 7.0; GrossSales = 13223.0; Discounts = 1627.92; Sales = 11595.08; COGS = 14535.0; Profit = 2939.92; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Luxe"; UnitsSold = "1466"; ManufacturingPrice = 260.0; SalePrice = 20.0; GrossSales = 29320.0; Discounts = 2185.6; Sales = 27134.4; COGS = 13660.0; Profit = 13474.4; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Luxe"; UnitsSold = "887"; ManufacturingPrice = 260.0; SalePrice = 300.0; GrossSales = 266100.0; Discounts = 59040.0; Sales = 207060.0; COGS = 615000.0; Profit = 407940.0; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Luxe"; UnitsSold = "395"; ManufacturingPrice = 260.0; SalePrice = 20.0; GrossSales = 7900.0; Discounts = 2432.0; Sales = 5468.0; COGS = 15200.0; Profit = 9732.0; Date = "11/1/20"; MonthName = "November"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Luxe"; UnitsSold = "1693"; ManufacturingPrice = 260.0; SalePrice = 15.0; GrossSales = 25395.0; Discounts = 853.2; Sales = 24541.8; COGS = 7110.0; Profit = 17431.8; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Luxe"; UnitsSold = "2649"; ManufacturingPrice = 260.0; SalePrice = 300.0; GrossSales = 794700.0; Discounts = 15240.0; Sales = 779460.0; COGS = 158750.0; Profit = 620710.0; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Mandarin"; UnitsSold = "3608"; ManufacturingPrice = 250.0; SalePrice = 20.0; GrossSales = 72160.0; Discounts = 698.4; Sales = 71461.6; COGS = 4365.0; Profit = 67096.6; Date = "7/1/20"; MonthName = "July"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Kensington"; UnitsSold = "1073"; ManufacturingPrice = 3.0; SalePrice = 300.0; GrossSales = 321900.0; Discounts = 29538.0; Sales = 292362.0; COGS = 273500.0; Profit = 18862.0; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Royal Oak"; UnitsSold = "2167"; ManufacturingPrice = 5.0; SalePrice = 300.0; GrossSales = 650100.0; Discounts = 102667.5; Sales = 547432.5; COGS = 950625.0; Profit = 403192.5; Date = "4/1/20"; MonthName = "April"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Royal Oak"; UnitsSold = "1319"; ManufacturingPrice = 5.0; SalePrice = 350.0; GrossSales = 461650.0; Discounts = 52479.0; Sales = 409171.0; COGS = 433160.0; Profit = 23989.0; Date = "5/1/20"; MonthName = "May"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Royal Oak"; UnitsSold = "1252"; ManufacturingPrice = 5.0; SalePrice = 12.0; GrossSales = 15024.0; Discounts = 2506.68; Sales = 12517.32; COGS = 6963.0; Profit = 5554.32; Date = "11/1/20"; MonthName = "November"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Royal Oak"; UnitsSold = "1156"; ManufacturingPrice = 5.0; SalePrice = 125.0; GrossSales = 144500.0; Discounts = 31466.25; Sales = 113033.75; COGS = 335640.0; Profit = 222606.25; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "1153"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 345900.0; Discounts = 69255.0; Sales = 276645.0; COGS = 641250.0; Profit = 364605.0; Date = "1/1/20"; MonthName = "January"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "2720"; ManufacturingPrice = 10.0; SalePrice = 350.0; GrossSales = 952000.0; Discounts = 76135.5; Sales = 875864.5; COGS = 628420.0; Profit = 247444.5; Date = "1/1/20"; MonthName = "January"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "3658"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 54870.0; Discounts = 4961.25; Sales = 49908.75; COGS = 36750.0; Profit = 13158.75; Date = "4/1/20"; MonthName = "April"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "2950"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 885000.0; Discounts = 29538.0; Sales = 855462.0; COGS = 273500.0; Profit = 581962.0; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "1821"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 27315.0; Discounts = 1656.45; Sales = 25658.55; COGS = 12270.0; Profit = 13388.55; Date = "10/1/20"; MonthName = "October"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "1127"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 338100.0; Discounts = 35748.0; Sales = 302352.0; COGS = 331000.0; Profit = 28648.0; Date = "11/1/20"; MonthName = "November"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "862"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 107750.0; Discounts = 31466.25; Sales = 76283.75; COGS = 335640.0; Profit = 259356.25; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Burlington"; UnitsSold = "3805"; ManufacturingPrice = 120.0; SalePrice = 15.0; GrossSales = 57075.0; Discounts = 330.75; Sales = 56744.25; COGS = 2450.0; Profit = 54294.25; Date = "5/1/20"; MonthName = "May"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Burlington"; UnitsSold = "1415"; ManufacturingPrice = 120.0; SalePrice = 300.0; GrossSales = 424500.0; Discounts = 102424.5; Sales = 322075.5; COGS = 948375.0; Profit = 626299.5; Date = "7/1/20"; MonthName = "July"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Burlington"; UnitsSold = "2231"; ManufacturingPrice = 120.0; SalePrice = 350.0; GrossSales = 780850.0; Discounts = 41170.5; Sales = 739679.5; COGS = 339820.0; Profit = 399859.5; Date = "7/1/20"; MonthName = "July"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Burlington"; UnitsSold = "3649"; ManufacturingPrice = 120.0; SalePrice = 125.0; GrossSales = 456125.0; Discounts = 6378.75; Sales = 449746.25; COGS = 68040.0; Profit = 381706.25; Date = "9/1/20"; MonthName = "September"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Burlington"; UnitsSold = "2948"; ManufacturingPrice = 120.0; SalePrice = 125.0; GrossSales = 368500.0; Discounts = 23737.5; Sales = 344762.5; COGS = 253200.0; Profit = 91562.5; Date = "9/1/20"; MonthName = "September"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Burlington"; UnitsSold = "3395"; ManufacturingPrice = 120.0; SalePrice = 350.0; GrossSales = 1188250.0; Discounts = 39973.5; Sales = 1148276.5; COGS = 329940.0; Profit = 818336.5; Date = "10/1/20"; MonthName = "October"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Mandarin"; UnitsSold = "2650"; ManufacturingPrice = 250.0; SalePrice = 12.0; GrossSales = 31800.0; Discounts = 2112.48; Sales = 29687.52; COGS = 5868.0; Profit = 23819.52; Date = "1/1/20"; MonthName = "January"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Mandarin"; UnitsSold = "585"; ManufacturingPrice = 250.0; SalePrice = 300.0; GrossSales = 175500.0; Discounts = 71793.0; Sales = 103707.0; COGS = 664750.0; Profit = 561043.0; Date = "2/1/20"; MonthName = "February"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Mandarin"; UnitsSold = "1316"; ManufacturingPrice = 250.0; SalePrice = 350.0; GrossSales = 460600.0; Discounts = 42572.25; Sales = 418027.75; COGS = 351390.0; Profit = 66637.75; Date = "4/1/20"; MonthName = "April"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Mandarin"; UnitsSold = "4459"; ManufacturingPrice = 250.0; SalePrice = 12.0; GrossSales = 53508.0; Discounts = 950.4; Sales = 52557.6; COGS = 2640.0; Profit = 49917.6; Date = "5/1/20"; MonthName = "May"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Mandarin"; UnitsSold = "2711"; ManufacturingPrice = 250.0; SalePrice = 300.0; GrossSales = 813300.0; Discounts = 50409.0; Sales = 762891.0; COGS = 466750.0; Profit = 296141.0; Date = "9/1/20"; MonthName = "September"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Mandarin"; UnitsSold = "3613"; ManufacturingPrice = 250.0; SalePrice = 15.0; GrossSales = 54195.0; Discounts = 1656.45; Sales = 52538.55; COGS = 12270.0; Profit = 40268.55; Date = "10/1/20"; MonthName = "October"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Mandarin"; UnitsSold = "1847"; ManufacturingPrice = 250.0; SalePrice = 125.0; GrossSales = 230875.0; Discounts = 9866.25; Sales = 221008.75; COGS = 105240.0; Profit = 115768.75; Date = "11/1/20"; MonthName = "November"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Luxe"; UnitsSold = "2996"; ManufacturingPrice = 260.0; SalePrice = 350.0; GrossSales = 1048600.0; Discounts = 65236.5; Sales = 983363.5; COGS = 538460.0; Profit = 444903.5; Date = "9/1/20"; MonthName = "September"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Luxe"; UnitsSold = "2838"; ManufacturingPrice = 260.0; SalePrice = 350.0; GrossSales = 993300.0; Discounts = 39973.5; Sales = 953326.5; COGS = 329940.0; Profit = 623386.5; Date = "10/1/20"; MonthName = "October"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Luxe"; UnitsSold = "1536"; ManufacturingPrice = 260.0; SalePrice = 20.0; GrossSales = 30720.0; Discounts = 3049.2; Sales = 27670.8; COGS = 16940.0; Profit = 10730.8; Date = "11/1/20"; MonthName = "November"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Kensington"; UnitsSold = "1291"; ManufacturingPrice = 3.0; SalePrice = 20.0; GrossSales = 25820.0; Discounts = 1193.4; Sales = 24626.6; COGS = 6630.0; Profit = 17996.6; Date = "5/1/20"; MonthName = "May"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Kensington"; UnitsSold = "1213"; ManufacturingPrice = 3.0; SalePrice = 7.0; GrossSales = 8491.0; Discounts = 515.97; Sales = 7975.03; COGS = 4095.0; Profit = 3880.03; Date = "7/1/20"; MonthName = "July"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Kensington"; UnitsSold = "2370"; ManufacturingPrice = 3.0; SalePrice = 12.0; GrossSales = 28440.0; Discounts = 1706.4; Sales = 26733.6; COGS = 4740.0; Profit = 21993.6; Date = "9/1/20"; MonthName = "September"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Kensington"; UnitsSold = "1979"; ManufacturingPrice = 3.0; SalePrice = 7.0; GrossSales = 13853.0; Discounts = 328.23; Sales = 13524.77; COGS = 2605.0; Profit = 10919.77; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "2879"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 57580.0; Discounts = 1751.4; Sales = 55828.6; COGS = 9730.0; Profit = 46098.6; Date = "3/1/20"; MonthName = "March"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "1707"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 34140.0; Discounts = 1868.4; Sales = 32271.6; COGS = 10380.0; Profit = 21891.6; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "2933"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 20531.0; Discounts = 226.8; Sales = 20304.2; COGS = 1800.0; Profit = 18504.2; Date = "10/1/20"; MonthName = "October"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Burlington"; UnitsSold = "1014"; ManufacturingPrice = 120.0; SalePrice = 12.0; GrossSales = 12168.0; Discounts = 2124.36; Sales = 10043.64; COGS = 5901.0; Profit = 4142.64; Date = "3/1/20"; MonthName = "March"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Burlington"; UnitsSold = "693"; ManufacturingPrice = 120.0; SalePrice = 15.0; GrossSales = 10395.0; Discounts = 3547.8; Sales = 6847.2; COGS = 26280.0; Profit = 19432.8; Date = "4/1/20"; MonthName = "April"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Mandarin"; UnitsSold = "3741"; ManufacturingPrice = 250.0; SalePrice = 7.0; GrossSales = 26187.0; Discounts = 226.8; Sales = 25960.2; COGS = 1800.0; Profit = 24160.2; Date = "10/1/20"; MonthName = "October"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Mandarin"; UnitsSold = "3995"; ManufacturingPrice = 250.0; SalePrice = 7.0; GrossSales = 27965.0; Discounts = 328.23; Sales = 27636.77; COGS = 2605.0; Profit = 25031.77; Date = "12/1/20"; MonthName = "December"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Luxe"; UnitsSold = "953"; ManufacturingPrice = 260.0; SalePrice = 20.0; GrossSales = 19060.0; Discounts = 1868.4; Sales = 17191.6; COGS = 10380.0; Profit = 6811.6; Date = "6/1/20"; MonthName = "June"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Luxe"; UnitsSold = "2530"; ManufacturingPrice = 260.0; SalePrice = 15.0; GrossSales = 37950.0; Discounts = 2201.18; Sales = 35748.82; COGS = 16305.0; Profit = 19443.82; Date = "7/1/20"; MonthName = "July"; Year = "2020" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Kensington"; UnitsSold = "1372"; ManufacturingPrice = 3.0; SalePrice = 20.0; GrossSales = 27440.0; Discounts = 0.0; Sales = 27440.0; COGS = 16185.0; Profit = 11255.0; Date = "1/1/19"; MonthName = "January"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Kensington"; UnitsSold = "2762"; ManufacturingPrice = 3.0; SalePrice = 20.0; GrossSales = 55240.0; Discounts = 0.0; Sales = 55240.0; COGS = 13210.0; Profit = 42030.0; Date = "1/1/19"; MonthName = "January"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Kensington"; UnitsSold = "1464"; ManufacturingPrice = 3.0; SalePrice = 15.0; GrossSales = 21960.0; Discounts = 0.0; Sales = 21960.0; COGS = 21780.0; Profit = 180.0; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Kensington"; UnitsSold = "719"; ManufacturingPrice = 3.0; SalePrice = 15.0; GrossSales = 10785.0; Discounts = 0.0; Sales = 10785.0; COGS = 8880.0; Profit = 1905.0; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Kensington"; UnitsSold = "3576"; ManufacturingPrice = 3.0; SalePrice = 15.0; GrossSales = 53640.0; Discounts = 0.0; Sales = 53640.0; COGS = 24700.0; Profit = 28940.0; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Kensington"; UnitsSold = "4422"; ManufacturingPrice = 3.0; SalePrice = 350.0; GrossSales = 1547700.0; Discounts = 0.0; Sales = 1547700.0; COGS = 393380.0; Profit = 1154320.0; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Royal Oak"; UnitsSold = "3649"; ManufacturingPrice = 5.0; SalePrice = 15.0; GrossSales = 54735.0; Discounts = 0.0; Sales = 54735.0; COGS = 9210.0; Profit = 45525.0; Date = "3/1/19"; MonthName = "March"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Royal Oak"; UnitsSold = "4172"; ManufacturingPrice = 5.0; SalePrice = 12.0; GrossSales = 50064.0; Discounts = 0.0; Sales = 50064.0; COGS = 7554.0; Profit = 42510.0; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Royal Oak"; UnitsSold = "3841"; ManufacturingPrice = 5.0; SalePrice = 20.0; GrossSales = 76820.0; Discounts = 0.0; Sales = 76820.0; COGS = 18990.0; Profit = 57830.0; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Royal Oak"; UnitsSold = "3726"; ManufacturingPrice = 5.0; SalePrice = 12.0; GrossSales = 44712.0; Discounts = 0.0; Sales = 44712.0; COGS = 4635.0; Profit = 40077.0; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Royal Oak"; UnitsSold = "2625"; ManufacturingPrice = 5.0; SalePrice = 15.0; GrossSales = 39375.0; Discounts = 0.0; Sales = 39375.0; COGS = 24700.0; Profit = 14675.0; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Royal Oak"; UnitsSold = "1958"; ManufacturingPrice = 5.0; SalePrice = 125.0; GrossSales = 244750.0; Discounts = 0.0; Sales = 244750.0; COGS = 319860.0; Profit = 75110.0; Date = "7/1/19"; MonthName = "July"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Royal Oak"; UnitsSold = "3271"; ManufacturingPrice = 5.0; SalePrice = 300.0; GrossSales = 981300.0; Discounts = 0.0; Sales = 981300.0; COGS = 239500.0; Profit = 741800.0; Date = "8/1/19"; MonthName = "August"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Royal Oak"; UnitsSold = "2091"; ManufacturingPrice = 5.0; SalePrice = 7.0; GrossSales = 14637.0; Discounts = 0.0; Sales = 14637.0; COGS = 10730.0; Profit = 3907.0; Date = "9/1/19"; MonthName = "September"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Royal Oak"; UnitsSold = "2530"; ManufacturingPrice = 5.0; SalePrice = 125.0; GrossSales = 316250.0; Discounts = 0.0; Sales = 316250.0; COGS = 41400.0; Profit = 274850.0; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Royal Oak"; UnitsSold = "2825"; ManufacturingPrice = 5.0; SalePrice = 15.0; GrossSales = 42375.0; Discounts = 0.0; Sales = 42375.0; COGS = 6150.0; Profit = 36225.0; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "2513"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 50260.0; Discounts = 0.0; Sales = 50260.0; COGS = 2920.0; Profit = 47340.0; Date = "2/1/19"; MonthName = "February"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "883"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 13245.0; Discounts = 0.0; Sales = 13245.0; COGS = 9740.0; Profit = 3505.0; Date = "2/1/19"; MonthName = "February"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "2087"; ManufacturingPrice = 10.0; SalePrice = 12.0; GrossSales = 25044.0; Discounts = 0.0; Sales = 25044.0; COGS = 7554.0; Profit = 17490.0; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "2563"; ManufacturingPrice = 10.0; SalePrice = 350.0; GrossSales = 897050.0; Discounts = 0.0; Sales = 897050.0; COGS = 261560.0; Profit = 635490.0; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "2846"; ManufacturingPrice = 10.0; SalePrice = 12.0; GrossSales = 34152.0; Discounts = 0.0; Sales = 34152.0; COGS = 1101.0; Profit = 33051.0; Date = "7/1/19"; MonthName = "July"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "997"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 6979.0; Discounts = 0.0; Sales = 6979.0; COGS = 4415.0; Profit = 2564.0; Date = "8/1/19"; MonthName = "August"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "3421"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 51315.0; Discounts = 0.0; Sales = 51315.0; COGS = 5490.0; Profit = 45825.0; Date = "9/1/18"; MonthName = "September"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Marchesa"; UnitsSold = "70000"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 1050000.0; Discounts = 0.0; Sales = 1050000.0; COGS = 5490.0; Profit = 1044510.0; Date = "9/1/18"; MonthName = "September"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "2291"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 687300.0; Discounts = 0.0; Sales = 687300.0; COGS = 197000.0; Profit = 490300.0; Date = "9/1/18"; MonthName = "September"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "2290"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 34350.0; Discounts = 0.0; Sales = 34350.0; COGS = 24720.0; Profit = 9630.0; Date = "9/1/19"; MonthName = "September"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "2133"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 14931.0; Discounts = 0.0; Sales = 14931.0; COGS = 5715.0; Profit = 9216.0; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "3475"; ManufacturingPrice = 10.0; SalePrice = 350.0; GrossSales = 1216250.0; Discounts = 0.0; Sales = 1216250.0; COGS = 448500.0; Profit = 767750.0; Date = "11/1/18"; MonthName = "November"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "3686"; ManufacturingPrice = 10.0; SalePrice = 12.0; GrossSales = 44232.0; Discounts = 0.0; Sales = 44232.0; COGS = 2736.0; Profit = 41496.0; Date = "11/1/18"; MonthName = "November"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "3319"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 49785.0; Discounts = 0.0; Sales = 49785.0; COGS = 21520.0; Profit = 28265.0; Date = "12/1/18"; MonthName = "December"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "3617"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 72340.0; Discounts = 0.0; Sales = 72340.0; COGS = 18170.0; Profit = 54170.0; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "1266"; ManufacturingPrice = 10.0; SalePrice = 350.0; GrossSales = 443100.0; Discounts = 0.0; Sales = 443100.0; COGS = 393380.0; Profit = 49720.0; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Burlington"; UnitsSold = "894"; ManufacturingPrice = 120.0; SalePrice = 7.0; GrossSales = 6258.0; Discounts = 0.0; Sales = 6258.0; COGS = 7465.0; Profit = 1207.0; Date = "1/1/19"; MonthName = "January"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Burlington"; UnitsSold = "2725"; ManufacturingPrice = 120.0; SalePrice = 125.0; GrossSales = 340625.0; Discounts = 0.0; Sales = 340625.0; COGS = 216480.0; Profit = 124145.0; Date = "2/1/19"; MonthName = "February"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Burlington"; UnitsSold = "3061"; ManufacturingPrice = 120.0; SalePrice = 12.0; GrossSales = 36732.0; Discounts = 0.0; Sales = 36732.0; COGS = 6483.0; Profit = 30249.0; Date = "3/1/19"; MonthName = "March"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Burlington"; UnitsSold = "3958"; ManufacturingPrice = 120.0; SalePrice = 350.0; GrossSales = 1385300.0; Discounts = 0.0; Sales = 1385300.0; COGS = 261560.0; Profit = 1123740.0; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Burlington"; UnitsSold = "3920"; ManufacturingPrice = 120.0; SalePrice = 12.0; GrossSales = 47040.0; Discounts = 0.0; Sales = 47040.0; COGS = 4635.0; Profit = 42405.0; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Burlington"; UnitsSold = "3381"; ManufacturingPrice = 120.0; SalePrice = 125.0; GrossSales = 422625.0; Discounts = 0.0; Sales = 422625.0; COGS = 338520.0; Profit = 84105.0; Date = "8/1/19"; MonthName = "August"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Burlington"; UnitsSold = "1094"; ManufacturingPrice = 120.0; SalePrice = 125.0; GrossSales = 136750.0; Discounts = 0.0; Sales = 136750.0; COGS = 41400.0; Profit = 95350.0; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Mandarin"; UnitsSold = "4307"; ManufacturingPrice = 250.0; SalePrice = 300.0; GrossSales = 1292100.0; Discounts = 0.0; Sales = 1292100.0; COGS = 500250.0; Profit = 791850.0; Date = "2/1/19"; MonthName = "February"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Mandarin"; UnitsSold = "878"; ManufacturingPrice = 250.0; SalePrice = 12.0; GrossSales = 10536.0; Discounts = 0.0; Sales = 10536.0; COGS = 8514.0; Profit = 2022.0; Date = "4/1/19"; MonthName = "April"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Mandarin"; UnitsSold = "496"; ManufacturingPrice = 250.0; SalePrice = 15.0; GrossSales = 7440.0; Discounts = 0.0; Sales = 7440.0; COGS = 21780.0; Profit = 14340.0; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Mandarin"; UnitsSold = "3367"; ManufacturingPrice = 250.0; SalePrice = 15.0; GrossSales = 50505.0; Discounts = 0.0; Sales = 50505.0; COGS = 8880.0; Profit = 41625.0; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Mandarin"; UnitsSold = "3880"; ManufacturingPrice = 250.0; SalePrice = 350.0; GrossSales = 1358000.0; Discounts = 0.0; Sales = 1358000.0; COGS = 397020.0; Profit = 960980.0; Date = "9/1/18"; MonthName = "September"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Mandarin"; UnitsSold = "2055"; ManufacturingPrice = 250.0; SalePrice = 300.0; GrossSales = 616500.0; Discounts = 0.0; Sales = 616500.0; COGS = 537750.0; Profit = 78750.0; Date = "9/1/19"; MonthName = "September"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Mandarin"; UnitsSold = "4041"; ManufacturingPrice = 250.0; SalePrice = 20.0; GrossSales = 80820.0; Discounts = 0.0; Sales = 80820.0; COGS = 18170.0; Profit = 62650.0; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Luxe"; UnitsSold = "3237"; ManufacturingPrice = 260.0; SalePrice = 350.0; GrossSales = 1132950.0; Discounts = 0.0; Sales = 1132950.0; COGS = 715000.0; Profit = 417950.0; Date = "2/1/19"; MonthName = "February"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Luxe"; UnitsSold = "630"; ManufacturingPrice = 260.0; SalePrice = 12.0; GrossSales = 7560.0; Discounts = 0.0; Sales = 7560.0; COGS = 5859.0; Profit = 1701.0; Date = "4/1/19"; MonthName = "April"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Luxe"; UnitsSold = "4210"; ManufacturingPrice = 260.0; SalePrice = 125.0; GrossSales = 526250.0; Discounts = 0.0; Sales = 526250.0; COGS = 506340.0; Profit = 19910.0; Date = "4/1/19"; MonthName = "April"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Luxe"; UnitsSold = "1127"; ManufacturingPrice = 260.0; SalePrice = 20.0; GrossSales = 22540.0; Discounts = 0.0; Sales = 22540.0; COGS = 18990.0; Profit = 3550.0; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Luxe"; UnitsSold = "3438"; ManufacturingPrice = 260.0; SalePrice = 7.0; GrossSales = 24066.0; Discounts = 0.0; Sales = 24066.0; COGS = 8430.0; Profit = 15636.0; Date = "7/1/19"; MonthName = "July"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Luxe"; UnitsSold = "2015"; ManufacturingPrice = 260.0; SalePrice = 12.0; GrossSales = 24180.0; Discounts = 0.0; Sales = 24180.0; COGS = 6423.0; Profit = 17757.0; Date = "8/1/19"; MonthName = "August"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Luxe"; UnitsSold = "2534"; ManufacturingPrice = 260.0; SalePrice = 7.0; GrossSales = 17738.0; Discounts = 0.0; Sales = 17738.0; COGS = 5715.0; Profit = 12023.0; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Luxe"; UnitsSold = "1384"; ManufacturingPrice = 260.0; SalePrice = 15.0; GrossSales = 20760.0; Discounts = 0.0; Sales = 20760.0; COGS = 6150.0; Profit = 14610.0; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "3561"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 24927.0; Discounts = 276.15; Sales = 24650.85; COGS = 19725.0; Profit = 4925.85; Date = "1/1/19"; MonthName = "January"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "1823"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 27345.0; Discounts = 344.4; Sales = 27000.6; COGS = 22960.0; Profit = 4040.6; Date = "2/1/19"; MonthName = "February"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "2795"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 19565.0; Discounts = 72.1; Sales = 19492.9; COGS = 5150.0; Profit = 14342.9; Date = "5/1/19"; MonthName = "May"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Burlington"; UnitsSold = "457"; ManufacturingPrice = 120.0; SalePrice = 7.0; GrossSales = 3199.0; Discounts = 44.73; Sales = 3154.27; COGS = 3195.0; Profit = 40.73; Date = "11/1/19"; MonthName = "November"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Mandarin"; UnitsSold = "3785"; ManufacturingPrice = 250.0; SalePrice = 7.0; GrossSales = 26495.0; Discounts = 92.82; Sales = 26402.18; COGS = 6630.0; Profit = 19772.18; Date = "3/1/19"; MonthName = "March"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Kensington"; UnitsSold = "748"; ManufacturingPrice = 3.0; SalePrice = 12.0; GrossSales = 8976.0; Discounts = 222.96; Sales = 8753.04; COGS = 5574.0; Profit = 3179.04; Date = "2/1/19"; MonthName = "February"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Kensington"; UnitsSold = "1021"; ManufacturingPrice = 3.0; SalePrice = 350.0; GrossSales = 357350.0; Discounts = 4235.0; Sales = 353115.0; COGS = 314600.0; Profit = 38515.0; Date = "3/1/19"; MonthName = "March"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Kensington"; UnitsSold = "2076"; ManufacturingPrice = 3.0; SalePrice = 7.0; GrossSales = 14532.0; Discounts = 177.03; Sales = 14354.97; COGS = 12645.0; Profit = 1709.97; Date = "7/1/19"; MonthName = "July"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Kensington"; UnitsSold = "4316"; ManufacturingPrice = 3.0; SalePrice = 12.0; GrossSales = 51792.0; Discounts = 173.4; Sales = 51618.6; COGS = 4335.0; Profit = 47283.6; Date = "9/1/19"; MonthName = "September"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Kensington"; UnitsSold = "2654"; ManufacturingPrice = 3.0; SalePrice = 125.0; GrossSales = 331750.0; Discounts = 412.5; Sales = 331337.5; COGS = 39600.0; Profit = 291737.5; Date = "9/1/18"; MonthName = "September"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Kensington"; UnitsSold = "4174"; ManufacturingPrice = 3.0; SalePrice = 12.0; GrossSales = 50088.0; Discounts = 320.52; Sales = 49767.48; COGS = 8013.0; Profit = 41754.48; Date = "9/1/19"; MonthName = "September"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Kensington"; UnitsSold = "1675"; ManufacturingPrice = 3.0; SalePrice = 12.0; GrossSales = 20100.0; Discounts = 91.92; Sales = 20008.08; COGS = 2298.0; Profit = 17710.08; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Kensington"; UnitsSold = "1572"; ManufacturingPrice = 3.0; SalePrice = 300.0; GrossSales = 471600.0; Discounts = 1482.0; Sales = 470118.0; COGS = 123500.0; Profit = 346618.0; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Kensington"; UnitsSold = "3736"; ManufacturingPrice = 3.0; SalePrice = 350.0; GrossSales = 1307600.0; Discounts = 4889.5; Sales = 1302710.5; COGS = 363220.0; Profit = 939490.5; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Kensington"; UnitsSold = "1914"; ManufacturingPrice = 3.0; SalePrice = 350.0; GrossSales = 669900.0; Discounts = 7542.5; Sales = 662357.5; COGS = 560300.0; Profit = 102057.5; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Royal Oak"; UnitsSold = "2742"; ManufacturingPrice = 5.0; SalePrice = 15.0; GrossSales = 41130.0; Discounts = 332.1; Sales = 40797.9; COGS = 22140.0; Profit = 18657.9; Date = "3/1/19"; MonthName = "March"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Royal Oak"; UnitsSold = "1499"; ManufacturingPrice = 5.0; SalePrice = 300.0; GrossSales = 449700.0; Discounts = 6903.0; Sales = 442797.0; COGS = 575250.0; Profit = 132453.0; Date = "4/1/19"; MonthName = "April"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Royal Oak"; UnitsSold = "3772"; ManufacturingPrice = 5.0; SalePrice = 20.0; GrossSales = 75440.0; Discounts = 275.1; Sales = 75164.9; COGS = 13755.0; Profit = 61409.9; Date = "7/1/19"; MonthName = "July"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Royal Oak"; UnitsSold = "1112"; ManufacturingPrice = 5.0; SalePrice = 7.0; GrossSales = 7784.0; Discounts = 128.1; Sales = 7655.9; COGS = 9150.0; Profit = 1494.1; Date = "8/1/19"; MonthName = "August"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Royal Oak"; UnitsSold = "1723"; ManufacturingPrice = 5.0; SalePrice = 300.0; GrossSales = 516900.0; Discounts = 7494.0; Sales = 509406.0; COGS = 624500.0; Profit = 115094.0; Date = "9/1/18"; MonthName = "September"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Royal Oak"; UnitsSold = "423"; ManufacturingPrice = 5.0; SalePrice = 125.0; GrossSales = 52875.0; Discounts = 828.75; Sales = 52046.25; COGS = 79560.0; Profit = 27513.75; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "2368"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 35520.0; Discounts = 227.1; Sales = 35292.9; COGS = 15140.0; Profit = 20152.9; Date = "2/1/19"; MonthName = "February"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "1586"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 11102.0; Discounts = 314.48; Sales = 10787.52; COGS = 22462.5; Profit = 11674.98; Date = "4/1/19"; MonthName = "April"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "3386"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 423250.0; Discounts = 908.75; Sales = 422341.25; COGS = 87240.0; Profit = 335101.25; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "852"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 106500.0; Discounts = 983.75; Sales = 105516.25; COGS = 94440.0; Profit = 11076.25; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "2783"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 347875.0; Discounts = 2278.75; Sales = 345596.25; COGS = 218760.0; Profit = 126836.25; Date = "7/1/19"; MonthName = "July"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "2684"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 40260.0; Discounts = 112.05; Sales = 40147.95; COGS = 7470.0; Profit = 32677.95; Date = "9/1/19"; MonthName = "September"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "4393"; ManufacturingPrice = 10.0; SalePrice = 12.0; GrossSales = 52716.0; Discounts = 91.92; Sales = 52624.08; COGS = 2298.0; Profit = 50326.08; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "4083"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 1224900.0; Discounts = 8715.0; Sales = 1216185.0; COGS = 726250.0; Profit = 489935.0; Date = "11/1/19"; MonthName = "November"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "2816"; ManufacturingPrice = 10.0; SalePrice = 350.0; GrossSales = 985600.0; Discounts = 7542.5; Sales = 978057.5; COGS = 560300.0; Profit = 417757.5; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Burlington"; UnitsSold = "4294"; ManufacturingPrice = 120.0; SalePrice = 20.0; GrossSales = 85880.0; Discounts = 772.8; Sales = 85107.2; COGS = 38640.0; Profit = 46467.2; Date = "4/1/19"; MonthName = "April"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Burlington"; UnitsSold = "2856"; ManufacturingPrice = 120.0; SalePrice = 7.0; GrossSales = 19992.0; Discounts = 25.34; Sales = 19966.66; COGS = 1810.0; Profit = 18156.66; Date = "5/1/19"; MonthName = "May"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Burlington"; UnitsSold = "1407"; ManufacturingPrice = 120.0; SalePrice = 125.0; GrossSales = 175875.0; Discounts = 1153.75; Sales = 174721.25; COGS = 110760.0; Profit = 63961.25; Date = "8/1/19"; MonthName = "August"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Burlington"; UnitsSold = "3850"; ManufacturingPrice = 120.0; SalePrice = 125.0; GrossSales = 481250.0; Discounts = 828.75; Sales = 480421.25; COGS = 79560.0; Profit = 400861.25; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Burlington"; UnitsSold = "2856"; ManufacturingPrice = 120.0; SalePrice = 7.0; GrossSales = 19992.0; Discounts = 146.44; Sales = 19845.56; COGS = 10460.0; Profit = 9385.56; Date = "11/1/18"; MonthName = "November"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Mandarin"; UnitsSold = "1265"; ManufacturingPrice = 250.0; SalePrice = 7.0; GrossSales = 8855.0; Discounts = 18.41; Sales = 8836.59; COGS = 1315.0; Profit = 7521.59; Date = "3/1/19"; MonthName = "March"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Mandarin"; UnitsSold = "3892"; ManufacturingPrice = 250.0; SalePrice = 350.0; GrossSales = 1362200.0; Discounts = 3302.25; Sales = 1358897.75; COGS = 245310.0; Profit = 1113587.75; Date = "4/1/19"; MonthName = "April"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Mandarin"; UnitsSold = "3068"; ManufacturingPrice = 250.0; SalePrice = 125.0; GrossSales = 383500.0; Discounts = 908.75; Sales = 382591.25; COGS = 87240.0; Profit = 295351.25; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Mandarin"; UnitsSold = "2181"; ManufacturingPrice = 250.0; SalePrice = 125.0; GrossSales = 272625.0; Discounts = 983.75; Sales = 271641.25; COGS = 94440.0; Profit = 177201.25; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Mandarin"; UnitsSold = "1356"; ManufacturingPrice = 250.0; SalePrice = 300.0; GrossSales = 406800.0; Discounts = 2958.0; Sales = 403842.0; COGS = 246500.0; Profit = 157342.0; Date = "9/1/19"; MonthName = "September"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Mandarin"; UnitsSold = "2545"; ManufacturingPrice = 250.0; SalePrice = 300.0; GrossSales = 763500.0; Discounts = 1482.0; Sales = 762018.0; COGS = 123500.0; Profit = 638518.0; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Mandarin"; UnitsSold = "1814"; ManufacturingPrice = 250.0; SalePrice = 350.0; GrossSales = 634900.0; Discounts = 4889.5; Sales = 630010.5; COGS = 363220.0; Profit = 266790.5; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Mandarin"; UnitsSold = "1495"; ManufacturingPrice = 250.0; SalePrice = 125.0; GrossSales = 186875.0; Discounts = 2180.0; Sales = 184695.0; COGS = 209280.0; Profit = 24585.0; Date = "11/1/19"; MonthName = "November"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Luxe"; UnitsSold = "1154"; ManufacturingPrice = 260.0; SalePrice = 12.0; GrossSales = 13848.0; Discounts = 238.68; Sales = 13609.32; COGS = 5967.0; Profit = 7642.32; Date = "9/1/18"; MonthName = "September"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Luxe"; UnitsSold = "4180"; ManufacturingPrice = 260.0; SalePrice = 15.0; GrossSales = 62700.0; Discounts = 48.15; Sales = 62651.85; COGS = 3210.0; Profit = 59441.85; Date = "11/1/18"; MonthName = "November"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Kensington"; UnitsSold = "1463"; ManufacturingPrice = 3.0; SalePrice = 125.0; GrossSales = 182875.0; Discounts = 1856.25; Sales = 181018.75; COGS = 89100.0; Profit = 91918.75; Date = "4/1/19"; MonthName = "April"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Kensington"; UnitsSold = "215"; ManufacturingPrice = 3.0; SalePrice = 12.0; GrossSales = 2580.0; Discounts = 310.8; Sales = 2269.2; COGS = 3885.0; Profit = 1615.8; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Kensington"; UnitsSold = "4099"; ManufacturingPrice = 3.0; SalePrice = 300.0; GrossSales = 1229700.0; Discounts = 1284.0; Sales = 1228416.0; COGS = 53500.0; Profit = 1174916.0; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Kensington"; UnitsSold = "2660"; ManufacturingPrice = 3.0; SalePrice = 7.0; GrossSales = 18620.0; Discounts = 300.3; Sales = 18319.7; COGS = 10725.0; Profit = 7594.7; Date = "11/1/18"; MonthName = "November"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Kensington"; UnitsSold = "566"; ManufacturingPrice = 3.0; SalePrice = 350.0; GrossSales = 198100.0; Discounts = 19964.0; Sales = 178136.0; COGS = 741520.0; Profit = 563384.0; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Royal Oak"; UnitsSold = "3255"; ManufacturingPrice = 5.0; SalePrice = 12.0; GrossSales = 39060.0; Discounts = 274.08; Sales = 38785.92; COGS = 3426.0; Profit = 35359.92; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Royal Oak"; UnitsSold = "772"; ManufacturingPrice = 5.0; SalePrice = 20.0; GrossSales = 15440.0; Discounts = 626.4; Sales = 14813.6; COGS = 15660.0; Profit = 846.4; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Royal Oak"; UnitsSold = "1135"; ManufacturingPrice = 5.0; SalePrice = 12.0; GrossSales = 13620.0; Discounts = 165.6; Sales = 13454.4; COGS = 2070.0; Profit = 11384.4; Date = "11/1/19"; MonthName = "November"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Royal Oak"; UnitsSold = "3826"; ManufacturingPrice = 5.0; SalePrice = 125.0; GrossSales = 478250.0; Discounts = 4150.0; Sales = 474100.0; COGS = 199200.0; Profit = 274900.0; Date = "11/1/18"; MonthName = "November"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "1193"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 17895.0; Discounts = 708.9; Sales = 17186.1; COGS = 23630.0; Profit = 6443.9; Date = "2/1/19"; MonthName = "February"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "2530"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 759000.0; Discounts = 5508.0; Sales = 753492.0; COGS = 229500.0; Profit = 523992.0; Date = "5/1/19"; MonthName = "May"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "3451"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 1035300.0; Discounts = 10368.0; Sales = 1024932.0; COGS = 432000.0; Profit = 592932.0; Date = "5/1/19"; MonthName = "May"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "3059"; ManufacturingPrice = 10.0; SalePrice = 12.0; GrossSales = 36708.0; Discounts = 274.08; Sales = 36433.92; COGS = 3426.0; Profit = 33007.92; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "3957"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 494625.0; Discounts = 1655.0; Sales = 492970.0; COGS = 79440.0; Profit = 413530.0; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "3444"; ManufacturingPrice = 10.0; SalePrice = 12.0; GrossSales = 41328.0; Discounts = 310.8; Sales = 41017.2; COGS = 3885.0; Profit = 37132.2; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "4388"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 548500.0; Discounts = 2022.5; Sales = 546477.5; COGS = 97080.0; Profit = 449397.5; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "2106"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 263250.0; Discounts = 5362.5; Sales = 257887.5; COGS = 257400.0; Profit = 487.5; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "799"; ManufacturingPrice = 10.0; SalePrice = 12.0; GrossSales = 9588.0; Discounts = 428.4; Sales = 9159.6; COGS = 5355.0; Profit = 3804.6; Date = "11/1/18"; MonthName = "November"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "3154"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 946200.0; Discounts = 11496.0; Sales = 934704.0; COGS = 479000.0; Profit = 455704.0; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "4108"; ManufacturingPrice = 10.0; SalePrice = 350.0; GrossSales = 1437800.0; Discounts = 19964.0; Sales = 1417836.0; COGS = 741520.0; Profit = 676316.0; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "3760"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 470000.0; Discounts = 6822.5; Sales = 463177.5; COGS = 327480.0; Profit = 135697.5; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "377"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 5655.0; Discounts = 577.5; Sales = 5077.5; COGS = 19250.0; Profit = 14172.5; Date = "12/1/18"; MonthName = "December"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "2110"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 14770.0; Discounts = 281.82; Sales = 14488.18; COGS = 10065.0; Profit = 4423.18; Date = "12/1/18"; MonthName = "December"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "2334"; ManufacturingPrice = 10.0; SalePrice = 12.0; GrossSales = 28008.0; Discounts = 253.2; Sales = 27754.8; COGS = 3165.0; Profit = 24589.8; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "580"; ManufacturingPrice = 10.0; SalePrice = 12.0; GrossSales = 6960.0; Discounts = 260.16; Sales = 6699.84; COGS = 3252.0; Profit = 3447.84; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Burlington"; UnitsSold = "2610"; ManufacturingPrice = 120.0; SalePrice = 20.0; GrossSales = 52200.0; Discounts = 626.4; Sales = 51573.6; COGS = 15660.0; Profit = 35913.6; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Burlington"; UnitsSold = "1598"; ManufacturingPrice = 120.0; SalePrice = 350.0; GrossSales = 559300.0; Discounts = 20762.0; Sales = 538538.0; COGS = 771160.0; Profit = 232622.0; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Burlington"; UnitsSold = "1459"; ManufacturingPrice = 120.0; SalePrice = 350.0; GrossSales = 510650.0; Discounts = 20139.0; Sales = 490511.0; COGS = 748020.0; Profit = 257509.0; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Burlington"; UnitsSold = "3284"; ManufacturingPrice = 120.0; SalePrice = 125.0; GrossSales = 410500.0; Discounts = 2022.5; Sales = 408477.5; COGS = 97080.0; Profit = 311397.5; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Burlington"; UnitsSold = "1197"; ManufacturingPrice = 120.0; SalePrice = 125.0; GrossSales = 149625.0; Discounts = 5362.5; Sales = 144262.5; COGS = 257400.0; Profit = 113137.5; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Burlington"; UnitsSold = "3774"; ManufacturingPrice = 120.0; SalePrice = 12.0; GrossSales = 45288.0; Discounts = 253.2; Sales = 45034.8; COGS = 3165.0; Profit = 41869.8; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Burlington"; UnitsSold = "2303"; ManufacturingPrice = 120.0; SalePrice = 20.0; GrossSales = 46060.0; Discounts = 217.6; Sales = 45842.4; COGS = 5440.0; Profit = 40402.4; Date = "12/1/18"; MonthName = "December"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Burlington"; UnitsSold = "2572"; ManufacturingPrice = 120.0; SalePrice = 12.0; GrossSales = 30864.0; Discounts = 260.16; Sales = 30603.84; COGS = 3252.0; Profit = 27351.84; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Mandarin"; UnitsSold = "320"; ManufacturingPrice = 250.0; SalePrice = 125.0; GrossSales = 40000.0; Discounts = 1655.0; Sales = 38345.0; COGS = 79440.0; Profit = 41095.0; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Mandarin"; UnitsSold = "2126"; ManufacturingPrice = 250.0; SalePrice = 300.0; GrossSales = 637800.0; Discounts = 1284.0; Sales = 636516.0; COGS = 53500.0; Profit = 583016.0; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Mandarin"; UnitsSold = "3275"; ManufacturingPrice = 250.0; SalePrice = 350.0; GrossSales = 1146250.0; Discounts = 20139.0; Sales = 1126111.0; COGS = 748020.0; Profit = 378091.0; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Mandarin"; UnitsSold = "3582"; ManufacturingPrice = 250.0; SalePrice = 125.0; GrossSales = 447750.0; Discounts = 6822.5; Sales = 440927.5; COGS = 327480.0; Profit = 113447.5; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Mandarin"; UnitsSold = "783"; ManufacturingPrice = 250.0; SalePrice = 350.0; GrossSales = 274050.0; Discounts = 1862.0; Sales = 272188.0; COGS = 69160.0; Profit = 203028.0; Date = "12/1/18"; MonthName = "December"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Mandarin"; UnitsSold = "1202"; ManufacturingPrice = 250.0; SalePrice = 350.0; GrossSales = 420700.0; Discounts = 13580.0; Sales = 407120.0; COGS = 504400.0; Profit = 97280.0; Date = "12/1/18"; MonthName = "December"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Luxe"; UnitsSold = "4056"; ManufacturingPrice = 260.0; SalePrice = 300.0; GrossSales = 1216800.0; Discounts = 1554.0; Sales = 1215246.0; COGS = 64750.0; Profit = 1150496.0; Date = "3/1/19"; MonthName = "March"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Luxe"; UnitsSold = "2144"; ManufacturingPrice = 260.0; SalePrice = 300.0; GrossSales = 643200.0; Discounts = 6606.0; Sales = 636594.0; COGS = 275250.0; Profit = 361344.0; Date = "3/1/19"; MonthName = "March"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Luxe"; UnitsSold = "3502"; ManufacturingPrice = 260.0; SalePrice = 125.0; GrossSales = 437750.0; Discounts = 5690.0; Sales = 432060.0; COGS = 273120.0; Profit = 158940.0; Date = "5/1/19"; MonthName = "May"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Luxe"; UnitsSold = "1397"; ManufacturingPrice = 260.0; SalePrice = 350.0; GrossSales = 488950.0; Discounts = 20762.0; Sales = 468188.0; COGS = 771160.0; Profit = 302972.0; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Luxe"; UnitsSold = "679"; ManufacturingPrice = 260.0; SalePrice = 20.0; GrossSales = 13580.0; Discounts = 494.4; Sales = 13085.6; COGS = 12360.0; Profit = 725.6; Date = "11/1/19"; MonthName = "November"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Luxe"; UnitsSold = "2351"; ManufacturingPrice = 260.0; SalePrice = 20.0; GrossSales = 47020.0; Discounts = 376.4; Sales = 46643.6; COGS = 9410.0; Profit = 37233.6; Date = "11/1/19"; MonthName = "November"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Luxe"; UnitsSold = "2043"; ManufacturingPrice = 260.0; SalePrice = 300.0; GrossSales = 612900.0; Discounts = 11496.0; Sales = 601404.0; COGS = 479000.0; Profit = 122404.0; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Kensington"; UnitsSold = "3565"; ManufacturingPrice = 3.0; SalePrice = 125.0; GrossSales = 445625.0; Discounts = 15913.13; Sales = 429711.88; COGS = 509220.0; Profit = 79508.13; Date = "4/1/19"; MonthName = "April"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Kensington"; UnitsSold = "1401"; ManufacturingPrice = 3.0; SalePrice = 20.0; GrossSales = 28020.0; Discounts = 1548.0; Sales = 26472.0; COGS = 25800.0; Profit = 672.0; Date = "4/1/19"; MonthName = "April"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Kensington"; UnitsSold = "2077"; ManufacturingPrice = 3.0; SalePrice = 300.0; GrossSales = 623100.0; Discounts = 6201.0; Sales = 616899.0; COGS = 172250.0; Profit = 444649.0; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Kensington"; UnitsSold = "3643"; ManufacturingPrice = 3.0; SalePrice = 12.0; GrossSales = 43716.0; Discounts = 700.92; Sales = 43015.08; COGS = 5841.0; Profit = 37174.08; Date = "9/1/19"; MonthName = "September"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Kensington"; UnitsSold = "1105"; ManufacturingPrice = 3.0; SalePrice = 12.0; GrossSales = 13260.0; Discounts = 326.88; Sales = 12933.12; COGS = 2724.0; Profit = 10209.12; Date = "12/1/18"; MonthName = "December"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Royal Oak"; UnitsSold = "2960"; ManufacturingPrice = 5.0; SalePrice = 7.0; GrossSales = 20720.0; Discounts = 411.18; Sales = 20308.82; COGS = 9790.0; Profit = 10518.82; Date = "2/1/19"; MonthName = "February"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Royal Oak"; UnitsSold = "1201"; ManufacturingPrice = 5.0; SalePrice = 12.0; GrossSales = 14412.0; Discounts = 684.36; Sales = 13727.64; COGS = 5703.0; Profit = 8024.64; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Royal Oak"; UnitsSold = "2321"; ManufacturingPrice = 5.0; SalePrice = 7.0; GrossSales = 16247.0; Discounts = 114.24; Sales = 16132.76; COGS = 2720.0; Profit = 13412.76; Date = "9/1/19"; MonthName = "September"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Royal Oak"; UnitsSold = "3640"; ManufacturingPrice = 5.0; SalePrice = 350.0; GrossSales = 1274000.0; Discounts = 18868.5; Sales = 1255131.5; COGS = 467220.0; Profit = 787911.5; Date = "9/1/18"; MonthName = "September"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Royal Oak"; UnitsSold = "3972"; ManufacturingPrice = 5.0; SalePrice = 125.0; GrossSales = 496500.0; Discounts = 4826.25; Sales = 491673.75; COGS = 154440.0; Profit = 337233.75; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Royal Oak"; UnitsSold = "3878"; ManufacturingPrice = 5.0; SalePrice = 125.0; GrossSales = 484750.0; Discounts = 6397.5; Sales = 478352.5; COGS = 204720.0; Profit = 273632.5; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "2278"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 683400.0; Discounts = 21910.5; Sales = 661489.5; COGS = 608625.0; Profit = 52864.5; Date = "1/1/19"; MonthName = "January"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "1075"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 134375.0; Discounts = 6652.5; Sales = 127722.5; COGS = 212880.0; Profit = 85157.5; Date = "3/1/19"; MonthName = "March"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "4050"; ManufacturingPrice = 10.0; SalePrice = 12.0; GrossSales = 48600.0; Discounts = 684.36; Sales = 47915.64; COGS = 5703.0; Profit = 42212.64; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "3035"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 910500.0; Discounts = 6201.0; Sales = 904299.0; COGS = 172250.0; Profit = 732049.0; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "3636"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 454500.0; Discounts = 5887.5; Sales = 448612.5; COGS = 188400.0; Profit = 260212.5; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "1379"; ManufacturingPrice = 10.0; SalePrice = 12.0; GrossSales = 16548.0; Discounts = 493.02; Sales = 16054.98; COGS = 4108.5; Profit = 11946.48; Date = "7/1/19"; MonthName = "July"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "4492"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 561500.0; Discounts = 7533.75; Sales = 553966.25; COGS = 241080.0; Profit = 312886.25; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "764"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 11460.0; Discounts = 875.25; Sales = 10584.75; COGS = 19450.0; Profit = 8865.25; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "1744"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 218000.0; Discounts = 4826.25; Sales = 213173.75; COGS = 154440.0; Profit = 58733.75; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "2341"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 292625.0; Discounts = 6397.5; Sales = 286227.5; COGS = 204720.0; Profit = 81507.5; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Burlington"; UnitsSold = "3835"; ManufacturingPrice = 120.0; SalePrice = 125.0; GrossSales = 479375.0; Discounts = 7533.75; Sales = 471841.25; COGS = 241080.0; Profit = 230761.25; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Mandarin"; UnitsSold = "1161"; ManufacturingPrice = 250.0; SalePrice = 300.0; GrossSales = 348300.0; Discounts = 25596.0; Sales = 322704.0; COGS = 711000.0; Profit = 388296.0; Date = "2/1/19"; MonthName = "February"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Mandarin"; UnitsSold = "876"; ManufacturingPrice = 250.0; SalePrice = 12.0; GrossSales = 10512.0; Discounts = 689.76; Sales = 9822.24; COGS = 5748.0; Profit = 4074.24; Date = "4/1/19"; MonthName = "April"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Mandarin"; UnitsSold = "1705"; ManufacturingPrice = 250.0; SalePrice = 125.0; GrossSales = 213125.0; Discounts = 5887.5; Sales = 207237.5; COGS = 188400.0; Profit = 18837.5; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Mandarin"; UnitsSold = "1805"; ManufacturingPrice = 250.0; SalePrice = 300.0; GrossSales = 541500.0; Discounts = 16866.0; Sales = 524634.0; COGS = 468500.0; Profit = 56134.0; Date = "8/1/19"; MonthName = "August"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Mandarin"; UnitsSold = "389"; ManufacturingPrice = 250.0; SalePrice = 350.0; GrossSales = 136150.0; Discounts = 17241.0; Sales = 118909.0; COGS = 426920.0; Profit = 308011.0; Date = "8/1/19"; MonthName = "August"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Mandarin"; UnitsSold = "2745"; ManufacturingPrice = 250.0; SalePrice = 15.0; GrossSales = 41175.0; Discounts = 875.25; Sales = 40299.75; COGS = 19450.0; Profit = 20849.75; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Kensington"; UnitsSold = "1459"; ManufacturingPrice = 3.0; SalePrice = 20.0; GrossSales = 29180.0; Discounts = 498.6; Sales = 28681.4; COGS = 8310.0; Profit = 20371.4; Date = "5/1/19"; MonthName = "May"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "3938"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 27566.0; Discounts = 369.6; Sales = 27196.4; COGS = 8800.0; Profit = 18396.4; Date = "9/1/18"; MonthName = "September"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Burlington"; UnitsSold = "4236"; ManufacturingPrice = 120.0; SalePrice = 20.0; GrossSales = 84720.0; Discounts = 2310.3; Sales = 82409.7; COGS = 38505.0; Profit = 43904.7; Date = "4/1/19"; MonthName = "April"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Mandarin"; UnitsSold = "3627"; ManufacturingPrice = 250.0; SalePrice = 12.0; GrossSales = 43524.0; Discounts = 892.44; Sales = 42631.56; COGS = 7437.0; Profit = 35194.56; Date = "1/1/19"; MonthName = "January"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Royal Oak"; UnitsSold = "1756"; ManufacturingPrice = 5.0; SalePrice = 15.0; GrossSales = 26340.0; Discounts = 1218.6; Sales = 25121.4; COGS = 20310.0; Profit = 4811.4; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "307"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 4605.0; Discounts = 1218.6; Sales = 3386.4; COGS = 20310.0; Profit = 16923.6; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "4489"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 67335.0; Discounts = 1356.6; Sales = 65978.4; COGS = 22610.0; Profit = 43368.4; Date = "12/1/18"; MonthName = "December"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Burlington"; UnitsSold = "2167"; ManufacturingPrice = 120.0; SalePrice = 20.0; GrossSales = 43340.0; Discounts = 588.8; Sales = 42751.2; COGS = 7360.0; Profit = 35391.2; Date = "9/1/18"; MonthName = "September"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Kensington"; UnitsSold = "1137"; ManufacturingPrice = 3.0; SalePrice = 7.0; GrossSales = 7959.0; Discounts = 798.28; Sales = 7160.72; COGS = 14255.0; Profit = 7094.28; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Kensington"; UnitsSold = "1222"; ManufacturingPrice = 3.0; SalePrice = 300.0; GrossSales = 366600.0; Discounts = 24252.0; Sales = 342348.0; COGS = 505250.0; Profit = 162902.0; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Kensington"; UnitsSold = "489"; ManufacturingPrice = 3.0; SalePrice = 350.0; GrossSales = 171150.0; Discounts = 3836.0; Sales = 167314.0; COGS = 71240.0; Profit = 96074.0; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Royal Oak"; UnitsSold = "4133"; ManufacturingPrice = 5.0; SalePrice = 15.0; GrossSales = 61995.0; Discounts = 1180.2; Sales = 60814.8; COGS = 19670.0; Profit = 41144.8; Date = "3/1/19"; MonthName = "March"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Royal Oak"; UnitsSold = "2743"; ManufacturingPrice = 5.0; SalePrice = 300.0; GrossSales = 822900.0; Discounts = 22308.0; Sales = 800592.0; COGS = 464750.0; Profit = 335842.0; Date = "8/1/19"; MonthName = "August"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Royal Oak"; UnitsSold = "3699"; ManufacturingPrice = 5.0; SalePrice = 7.0; GrossSales = 25893.0; Discounts = 798.28; Sales = 25094.72; COGS = 14255.0; Profit = 10839.72; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Royal Oak"; UnitsSold = "4460"; ManufacturingPrice = 5.0; SalePrice = 300.0; GrossSales = 1338000.0; Discounts = 24252.0; Sales = 1313748.0; COGS = 505250.0; Profit = 808498.0; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Royal Oak"; UnitsSold = "1232"; ManufacturingPrice = 5.0; SalePrice = 125.0; GrossSales = 154000.0; Discounts = 5690.0; Sales = 148310.0; COGS = 136560.0; Profit = 11750.0; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "2586"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 18102.0; Discounts = 1190.28; Sales = 16911.72; COGS = 21255.0; Profit = 4343.28; Date = "1/1/19"; MonthName = "January"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "1332"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 166500.0; Discounts = 3975.0; Sales = 162525.0; COGS = 95400.0; Profit = 67125.0; Date = "3/1/19"; MonthName = "March"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "4487"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 1346100.0; Discounts = 16974.0; Sales = 1329126.0; COGS = 353625.0; Profit = 975501.0; Date = "4/1/19"; MonthName = "April"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "3862"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 1158600.0; Discounts = 35016.0; Sales = 1123584.0; COGS = 729500.0; Profit = 394084.0; Date = "5/1/19"; MonthName = "May"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "1765"; ManufacturingPrice = 10.0; SalePrice = 350.0; GrossSales = 617750.0; Discounts = 48300.0; Sales = 569450.0; COGS = 897000.0; Profit = 327550.0; Date = "7/1/19"; MonthName = "July"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "3533"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 441625.0; Discounts = 14940.0; Sales = 426685.0; COGS = 358560.0; Profit = 68125.0; Date = "7/1/19"; MonthName = "July"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "2016"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 30240.0; Discounts = 130.8; Sales = 30109.2; COGS = 2180.0; Profit = 27929.2; Date = "9/1/19"; MonthName = "September"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "2938"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 58760.0; Discounts = 1659.2; Sales = 57100.8; COGS = 20740.0; Profit = 36360.8; Date = "9/1/19"; MonthName = "September"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "3352"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 67040.0; Discounts = 844.8; Sales = 66195.2; COGS = 10560.0; Profit = 55635.2; Date = "9/1/19"; MonthName = "September"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "4409"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 66135.0; Discounts = 402.6; Sales = 65732.4; COGS = 6710.0; Profit = 59022.4; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "3323"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 49845.0; Discounts = 908.4; Sales = 48936.6; COGS = 15140.0; Profit = 33796.6; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "2430"; ManufacturingPrice = 10.0; SalePrice = 350.0; GrossSales = 850500.0; Discounts = 3836.0; Sales = 846664.0; COGS = 71240.0; Profit = 775424.0; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "535"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 66875.0; Discounts = 5690.0; Sales = 61185.0; COGS = 136560.0; Profit = 75375.0; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Burlington"; UnitsSold = "1523"; ManufacturingPrice = 120.0; SalePrice = 12.0; GrossSales = 18276.0; Discounts = 703.2; Sales = 17572.8; COGS = 4395.0; Profit = 13177.8; Date = "3/1/19"; MonthName = "March"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Burlington"; UnitsSold = "3631"; ManufacturingPrice = 120.0; SalePrice = 20.0; GrossSales = 72620.0; Discounts = 2116.8; Sales = 70503.2; COGS = 26460.0; Profit = 44043.2; Date = "9/1/18"; MonthName = "September"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Burlington"; UnitsSold = "1782"; ManufacturingPrice = 120.0; SalePrice = 350.0; GrossSales = 623700.0; Discounts = 30478.0; Sales = 593222.0; COGS = 566020.0; Profit = 27202.0; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Mandarin"; UnitsSold = "347"; ManufacturingPrice = 250.0; SalePrice = 12.0; GrossSales = 4164.0; Discounts = 415.68; Sales = 3748.32; COGS = 2598.0; Profit = 1150.32; Date = "5/1/19"; MonthName = "May"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Mandarin"; UnitsSold = "4147"; ManufacturingPrice = 250.0; SalePrice = 350.0; GrossSales = 1451450.0; Discounts = 4886.0; Sales = 1446564.0; COGS = 90740.0; Profit = 1355824.0; Date = "9/1/18"; MonthName = "September"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Mandarin"; UnitsSold = "3509"; ManufacturingPrice = 250.0; SalePrice = 350.0; GrossSales = 1228150.0; Discounts = 30478.0; Sales = 1197672.0; COGS = 566020.0; Profit = 631652.0; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Mandarin"; UnitsSold = "2774"; ManufacturingPrice = 250.0; SalePrice = 15.0; GrossSales = 41610.0; Discounts = 908.4; Sales = 40701.6; COGS = 15140.0; Profit = 25561.6; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Luxe"; UnitsSold = "2943"; ManufacturingPrice = 260.0; SalePrice = 350.0; GrossSales = 1030050.0; Discounts = 26110.0; Sales = 1003940.0; COGS = 484900.0; Profit = 519040.0; Date = "2/1/19"; MonthName = "February"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Luxe"; UnitsSold = "4037"; ManufacturingPrice = 260.0; SalePrice = 125.0; GrossSales = 504625.0; Discounts = 5370.0; Sales = 499255.0; COGS = 128880.0; Profit = 370375.0; Date = "4/1/19"; MonthName = "April"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Luxe"; UnitsSold = "4146"; ManufacturingPrice = 260.0; SalePrice = 350.0; GrossSales = 1451100.0; Discounts = 26698.0; Sales = 1424402.0; COGS = 495820.0; Profit = 928582.0; Date = "9/1/19"; MonthName = "September"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Luxe"; UnitsSold = "4123"; ManufacturingPrice = 260.0; SalePrice = 15.0; GrossSales = 61845.0; Discounts = 402.6; Sales = 61442.4; COGS = 6710.0; Profit = 54732.4; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Luxe"; UnitsSold = "1337"; ManufacturingPrice = 260.0; SalePrice = 350.0; GrossSales = 467950.0; Discounts = 24892.0; Sales = 443058.0; COGS = 462280.0; Profit = 19222.0; Date = "12/1/18"; MonthName = "December"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Royal Oak"; UnitsSold = "599"; ManufacturingPrice = 5.0; SalePrice = 7.0; GrossSales = 4193.0; Discounts = 405.65; Sales = 3787.35; COGS = 5795.0; Profit = 2007.65; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "725"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 5075.0; Discounts = 480.2; Sales = 4594.8; COGS = 6860.0; Profit = 2265.2; Date = "1/1/19"; MonthName = "January"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "477"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 3339.0; Discounts = 822.15; Sales = 2516.85; COGS = 11745.0; Profit = 9228.15; Date = "9/1/18"; MonthName = "September"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "2325"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 16275.0; Discounts = 941.15; Sales = 15333.85; COGS = 13445.0; Profit = 1888.85; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "675"; ManufacturingPrice = 10.0; SalePrice = 12.0; GrossSales = 8100.0; Discounts = 1458.6; Sales = 6641.4; COGS = 7293.0; Profit = 651.6; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Burlington"; UnitsSold = "2990"; ManufacturingPrice = 120.0; SalePrice = 12.0; GrossSales = 35880.0; Discounts = 1458.6; Sales = 34421.4; COGS = 7293.0; Profit = 27128.4; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Mandarin"; UnitsSold = "1072"; ManufacturingPrice = 250.0; SalePrice = 7.0; GrossSales = 7504.0; Discounts = 941.15; Sales = 6562.85; COGS = 13445.0; Profit = 6882.15; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Luxe"; UnitsSold = "1048"; ManufacturingPrice = 260.0; SalePrice = 7.0; GrossSales = 7336.0; Discounts = 589.05; Sales = 6746.95; COGS = 8415.0; Profit = 1668.05; Date = "7/1/19"; MonthName = "July"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Luxe"; UnitsSold = "469"; ManufacturingPrice = 260.0; SalePrice = 12.0; GrossSales = 5628.0; Discounts = 673.8; Sales = 4954.2; COGS = 3369.0; Profit = 1585.2; Date = "8/1/19"; MonthName = "August"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Luxe"; UnitsSold = "804"; ManufacturingPrice = 260.0; SalePrice = 7.0; GrossSales = 5628.0; Discounts = 405.65; Sales = 5222.35; COGS = 5795.0; Profit = 572.65; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Kensington"; UnitsSold = "4240"; ManufacturingPrice = 3.0; SalePrice = 12.0; GrossSales = 50880.0; Discounts = 1119.0; Sales = 49761.0; COGS = 5595.0; Profit = 44166.0; Date = "2/1/19"; MonthName = "February"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Kensington"; UnitsSold = "1976"; ManufacturingPrice = 3.0; SalePrice = 12.0; GrossSales = 23712.0; Discounts = 669.6; Sales = 23042.4; COGS = 3348.0; Profit = 19694.4; Date = "2/1/19"; MonthName = "February"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Kensington"; UnitsSold = "1984"; ManufacturingPrice = 3.0; SalePrice = 20.0; GrossSales = 39680.0; Discounts = 1563.0; Sales = 38117.0; COGS = 15630.0; Profit = 22487.0; Date = "5/1/19"; MonthName = "May"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Kensington"; UnitsSold = "480"; ManufacturingPrice = 3.0; SalePrice = 300.0; GrossSales = 144000.0; Discounts = 14865.0; Sales = 129135.0; COGS = 247750.0; Profit = 118615.0; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Kensington"; UnitsSold = "3551"; ManufacturingPrice = 3.0; SalePrice = 7.0; GrossSales = 24857.0; Discounts = 355.6; Sales = 24501.4; COGS = 5080.0; Profit = 19421.4; Date = "11/1/18"; MonthName = "November"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Kensington"; UnitsSold = "1205"; ManufacturingPrice = 3.0; SalePrice = 15.0; GrossSales = 18075.0; Discounts = 2093.25; Sales = 15981.75; COGS = 27910.0; Profit = 11928.25; Date = "11/1/19"; MonthName = "November"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Kensington"; UnitsSold = "2480"; ManufacturingPrice = 3.0; SalePrice = 7.0; GrossSales = 17360.0; Discounts = 199.5; Sales = 17160.5; COGS = 2850.0; Profit = 14310.5; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Kensington"; UnitsSold = "2926"; ManufacturingPrice = 3.0; SalePrice = 7.0; GrossSales = 20482.0; Discounts = 870.45; Sales = 19611.55; COGS = 12435.0; Profit = 7176.55; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Royal Oak"; UnitsSold = "3210"; ManufacturingPrice = 5.0; SalePrice = 350.0; GrossSales = 1123500.0; Discounts = 24228.75; Sales = 1099271.25; COGS = 359970.0; Profit = 739301.25; Date = "1/1/19"; MonthName = "January"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Royal Oak"; UnitsSold = "3221"; ManufacturingPrice = 5.0; SalePrice = 125.0; GrossSales = 402625.0; Discounts = 22668.75; Sales = 379956.25; COGS = 435240.0; Profit = 55283.75; Date = "7/1/19"; MonthName = "July"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Royal Oak"; UnitsSold = "2389"; ManufacturingPrice = 5.0; SalePrice = 350.0; GrossSales = 836150.0; Discounts = 12600.0; Sales = 823550.0; COGS = 187200.0; Profit = 636350.0; Date = "9/1/18"; MonthName = "September"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Royal Oak"; UnitsSold = "1127"; ManufacturingPrice = 5.0; SalePrice = 12.0; GrossSales = 13524.0; Discounts = 1405.2; Sales = 12118.8; COGS = 7026.0; Profit = 5092.8; Date = "11/1/19"; MonthName = "November"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Royal Oak"; UnitsSold = "319"; ManufacturingPrice = 5.0; SalePrice = 300.0; GrossSales = 95700.0; Discounts = 16500.0; Sales = 79200.0; COGS = 275000.0; Profit = 195800.0; Date = "12/1/18"; MonthName = "December"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "1610"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 32200.0; Discounts = 1303.0; Sales = 30897.0; COGS = 13030.0; Profit = 17867.0; Date = "2/1/19"; MonthName = "February"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "4100"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 512500.0; Discounts = 18700.0; Sales = 493800.0; COGS = 359040.0; Profit = 134760.0; Date = "3/1/19"; MonthName = "March"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "1012"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 126500.0; Discounts = 14906.25; Sales = 111593.75; COGS = 286200.0; Profit = 174606.25; Date = "3/1/19"; MonthName = "March"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "3337"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 1001100.0; Discounts = 24105.0; Sales = 976995.0; COGS = 401750.0; Profit = 575245.0; Date = "4/1/19"; MonthName = "April"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "3955"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 27685.0; Discounts = 814.45; Sales = 26870.55; COGS = 11635.0; Profit = 15235.55; Date = "5/1/19"; MonthName = "May"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "4347"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 1304100.0; Discounts = 14865.0; Sales = 1289235.0; COGS = 247750.0; Profit = 1041485.0; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "1548"; ManufacturingPrice = 10.0; SalePrice = 350.0; GrossSales = 541800.0; Discounts = 10535.0; Sales = 531265.0; COGS = 156520.0; Profit = 374745.0; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "2153"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 32295.0; Discounts = 1965.0; Sales = 30330.0; COGS = 26200.0; Profit = 4130.0; Date = "9/1/19"; MonthName = "September"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "3789"; ManufacturingPrice = 10.0; SalePrice = 350.0; GrossSales = 1326150.0; Discounts = 21490.0; Sales = 1304660.0; COGS = 319280.0; Profit = 985380.0; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "4364"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 87280.0; Discounts = 1389.0; Sales = 85891.0; COGS = 13890.0; Profit = 72001.0; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "4126"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 515750.0; Discounts = 5381.25; Sales = 510368.75; COGS = 103320.0; Profit = 407048.75; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "1343"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 167875.0; Discounts = 4400.0; Sales = 163475.0; COGS = 84480.0; Profit = 78995.0; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "245"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 4900.0; Discounts = 1802.0; Sales = 3098.0; COGS = 18020.0; Profit = 14922.0; Date = "12/1/18"; MonthName = "December"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "3376"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 67520.0; Discounts = 2663.0; Sales = 64857.0; COGS = 26630.0; Profit = 38227.0; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "1401"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 9807.0; Discounts = 747.6; Sales = 9059.4; COGS = 10680.0; Profit = 1620.6; Date = "12/1/18"; MonthName = "December"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "3483"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 52245.0; Discounts = 1587.0; Sales = 50658.0; COGS = 21160.0; Profit = 29498.0; Date = "12/1/18"; MonthName = "December"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Burlington"; UnitsSold = "2244"; ManufacturingPrice = 120.0; SalePrice = 15.0; GrossSales = 33660.0; Discounts = 416.25; Sales = 33243.75; COGS = 5550.0; Profit = 27693.75; Date = "1/1/19"; MonthName = "January"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Burlington"; UnitsSold = "1360"; ManufacturingPrice = 120.0; SalePrice = 15.0; GrossSales = 20400.0; Discounts = 2145.75; Sales = 18254.25; COGS = 28610.0; Profit = 10355.75; Date = "1/1/19"; MonthName = "January"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Burlington"; UnitsSold = "279"; ManufacturingPrice = 120.0; SalePrice = 125.0; GrossSales = 34875.0; Discounts = 5043.75; Sales = 29831.25; COGS = 96840.0; Profit = 67008.75; Date = "2/1/19"; MonthName = "February"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Burlington"; UnitsSold = "2521"; ManufacturingPrice = 120.0; SalePrice = 350.0; GrossSales = 882350.0; Discounts = 10535.0; Sales = 871815.0; COGS = 156520.0; Profit = 715295.0; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Burlington"; UnitsSold = "2433"; ManufacturingPrice = 120.0; SalePrice = 20.0; GrossSales = 48660.0; Discounts = 2832.0; Sales = 45828.0; COGS = 28320.0; Profit = 17508.0; Date = "8/1/19"; MonthName = "August"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Burlington"; UnitsSold = "1738"; ManufacturingPrice = 120.0; SalePrice = 20.0; GrossSales = 34760.0; Discounts = 1579.0; Sales = 33181.0; COGS = 15790.0; Profit = 17391.0; Date = "8/1/19"; MonthName = "August"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Burlington"; UnitsSold = "1106"; ManufacturingPrice = 120.0; SalePrice = 125.0; GrossSales = 138250.0; Discounts = 5381.25; Sales = 132868.75; COGS = 103320.0; Profit = 29548.75; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Burlington"; UnitsSold = "3379"; ManufacturingPrice = 120.0; SalePrice = 125.0; GrossSales = 422375.0; Discounts = 4400.0; Sales = 417975.0; COGS = 84480.0; Profit = 333495.0; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Burlington"; UnitsSold = "1221"; ManufacturingPrice = 120.0; SalePrice = 20.0; GrossSales = 24420.0; Discounts = 1033.0; Sales = 23387.0; COGS = 10330.0; Profit = 13057.0; Date = "12/1/18"; MonthName = "December"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Burlington"; UnitsSold = "213"; ManufacturingPrice = 120.0; SalePrice = 300.0; GrossSales = 63900.0; Discounts = 18750.0; Sales = 45150.0; COGS = 312500.0; Profit = 267350.0; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Mandarin"; UnitsSold = "3335"; ManufacturingPrice = 250.0; SalePrice = 20.0; GrossSales = 66700.0; Discounts = 1389.0; Sales = 65311.0; COGS = 13890.0; Profit = 51421.0; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Mandarin"; UnitsSold = "1260"; ManufacturingPrice = 250.0; SalePrice = 20.0; GrossSales = 25200.0; Discounts = 1265.0; Sales = 23935.0; COGS = 12650.0; Profit = 11285.0; Date = "11/1/18"; MonthName = "November"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Mandarin"; UnitsSold = "3034"; ManufacturingPrice = 250.0; SalePrice = 20.0; GrossSales = 60680.0; Discounts = 2297.0; Sales = 58383.0; COGS = 22970.0; Profit = 35413.0; Date = "11/1/18"; MonthName = "November"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Mandarin"; UnitsSold = "2929"; ManufacturingPrice = 250.0; SalePrice = 20.0; GrossSales = 58580.0; Discounts = 2663.0; Sales = 55917.0; COGS = 26630.0; Profit = 29287.0; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Mandarin"; UnitsSold = "2389"; ManufacturingPrice = 250.0; SalePrice = 7.0; GrossSales = 16723.0; Discounts = 199.5; Sales = 16523.5; COGS = 2850.0; Profit = 13673.5; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Mandarin"; UnitsSold = "3086"; ManufacturingPrice = 250.0; SalePrice = 7.0; GrossSales = 21602.0; Discounts = 870.45; Sales = 20731.55; COGS = 12435.0; Profit = 8296.55; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Luxe"; UnitsSold = "745"; ManufacturingPrice = 260.0; SalePrice = 350.0; GrossSales = 260750.0; Discounts = 23625.0; Sales = 237125.0; COGS = 351000.0; Profit = 113875.0; Date = "2/1/19"; MonthName = "February"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Luxe"; UnitsSold = "1266"; ManufacturingPrice = 260.0; SalePrice = 350.0; GrossSales = 443100.0; Discounts = 9660.0; Sales = 433440.0; COGS = 143520.0; Profit = 289920.0; Date = "8/1/19"; MonthName = "August"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Luxe"; UnitsSold = "3790"; ManufacturingPrice = 260.0; SalePrice = 350.0; GrossSales = 1326500.0; Discounts = 21490.0; Sales = 1305010.0; COGS = 319280.0; Profit = 985730.0; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Luxe"; UnitsSold = "4287"; ManufacturingPrice = 260.0; SalePrice = 300.0; GrossSales = 1286100.0; Discounts = 18750.0; Sales = 1267350.0; COGS = 312500.0; Profit = 954850.0; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "3193"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 47895.0; Discounts = 3420.9; Sales = 44474.1; COGS = 38010.0; Profit = 6464.1; Date = "4/1/19"; MonthName = "April"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Kensington"; UnitsSold = "1967"; ManufacturingPrice = 3.0; SalePrice = 20.0; GrossSales = 39340.0; Discounts = 1341.0; Sales = 37999.0; COGS = 11175.0; Profit = 26824.0; Date = "1/1/19"; MonthName = "January"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Kensington"; UnitsSold = "631"; ManufacturingPrice = 3.0; SalePrice = 15.0; GrossSales = 9465.0; Discounts = 2559.6; Sales = 6905.4; COGS = 28440.0; Profit = 21534.6; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Kensington"; UnitsSold = "3469"; ManufacturingPrice = 3.0; SalePrice = 12.0; GrossSales = 41628.0; Discounts = 404.64; Sales = 41223.36; COGS = 1686.0; Profit = 39537.36; Date = "9/1/19"; MonthName = "September"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Kensington"; UnitsSold = "570"; ManufacturingPrice = 3.0; SalePrice = 12.0; GrossSales = 6840.0; Discounts = 1655.28; Sales = 5184.72; COGS = 6897.0; Profit = 1712.28; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Kensington"; UnitsSold = "3215"; ManufacturingPrice = 3.0; SalePrice = 15.0; GrossSales = 48225.0; Discounts = 1827.0; Sales = 46398.0; COGS = 20300.0; Profit = 26098.0; Date = "11/1/19"; MonthName = "November"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Kensington"; UnitsSold = "3754"; ManufacturingPrice = 3.0; SalePrice = 7.0; GrossSales = 26278.0; Discounts = 110.46; Sales = 26167.54; COGS = 1315.0; Profit = 24852.54; Date = "11/1/18"; MonthName = "November"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Kensington"; UnitsSold = "2187"; ManufacturingPrice = 3.0; SalePrice = 125.0; GrossSales = 273375.0; Discounts = 6652.5; Sales = 266722.5; COGS = 106440.0; Profit = 160282.5; Date = "12/1/18"; MonthName = "December"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Royal Oak"; UnitsSold = "1959"; ManufacturingPrice = 5.0; SalePrice = 350.0; GrossSales = 685650.0; Discounts = 20580.0; Sales = 665070.0; COGS = 254800.0; Profit = 410270.0; Date = "4/1/19"; MonthName = "April"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Royal Oak"; UnitsSold = "2181"; ManufacturingPrice = 5.0; SalePrice = 350.0; GrossSales = 763350.0; Discounts = 30660.0; Sales = 732690.0; COGS = 379600.0; Profit = 353090.0; Date = "5/1/19"; MonthName = "May"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Royal Oak"; UnitsSold = "3559"; ManufacturingPrice = 5.0; SalePrice = 7.0; GrossSales = 24913.0; Discounts = 589.26; Sales = 24323.74; COGS = 7015.0; Profit = 17308.74; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Royal Oak"; UnitsSold = "2205"; ManufacturingPrice = 5.0; SalePrice = 12.0; GrossSales = 26460.0; Discounts = 1960.56; Sales = 24499.44; COGS = 8169.0; Profit = 16330.44; Date = "11/1/19"; MonthName = "November"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "1890"; ManufacturingPrice = 10.0; SalePrice = 350.0; GrossSales = 661500.0; Discounts = 31416.0; Sales = 630084.0; COGS = 388960.0; Profit = 241124.0; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "1296"; ManufacturingPrice = 10.0; SalePrice = 12.0; GrossSales = 15552.0; Discounts = 1655.28; Sales = 13896.72; COGS = 6897.0; Profit = 6999.72; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "775"; ManufacturingPrice = 10.0; SalePrice = 350.0; GrossSales = 271250.0; Discounts = 15267.0; Sales = 255983.0; COGS = 189020.0; Profit = 66963.0; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Burlington"; UnitsSold = "2417"; ManufacturingPrice = 120.0; SalePrice = 125.0; GrossSales = 302125.0; Discounts = 7140.0; Sales = 294985.0; COGS = 114240.0; Profit = 180745.0; Date = "2/1/19"; MonthName = "February"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Burlington"; UnitsSold = "1158"; ManufacturingPrice = 120.0; SalePrice = 125.0; GrossSales = 144750.0; Discounts = 20662.5; Sales = 124087.5; COGS = 330600.0; Profit = 206512.5; Date = "2/1/19"; MonthName = "February"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Burlington"; UnitsSold = "803"; ManufacturingPrice = 120.0; SalePrice = 15.0; GrossSales = 12045.0; Discounts = 1377.0; Sales = 10668.0; COGS = 15300.0; Profit = 4632.0; Date = "5/1/19"; MonthName = "May"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Burlington"; UnitsSold = "3705"; ManufacturingPrice = 120.0; SalePrice = 350.0; GrossSales = 1296750.0; Discounts = 31416.0; Sales = 1265334.0; COGS = 388960.0; Profit = 876374.0; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Burlington"; UnitsSold = "589"; ManufacturingPrice = 120.0; SalePrice = 7.0; GrossSales = 4123.0; Discounts = 629.16; Sales = 3493.84; COGS = 7490.0; Profit = 3996.16; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Burlington"; UnitsSold = "3797"; ManufacturingPrice = 120.0; SalePrice = 300.0; GrossSales = 1139100.0; Discounts = 21978.0; Sales = 1117122.0; COGS = 305250.0; Profit = 811872.0; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Burlington"; UnitsSold = "1321"; ManufacturingPrice = 120.0; SalePrice = 350.0; GrossSales = 462350.0; Discounts = 43596.0; Sales = 418754.0; COGS = 539760.0; Profit = 121006.0; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Mandarin"; UnitsSold = "3999"; ManufacturingPrice = 250.0; SalePrice = 15.0; GrossSales = 59985.0; Discounts = 2559.6; Sales = 57425.4; COGS = 28440.0; Profit = 28985.4; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Mandarin"; UnitsSold = "4256"; ManufacturingPrice = 250.0; SalePrice = 7.0; GrossSales = 29792.0; Discounts = 629.16; Sales = 29162.84; COGS = 7490.0; Profit = 21672.84; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Mandarin"; UnitsSold = "1643"; ManufacturingPrice = 250.0; SalePrice = 300.0; GrossSales = 492900.0; Discounts = 21978.0; Sales = 470922.0; COGS = 305250.0; Profit = 165672.0; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Mandarin"; UnitsSold = "1912"; ManufacturingPrice = 250.0; SalePrice = 20.0; GrossSales = 38240.0; Discounts = 1347.6; Sales = 36892.4; COGS = 11230.0; Profit = 25662.4; Date = "11/1/18"; MonthName = "November"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Mandarin"; UnitsSold = "1610"; ManufacturingPrice = 250.0; SalePrice = 300.0; GrossSales = 483000.0; Discounts = 43848.0; Sales = 439152.0; COGS = 609000.0; Profit = 169848.0; Date = "12/1/18"; MonthName = "December"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Luxe"; UnitsSold = "2160"; ManufacturingPrice = 260.0; SalePrice = 125.0; GrossSales = 270000.0; Discounts = 14906.25; Sales = 255093.75; COGS = 238500.0; Profit = 16593.75; Date = "1/1/19"; MonthName = "January"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Luxe"; UnitsSold = "466"; ManufacturingPrice = 260.0; SalePrice = 350.0; GrossSales = 163100.0; Discounts = 35259.0; Sales = 127841.0; COGS = 436540.0; Profit = 308699.0; Date = "9/1/19"; MonthName = "September"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Luxe"; UnitsSold = "328"; ManufacturingPrice = 260.0; SalePrice = 350.0; GrossSales = 114800.0; Discounts = 15267.0; Sales = 99533.0; COGS = 189020.0; Profit = 89487.0; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Luxe"; UnitsSold = "4099"; ManufacturingPrice = 260.0; SalePrice = 7.0; GrossSales = 28693.0; Discounts = 589.26; Sales = 28103.74; COGS = 7015.0; Profit = 21088.74; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Luxe"; UnitsSold = "990"; ManufacturingPrice = 260.0; SalePrice = 350.0; GrossSales = 346500.0; Discounts = 43596.0; Sales = 302904.0; COGS = 539760.0; Profit = 236856.0; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Royal Oak"; UnitsSold = "1433"; ManufacturingPrice = 5.0; SalePrice = 20.0; GrossSales = 28660.0; Discounts = 2108.4; Sales = 26551.6; COGS = 17570.0; Profit = 8981.6; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "1478"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 22170.0; Discounts = 1978.2; Sales = 20191.8; COGS = 21980.0; Profit = 1788.2; Date = "8/1/19"; MonthName = "August"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "3798"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 56970.0; Discounts = 1568.7; Sales = 55401.3; COGS = 17430.0; Profit = 37971.3; Date = "8/1/19"; MonthName = "August"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "447"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 6705.0; Discounts = 1037.7; Sales = 5667.3; COGS = 11530.0; Profit = 5862.7; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "1711"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 34220.0; Discounts = 2108.4; Sales = 32111.6; COGS = 17570.0; Profit = 14541.6; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Burlington"; UnitsSold = "745"; ManufacturingPrice = 120.0; SalePrice = 20.0; GrossSales = 14900.0; Discounts = 1201.2; Sales = 13698.8; COGS = 10010.0; Profit = 3688.8; Date = "8/1/19"; MonthName = "August"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Burlington"; UnitsSold = "1732"; ManufacturingPrice = 120.0; SalePrice = 7.0; GrossSales = 12124.0; Discounts = 559.86; Sales = 11564.14; COGS = 6665.0; Profit = 4899.14; Date = "11/1/19"; MonthName = "November"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Mandarin"; UnitsSold = "1759"; ManufacturingPrice = 250.0; SalePrice = 15.0; GrossSales = 26385.0; Discounts = 1037.7; Sales = 25347.3; COGS = 11530.0; Profit = 13817.3; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Kensington"; UnitsSold = "338"; ManufacturingPrice = 3.0; SalePrice = 12.0; GrossSales = 4056.0; Discounts = 610.68; Sales = 3445.32; COGS = 2181.0; Profit = 1264.32; Date = "2/1/19"; MonthName = "February"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Kensington"; UnitsSold = "3911"; ManufacturingPrice = 3.0; SalePrice = 12.0; GrossSales = 46932.0; Discounts = 1582.56; Sales = 45349.44; COGS = 5652.0; Profit = 39697.44; Date = "8/1/19"; MonthName = "August"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Kensington"; UnitsSold = "3691"; ManufacturingPrice = 3.0; SalePrice = 20.0; GrossSales = 73820.0; Discounts = 2567.6; Sales = 71252.4; COGS = 18340.0; Profit = 52912.4; Date = "9/1/18"; MonthName = "September"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Royal Oak"; UnitsSold = "4473"; ManufacturingPrice = 5.0; SalePrice = 12.0; GrossSales = 53676.0; Discounts = 1965.6; Sales = 51710.4; COGS = 7020.0; Profit = 44690.4; Date = "1/1/19"; MonthName = "January"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Royal Oak"; UnitsSold = "383"; ManufacturingPrice = 5.0; SalePrice = 12.0; GrossSales = 4596.0; Discounts = 1967.28; Sales = 2628.72; COGS = 7026.0; Profit = 4397.28; Date = "11/1/19"; MonthName = "November"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "3105"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 21735.0; Discounts = 505.19; Sales = 21229.81; COGS = 5155.0; Profit = 16074.81; Date = "9/1/18"; MonthName = "September"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Burlington"; UnitsSold = "1062"; ManufacturingPrice = 120.0; SalePrice = 15.0; GrossSales = 15930.0; Discounts = 1325.1; Sales = 14604.9; COGS = 12620.0; Profit = 1984.9; Date = "5/1/19"; MonthName = "May"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Burlington"; UnitsSold = "4083"; ManufacturingPrice = 120.0; SalePrice = 7.0; GrossSales = 28581.0; Discounts = 556.15; Sales = 28024.85; COGS = 5675.0; Profit = 22349.85; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Burlington"; UnitsSold = "3974"; ManufacturingPrice = 120.0; SalePrice = 7.0; GrossSales = 27818.0; Discounts = 268.03; Sales = 27549.97; COGS = 2735.0; Profit = 24814.97; Date = "11/1/19"; MonthName = "November"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Burlington"; UnitsSold = "3723"; ManufacturingPrice = 120.0; SalePrice = 7.0; GrossSales = 26061.0; Discounts = 775.18; Sales = 25285.82; COGS = 7910.0; Profit = 17375.82; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Mandarin"; UnitsSold = "2435"; ManufacturingPrice = 250.0; SalePrice = 12.0; GrossSales = 29220.0; Discounts = 1460.34; Sales = 27759.66; COGS = 5215.5; Profit = 22544.16; Date = "4/1/19"; MonthName = "April"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Mandarin"; UnitsSold = "1678"; ManufacturingPrice = 250.0; SalePrice = 12.0; GrossSales = 20136.0; Discounts = 1860.6; Sales = 18275.4; COGS = 6645.0; Profit = 11630.4; Date = "9/1/18"; MonthName = "September"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Mandarin"; UnitsSold = "1763"; ManufacturingPrice = 250.0; SalePrice = 7.0; GrossSales = 12341.0; Discounts = 775.18; Sales = 11565.82; COGS = 7910.0; Profit = 3655.82; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Luxe"; UnitsSold = "4473"; ManufacturingPrice = 260.0; SalePrice = 7.0; GrossSales = 31311.0; Discounts = 556.15; Sales = 30754.85; COGS = 5675.0; Profit = 25079.85; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Kensington"; UnitsSold = "1246"; ManufacturingPrice = 3.0; SalePrice = 350.0; GrossSales = 436100.0; Discounts = 43144.5; Sales = 392955.5; COGS = 457860.0; Profit = 64904.5; Date = "3/1/19"; MonthName = "March"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Kensington"; UnitsSold = "1615"; ManufacturingPrice = 3.0; SalePrice = 300.0; GrossSales = 484500.0; Discounts = 9408.0; Sales = 475092.0; COGS = 112000.0; Profit = 363092.0; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Kensington"; UnitsSold = "749"; ManufacturingPrice = 3.0; SalePrice = 300.0; GrossSales = 224700.0; Discounts = 45801.0; Sales = 178899.0; COGS = 545250.0; Profit = 366351.0; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Royal Oak"; UnitsSold = "1318"; ManufacturingPrice = 5.0; SalePrice = 20.0; GrossSales = 26360.0; Discounts = 2766.4; Sales = 23593.6; COGS = 19760.0; Profit = 3833.6; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Royal Oak"; UnitsSold = "2882"; ManufacturingPrice = 5.0; SalePrice = 300.0; GrossSales = 864600.0; Discounts = 45801.0; Sales = 818799.0; COGS = 545250.0; Profit = 273549.0; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Royal Oak"; UnitsSold = "3039"; ManufacturingPrice = 5.0; SalePrice = 125.0; GrossSales = 379875.0; Discounts = 21875.0; Sales = 358000.0; COGS = 300000.0; Profit = 58000.0; Date = "11/1/18"; MonthName = "November"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "2484"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 745200.0; Discounts = 35742.0; Sales = 709458.0; COGS = 425500.0; Profit = 283958.0; Date = "5/1/19"; MonthName = "May"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "3169"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 950700.0; Discounts = 9408.0; Sales = 941292.0; COGS = 112000.0; Profit = 829292.0; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "4080"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 510000.0; Discounts = 30738.75; Sales = 479261.25; COGS = 421560.0; Profit = 57701.25; Date = "7/1/19"; MonthName = "July"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "3943"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 59145.0; Discounts = 2206.05; Sales = 56938.95; COGS = 21010.0; Profit = 35928.95; Date = "8/1/19"; MonthName = "August"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "784"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 11760.0; Discounts = 3077.55; Sales = 8682.45; COGS = 29310.0; Profit = 20627.55; Date = "9/1/18"; MonthName = "September"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "253"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 5060.0; Discounts = 2149.0; Sales = 2911.0; COGS = 15350.0; Profit = 12439.0; Date = "9/1/19"; MonthName = "September"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "1316"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 394800.0; Discounts = 23583.0; Sales = 371217.0; COGS = 280750.0; Profit = 90467.0; Date = "9/1/18"; MonthName = "September"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "808"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 242400.0; Discounts = 29484.0; Sales = 212916.0; COGS = 351000.0; Profit = 138084.0; Date = "11/1/18"; MonthName = "November"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "3295"; ManufacturingPrice = 10.0; SalePrice = 12.0; GrossSales = 39540.0; Discounts = 2320.92; Sales = 37219.08; COGS = 8289.0; Profit = 28930.08; Date = "11/1/18"; MonthName = "November"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "520"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 3640.0; Discounts = 1041.25; Sales = 2598.75; COGS = 10625.0; Profit = 8026.25; Date = "12/1/18"; MonthName = "December"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Burlington"; UnitsSold = "799"; ManufacturingPrice = 120.0; SalePrice = 300.0; GrossSales = 239700.0; Discounts = 34839.0; Sales = 204861.0; COGS = 414750.0; Profit = 209889.0; Date = "7/1/19"; MonthName = "July"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Burlington"; UnitsSold = "3942"; ManufacturingPrice = 120.0; SalePrice = 20.0; GrossSales = 78840.0; Discounts = 852.6; Sales = 77987.4; COGS = 6090.0; Profit = 71897.4; Date = "8/1/19"; MonthName = "August"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Burlington"; UnitsSold = "2498"; ManufacturingPrice = 120.0; SalePrice = 125.0; GrossSales = 312250.0; Discounts = 18261.25; Sales = 293988.75; COGS = 250440.0; Profit = 43548.75; Date = "9/1/19"; MonthName = "September"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Burlington"; UnitsSold = "2517"; ManufacturingPrice = 120.0; SalePrice = 20.0; GrossSales = 50340.0; Discounts = 2766.4; Sales = 47573.6; COGS = 19760.0; Profit = 27813.6; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Burlington"; UnitsSold = "3182"; ManufacturingPrice = 120.0; SalePrice = 20.0; GrossSales = 63640.0; Discounts = 1989.4; Sales = 61650.6; COGS = 14210.0; Profit = 47440.6; Date = "12/1/18"; MonthName = "December"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Burlington"; UnitsSold = "1145"; ManufacturingPrice = 120.0; SalePrice = 300.0; GrossSales = 343500.0; Discounts = 28812.0; Sales = 314688.0; COGS = 343000.0; Profit = 28312.0; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Burlington"; UnitsSold = "895"; ManufacturingPrice = 120.0; SalePrice = 20.0; GrossSales = 17900.0; Discounts = 823.2; Sales = 17076.8; COGS = 5880.0; Profit = 11196.8; Date = "12/1/18"; MonthName = "December"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Mandarin"; UnitsSold = "3814"; ManufacturingPrice = 250.0; SalePrice = 12.0; GrossSales = 45768.0; Discounts = 2725.38; Sales = 43042.62; COGS = 9733.5; Profit = 33309.12; Date = "1/1/19"; MonthName = "January"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Mandarin"; UnitsSold = "1188"; ManufacturingPrice = 250.0; SalePrice = 300.0; GrossSales = 356400.0; Discounts = 20139.0; Sales = 336261.0; COGS = 239750.0; Profit = 96511.0; Date = "2/1/19"; MonthName = "February"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Mandarin"; UnitsSold = "2233"; ManufacturingPrice = 250.0; SalePrice = 300.0; GrossSales = 669900.0; Discounts = 57687.0; Sales = 612213.0; COGS = 686750.0; Profit = 74537.0; Date = "2/1/19"; MonthName = "February"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Luxe"; UnitsSold = "421"; ManufacturingPrice = 260.0; SalePrice = 125.0; GrossSales = 52625.0; Discounts = 14393.75; Sales = 38231.25; COGS = 197400.0; Profit = 159168.75; Date = "5/1/19"; MonthName = "May"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Luxe"; UnitsSold = "269"; ManufacturingPrice = 260.0; SalePrice = 350.0; GrossSales = 94150.0; Discounts = 70462.0; Sales = 23688.0; COGS = 747760.0; Profit = 724072.0; Date = "9/1/19"; MonthName = "September"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Luxe"; UnitsSold = "3766"; ManufacturingPrice = 260.0; SalePrice = 125.0; GrossSales = 470750.0; Discounts = 8697.5; Sales = 462052.5; COGS = 119280.0; Profit = 342772.5; Date = "9/1/18"; MonthName = "September"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Luxe"; UnitsSold = "952"; ManufacturingPrice = 260.0; SalePrice = 20.0; GrossSales = 19040.0; Discounts = 1565.2; Sales = 17474.8; COGS = 11180.0; Profit = 6294.8; Date = "11/1/19"; MonthName = "November"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Luxe"; UnitsSold = "2964"; ManufacturingPrice = 260.0; SalePrice = 300.0; GrossSales = 889200.0; Discounts = 28812.0; Sales = 860388.0; COGS = 343000.0; Profit = 517388.0; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Royal Oak"; UnitsSold = "1505"; ManufacturingPrice = 5.0; SalePrice = 7.0; GrossSales = 10535.0; Discounts = 273.28; Sales = 10261.72; COGS = 2440.0; Profit = 7821.72; Date = "2/1/19"; MonthName = "February"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Royal Oak"; UnitsSold = "1678"; ManufacturingPrice = 5.0; SalePrice = 20.0; GrossSales = 33560.0; Discounts = 2051.2; Sales = 31508.8; COGS = 12820.0; Profit = 18688.8; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "4249"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 29743.0; Discounts = 143.92; Sales = 29599.08; COGS = 1285.0; Profit = 28314.08; Date = "5/1/19"; MonthName = "May"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Luxe"; UnitsSold = "1677"; ManufacturingPrice = 260.0; SalePrice = 20.0; GrossSales = 33540.0; Discounts = 2051.2; Sales = 31488.8; COGS = 12820.0; Profit = 18668.8; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Kensington"; UnitsSold = "3051"; ManufacturingPrice = 3.0; SalePrice = 125.0; GrossSales = 381375.0; Discounts = 15400.0; Sales = 365975.0; COGS = 184800.0; Profit = 181175.0; Date = "8/1/19"; MonthName = "August"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Kensington"; UnitsSold = "3372"; ManufacturingPrice = 3.0; SalePrice = 15.0; GrossSales = 50580.0; Discounts = 588.0; Sales = 49992.0; COGS = 4900.0; Profit = 45092.0; Date = "11/1/19"; MonthName = "November"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Kensington"; UnitsSold = "1686"; ManufacturingPrice = 3.0; SalePrice = 350.0; GrossSales = 590100.0; Discounts = 38136.0; Sales = 551964.0; COGS = 354120.0; Profit = 197844.0; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Royal Oak"; UnitsSold = "3086"; ManufacturingPrice = 5.0; SalePrice = 15.0; GrossSales = 46290.0; Discounts = 3001.2; Sales = 43288.8; COGS = 25010.0; Profit = 18278.8; Date = "3/1/19"; MonthName = "March"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Royal Oak"; UnitsSold = "4150"; ManufacturingPrice = 5.0; SalePrice = 20.0; GrossSales = 83000.0; Discounts = 1132.8; Sales = 81867.2; COGS = 7080.0; Profit = 74787.2; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Royal Oak"; UnitsSold = "3027"; ManufacturingPrice = 5.0; SalePrice = 20.0; GrossSales = 60540.0; Discounts = 1032.0; Sales = 59508.0; COGS = 6450.0; Profit = 53058.0; Date = "7/1/19"; MonthName = "July"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Royal Oak"; UnitsSold = "4359"; ManufacturingPrice = 5.0; SalePrice = 300.0; GrossSales = 1307700.0; Discounts = 37488.0; Sales = 1270212.0; COGS = 390500.0; Profit = 879712.0; Date = "8/1/19"; MonthName = "August"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Royal Oak"; UnitsSold = "3628"; ManufacturingPrice = 5.0; SalePrice = 300.0; GrossSales = 1088400.0; Discounts = 30792.0; Sales = 1057608.0; COGS = 320750.0; Profit = 736858.0; Date = "9/1/18"; MonthName = "September"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Royal Oak"; UnitsSold = "1589"; ManufacturingPrice = 5.0; SalePrice = 15.0; GrossSales = 23835.0; Discounts = 853.2; Sales = 22981.8; COGS = 7110.0; Profit = 15871.8; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "2679"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 334875.0; Discounts = 11140.0; Sales = 323735.0; COGS = 133680.0; Profit = 190055.0; Date = "3/1/19"; MonthName = "March"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "3401"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 23807.0; Discounts = 705.04; Sales = 23101.96; COGS = 6295.0; Profit = 16806.96; Date = "4/1/19"; MonthName = "April"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "2815"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 19705.0; Discounts = 613.2; Sales = 19091.8; COGS = 5475.0; Profit = 13616.8; Date = "5/1/19"; MonthName = "May"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "2964"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 59280.0; Discounts = 2185.6; Sales = 57094.4; COGS = 13660.0; Profit = 43434.4; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "4173"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 1251900.0; Discounts = 59040.0; Sales = 1192860.0; COGS = 615000.0; Profit = 577860.0; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "1157"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 8099.0; Discounts = 379.68; Sales = 7719.32; COGS = 3390.0; Profit = 4329.32; Date = "8/1/19"; MonthName = "August"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "3065"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 21455.0; Discounts = 894.88; Sales = 20560.12; COGS = 7990.0; Profit = 12570.12; Date = "8/1/19"; MonthName = "August"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "1962"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 13734.0; Discounts = 1349.04; Sales = 12384.96; COGS = 12045.0; Profit = 339.96; Date = "9/1/18"; MonthName = "September"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "4080"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 81600.0; Discounts = 3094.4; Sales = 78505.6; COGS = 19340.0; Profit = 59165.6; Date = "9/1/19"; MonthName = "September"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "1713"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 34260.0; Discounts = 4788.8; Sales = 29471.2; COGS = 29930.0; Profit = 458.8; Date = "9/1/19"; MonthName = "September"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "2795"; ManufacturingPrice = 10.0; SalePrice = 350.0; GrossSales = 978250.0; Discounts = 60088.0; Sales = 918162.0; COGS = 557960.0; Profit = 360202.0; Date = "11/1/18"; MonthName = "November"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "4082"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 28574.0; Discounts = 1089.76; Sales = 27484.24; COGS = 9730.0; Profit = 17754.24; Date = "12/1/18"; MonthName = "December"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "1691"; ManufacturingPrice = 10.0; SalePrice = 350.0; GrossSales = 591850.0; Discounts = 38136.0; Sales = 553714.0; COGS = 354120.0; Profit = 199594.0; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Burlington"; UnitsSold = "2305"; ManufacturingPrice = 120.0; SalePrice = 12.0; GrossSales = 27660.0; Discounts = 574.08; Sales = 27085.92; COGS = 1794.0; Profit = 25291.92; Date = "3/1/19"; MonthName = "March"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Burlington"; UnitsSold = "3401"; ManufacturingPrice = 120.0; SalePrice = 7.0; GrossSales = 23807.0; Discounts = 1627.92; Sales = 22179.08; COGS = 14535.0; Profit = 7644.08; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Burlington"; UnitsSold = "2288"; ManufacturingPrice = 120.0; SalePrice = 7.0; GrossSales = 16016.0; Discounts = 1309.28; Sales = 14706.72; COGS = 11690.0; Profit = 3016.72; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Burlington"; UnitsSold = "2399"; ManufacturingPrice = 120.0; SalePrice = 300.0; GrossSales = 719700.0; Discounts = 9264.0; Sales = 710436.0; COGS = 96500.0; Profit = 613936.0; Date = "11/1/18"; MonthName = "November"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Burlington"; UnitsSold = "4086"; ManufacturingPrice = 120.0; SalePrice = 300.0; GrossSales = 1225800.0; Discounts = 15240.0; Sales = 1210560.0; COGS = 158750.0; Profit = 1051810.0; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Mandarin"; UnitsSold = "2651"; ManufacturingPrice = 250.0; SalePrice = 350.0; GrossSales = 927850.0; Discounts = 16086.0; Sales = 911764.0; COGS = 149370.0; Profit = 762394.0; Date = "4/1/19"; MonthName = "April"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Mandarin"; UnitsSold = "3971"; ManufacturingPrice = 250.0; SalePrice = 7.0; GrossSales = 27797.0; Discounts = 1309.28; Sales = 26487.72; COGS = 11690.0; Profit = 14797.72; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Mandarin"; UnitsSold = "2512"; ManufacturingPrice = 250.0; SalePrice = 350.0; GrossSales = 879200.0; Discounts = 10668.0; Sales = 868532.0; COGS = 99060.0; Profit = 769472.0; Date = "8/1/19"; MonthName = "August"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Mandarin"; UnitsSold = "2745"; ManufacturingPrice = 250.0; SalePrice = 350.0; GrossSales = 960750.0; Discounts = 11816.0; Sales = 948934.0; COGS = 109720.0; Profit = 839214.0; Date = "8/1/19"; MonthName = "August"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Mandarin"; UnitsSold = "1903"; ManufacturingPrice = 250.0; SalePrice = 300.0; GrossSales = 570900.0; Discounts = 51216.0; Sales = 519684.0; COGS = 533500.0; Profit = 13816.0; Date = "9/1/19"; MonthName = "September"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Mandarin"; UnitsSold = "647"; ManufacturingPrice = 250.0; SalePrice = 300.0; GrossSales = 194100.0; Discounts = 19392.0; Sales = 174708.0; COGS = 202000.0; Profit = 27292.0; Date = "12/1/18"; MonthName = "December"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Luxe"; UnitsSold = "2914"; ManufacturingPrice = 260.0; SalePrice = 20.0; GrossSales = 58280.0; Discounts = 1132.8; Sales = 57147.2; COGS = 7080.0; Profit = 50067.2; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Luxe"; UnitsSold = "1889"; ManufacturingPrice = 260.0; SalePrice = 7.0; GrossSales = 13223.0; Discounts = 1627.92; Sales = 11595.08; COGS = 14535.0; Profit = 2939.92; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Luxe"; UnitsSold = "1466"; ManufacturingPrice = 260.0; SalePrice = 20.0; GrossSales = 29320.0; Discounts = 2185.6; Sales = 27134.4; COGS = 13660.0; Profit = 13474.4; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Luxe"; UnitsSold = "887"; ManufacturingPrice = 260.0; SalePrice = 300.0; GrossSales = 266100.0; Discounts = 59040.0; Sales = 207060.0; COGS = 615000.0; Profit = 407940.0; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Luxe"; UnitsSold = "395"; ManufacturingPrice = 260.0; SalePrice = 20.0; GrossSales = 7900.0; Discounts = 2432.0; Sales = 5468.0; COGS = 15200.0; Profit = 9732.0; Date = "11/1/19"; MonthName = "November"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Luxe"; UnitsSold = "1693"; ManufacturingPrice = 260.0; SalePrice = 15.0; GrossSales = 25395.0; Discounts = 853.2; Sales = 24541.8; COGS = 7110.0; Profit = 17431.8; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Luxe"; UnitsSold = "2459"; ManufacturingPrice = 260.0; SalePrice = 12.0; GrossSales = 29508.0; Discounts = 1320.0; Sales = 28188.0; COGS = 4125.0; Profit = 24063.0; Date = "12/1/18"; MonthName = "December"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Luxe"; UnitsSold = "2649"; ManufacturingPrice = 260.0; SalePrice = 300.0; GrossSales = 794700.0; Discounts = 15240.0; Sales = 779460.0; COGS = 158750.0; Profit = 620710.0; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Mandarin"; UnitsSold = "3608"; ManufacturingPrice = 250.0; SalePrice = 20.0; GrossSales = 72160.0; Discounts = 698.4; Sales = 71461.6; COGS = 4365.0; Profit = 67096.6; Date = "7/1/19"; MonthName = "July"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Kensington"; UnitsSold = "1073"; ManufacturingPrice = 3.0; SalePrice = 300.0; GrossSales = 321900.0; Discounts = 29538.0; Sales = 292362.0; COGS = 273500.0; Profit = 18862.0; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Kensington"; UnitsSold = "1754"; ManufacturingPrice = 3.0; SalePrice = 12.0; GrossSales = 21048.0; Discounts = 396.36; Sales = 20651.64; COGS = 1101.0; Profit = 19550.64; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Royal Oak"; UnitsSold = "2167"; ManufacturingPrice = 5.0; SalePrice = 300.0; GrossSales = 650100.0; Discounts = 102667.5; Sales = 547432.5; COGS = 950625.0; Profit = 403192.5; Date = "4/1/19"; MonthName = "April"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Royal Oak"; UnitsSold = "1319"; ManufacturingPrice = 5.0; SalePrice = 350.0; GrossSales = 461650.0; Discounts = 52479.0; Sales = 409171.0; COGS = 433160.0; Profit = 23989.0; Date = "5/1/19"; MonthName = "May"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Royal Oak"; UnitsSold = "1679"; ManufacturingPrice = 5.0; SalePrice = 300.0; GrossSales = 503700.0; Discounts = 8694.0; Sales = 495006.0; COGS = 80500.0; Profit = 414506.0; Date = "9/1/18"; MonthName = "September"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Royal Oak"; UnitsSold = "1252"; ManufacturingPrice = 5.0; SalePrice = 12.0; GrossSales = 15024.0; Discounts = 2506.68; Sales = 12517.32; COGS = 6963.0; Profit = 5554.32; Date = "11/1/19"; MonthName = "November"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Royal Oak"; UnitsSold = "3493"; ManufacturingPrice = 5.0; SalePrice = 125.0; GrossSales = 436625.0; Discounts = 20891.25; Sales = 415733.75; COGS = 222840.0; Profit = 192893.75; Date = "11/1/18"; MonthName = "November"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Royal Oak"; UnitsSold = "1697"; ManufacturingPrice = 5.0; SalePrice = 7.0; GrossSales = 11879.0; Discounts = 1014.93; Sales = 10864.07; COGS = 8055.0; Profit = 2809.07; Date = "12/1/18"; MonthName = "December"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Royal Oak"; UnitsSold = "1156"; ManufacturingPrice = 5.0; SalePrice = 125.0; GrossSales = 144500.0; Discounts = 31466.25; Sales = 113033.75; COGS = 335640.0; Profit = 222606.25; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Royal Oak"; UnitsSold = "726"; ManufacturingPrice = 5.0; SalePrice = 300.0; GrossSales = 217800.0; Discounts = 9018.0; Sales = 208782.0; COGS = 83500.0; Profit = 125282.0; Date = "12/1/18"; MonthName = "December"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "1153"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 345900.0; Discounts = 69255.0; Sales = 276645.0; COGS = 641250.0; Profit = 364605.0; Date = "1/1/19"; MonthName = "January"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "2720"; ManufacturingPrice = 10.0; SalePrice = 350.0; GrossSales = 952000.0; Discounts = 76135.5; Sales = 875864.5; COGS = 628420.0; Profit = 247444.5; Date = "1/1/19"; MonthName = "January"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "3658"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 54870.0; Discounts = 4961.25; Sales = 49908.75; COGS = 36750.0; Profit = 13158.75; Date = "4/1/19"; MonthName = "April"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "2950"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 885000.0; Discounts = 29538.0; Sales = 855462.0; COGS = 273500.0; Profit = 581962.0; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "1821"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 27315.0; Discounts = 1656.45; Sales = 25658.55; COGS = 12270.0; Profit = 13388.55; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "4174"; ManufacturingPrice = 10.0; SalePrice = 12.0; GrossSales = 50088.0; Discounts = 396.36; Sales = 49691.64; COGS = 1101.0; Profit = 48590.64; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "1127"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 338100.0; Discounts = 35748.0; Sales = 302352.0; COGS = 331000.0; Profit = 28648.0; Date = "11/1/19"; MonthName = "November"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "2209"; ManufacturingPrice = 10.0; SalePrice = 12.0; GrossSales = 26508.0; Discounts = 1917.0; Sales = 24591.0; COGS = 5325.0; Profit = 19266.0; Date = "11/1/18"; MonthName = "November"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "862"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 107750.0; Discounts = 31466.25; Sales = 76283.75; COGS = 335640.0; Profit = 259356.25; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Burlington"; UnitsSold = "3805"; ManufacturingPrice = 120.0; SalePrice = 15.0; GrossSales = 57075.0; Discounts = 330.75; Sales = 56744.25; COGS = 2450.0; Profit = 54294.25; Date = "5/1/19"; MonthName = "May"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Burlington"; UnitsSold = "1415"; ManufacturingPrice = 120.0; SalePrice = 300.0; GrossSales = 424500.0; Discounts = 102424.5; Sales = 322075.5; COGS = 948375.0; Profit = 626299.5; Date = "7/1/19"; MonthName = "July"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Burlington"; UnitsSold = "2231"; ManufacturingPrice = 120.0; SalePrice = 350.0; GrossSales = 780850.0; Discounts = 41170.5; Sales = 739679.5; COGS = 339820.0; Profit = 399859.5; Date = "7/1/19"; MonthName = "July"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Burlington"; UnitsSold = "3649"; ManufacturingPrice = 120.0; SalePrice = 125.0; GrossSales = 456125.0; Discounts = 6378.75; Sales = 449746.25; COGS = 68040.0; Profit = 381706.25; Date = "9/1/19"; MonthName = "September"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Burlington"; UnitsSold = "2948"; ManufacturingPrice = 120.0; SalePrice = 125.0; GrossSales = 368500.0; Discounts = 23737.5; Sales = 344762.5; COGS = 253200.0; Profit = 91562.5; Date = "9/1/19"; MonthName = "September"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Burlington"; UnitsSold = "3395"; ManufacturingPrice = 120.0; SalePrice = 350.0; GrossSales = 1188250.0; Discounts = 39973.5; Sales = 1148276.5; COGS = 329940.0; Profit = 818336.5; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Mandarin"; UnitsSold = "2650"; ManufacturingPrice = 250.0; SalePrice = 12.0; GrossSales = 31800.0; Discounts = 2112.48; Sales = 29687.52; COGS = 5868.0; Profit = 23819.52; Date = "1/1/19"; MonthName = "January"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Mandarin"; UnitsSold = "585"; ManufacturingPrice = 250.0; SalePrice = 300.0; GrossSales = 175500.0; Discounts = 71793.0; Sales = 103707.0; COGS = 664750.0; Profit = 561043.0; Date = "2/1/19"; MonthName = "February"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Mandarin"; UnitsSold = "1316"; ManufacturingPrice = 250.0; SalePrice = 350.0; GrossSales = 460600.0; Discounts = 42572.25; Sales = 418027.75; COGS = 351390.0; Profit = 66637.75; Date = "4/1/19"; MonthName = "April"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Mandarin"; UnitsSold = "4459"; ManufacturingPrice = 250.0; SalePrice = 12.0; GrossSales = 53508.0; Discounts = 950.4; Sales = 52557.6; COGS = 2640.0; Profit = 49917.6; Date = "5/1/19"; MonthName = "May"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Mandarin"; UnitsSold = "2711"; ManufacturingPrice = 250.0; SalePrice = 300.0; GrossSales = 813300.0; Discounts = 50409.0; Sales = 762891.0; COGS = 466750.0; Profit = 296141.0; Date = "9/1/19"; MonthName = "September"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Mandarin"; UnitsSold = "2621"; ManufacturingPrice = 250.0; SalePrice = 12.0; GrossSales = 31452.0; Discounts = 2412.72; Sales = 29039.28; COGS = 6702.0; Profit = 22337.28; Date = "9/1/18"; MonthName = "September"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Mandarin"; UnitsSold = "3613"; ManufacturingPrice = 250.0; SalePrice = 15.0; GrossSales = 54195.0; Discounts = 1656.45; Sales = 52538.55; COGS = 12270.0; Profit = 40268.55; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Mandarin"; UnitsSold = "1847"; ManufacturingPrice = 250.0; SalePrice = 125.0; GrossSales = 230875.0; Discounts = 9866.25; Sales = 221008.75; COGS = 105240.0; Profit = 115768.75; Date = "11/1/19"; MonthName = "November"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Luxe"; UnitsSold = "2996"; ManufacturingPrice = 260.0; SalePrice = 350.0; GrossSales = 1048600.0; Discounts = 65236.5; Sales = 983363.5; COGS = 538460.0; Profit = 444903.5; Date = "9/1/19"; MonthName = "September"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Luxe"; UnitsSold = "2838"; ManufacturingPrice = 260.0; SalePrice = 350.0; GrossSales = 993300.0; Discounts = 39973.5; Sales = 953326.5; COGS = 329940.0; Profit = 623386.5; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Luxe"; UnitsSold = "1302"; ManufacturingPrice = 260.0; SalePrice = 15.0; GrossSales = 19530.0; Discounts = 1309.5; Sales = 18220.5; COGS = 9700.0; Profit = 8520.5; Date = "11/1/18"; MonthName = "November"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Luxe"; UnitsSold = "1536"; ManufacturingPrice = 260.0; SalePrice = 20.0; GrossSales = 30720.0; Discounts = 3049.2; Sales = 27670.8; COGS = 16940.0; Profit = 10730.8; Date = "11/1/19"; MonthName = "November"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Kensington"; UnitsSold = "1291"; ManufacturingPrice = 3.0; SalePrice = 20.0; GrossSales = 25820.0; Discounts = 1193.4; Sales = 24626.6; COGS = 6630.0; Profit = 17996.6; Date = "5/1/19"; MonthName = "May"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Kensington"; UnitsSold = "1213"; ManufacturingPrice = 3.0; SalePrice = 7.0; GrossSales = 8491.0; Discounts = 515.97; Sales = 7975.03; COGS = 4095.0; Profit = 3880.03; Date = "7/1/19"; MonthName = "July"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Kensington"; UnitsSold = "2370"; ManufacturingPrice = 3.0; SalePrice = 12.0; GrossSales = 28440.0; Discounts = 1706.4; Sales = 26733.6; COGS = 4740.0; Profit = 21993.6; Date = "9/1/19"; MonthName = "September"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Kensington"; UnitsSold = "1979"; ManufacturingPrice = 3.0; SalePrice = 7.0; GrossSales = 13853.0; Discounts = 328.23; Sales = 13524.77; COGS = 2605.0; Profit = 10919.77; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "2879"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 57580.0; Discounts = 1751.4; Sales = 55828.6; COGS = 9730.0; Profit = 46098.6; Date = "3/1/19"; MonthName = "March"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "1707"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 34140.0; Discounts = 1868.4; Sales = 32271.6; COGS = 10380.0; Profit = 21891.6; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "2933"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 20531.0; Discounts = 226.8; Sales = 20304.2; COGS = 1800.0; Profit = 18504.2; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Burlington"; UnitsSold = "1014"; ManufacturingPrice = 120.0; SalePrice = 12.0; GrossSales = 12168.0; Discounts = 2124.36; Sales = 10043.64; COGS = 5901.0; Profit = 4142.64; Date = "3/1/19"; MonthName = "March"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Burlington"; UnitsSold = "693"; ManufacturingPrice = 120.0; SalePrice = 15.0; GrossSales = 10395.0; Discounts = 3547.8; Sales = 6847.2; COGS = 26280.0; Profit = 19432.8; Date = "4/1/19"; MonthName = "April"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Mandarin"; UnitsSold = "3741"; ManufacturingPrice = 250.0; SalePrice = 7.0; GrossSales = 26187.0; Discounts = 226.8; Sales = 25960.2; COGS = 1800.0; Profit = 24160.2; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Mandarin"; UnitsSold = "3116"; ManufacturingPrice = 250.0; SalePrice = 20.0; GrossSales = 62320.0; Discounts = 4827.6; Sales = 57492.4; COGS = 26820.0; Profit = 30672.4; Date = "11/1/18"; MonthName = "November"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Mandarin"; UnitsSold = "3995"; ManufacturingPrice = 250.0; SalePrice = 7.0; GrossSales = 27965.0; Discounts = 328.23; Sales = 27636.77; COGS = 2605.0; Profit = 25031.77; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Luxe"; UnitsSold = "953"; ManufacturingPrice = 260.0; SalePrice = 20.0; GrossSales = 19060.0; Discounts = 1868.4; Sales = 17191.6; COGS = 10380.0; Profit = 6811.6; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Luxe"; UnitsSold = "2530"; ManufacturingPrice = 260.0; SalePrice = 15.0; GrossSales = 37950.0; Discounts = 2201.18; Sales = 35748.82; COGS = 16305.0; Profit = 19443.82; Date = "7/1/19"; MonthName = "July"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Luxe"; UnitsSold = "2565"; ManufacturingPrice = 260.0; SalePrice = 12.0; GrossSales = 30780.0; Discounts = 330.48; Sales = 30449.52; COGS = 918.0; Profit = 29531.52; Date = "12/1/18"; MonthName = "December"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Kensington"; UnitsSold = "4297"; ManufacturingPrice = 3.0; SalePrice = 12.0; GrossSales = 51564.0; Discounts = 463.2; Sales = 51100.8; COGS = 1158.0; Profit = 49942.8; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Royal Oak"; UnitsSold = "2871"; ManufacturingPrice = 5.0; SalePrice = 7.0; GrossSales = 20097.0; Discounts = 1629.6; Sales = 18467.4; COGS = 11640.0; Profit = 6827.4; Date = "9/1/19"; MonthName = "September"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "3537"; ManufacturingPrice = 10.0; SalePrice = 12.0; GrossSales = 42444.0; Discounts = 463.2; Sales = 41980.8; COGS = 1158.0; Profit = 40822.8; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Kensington"; UnitsSold = "1598"; ManufacturingPrice = 3.0; SalePrice = 125.0; GrossSales = 199750.0; Discounts = 43068.75; Sales = 156681.25; COGS = 413460.0; Profit = 256778.75; Date = "4/1/19"; MonthName = "April"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Kensington"; UnitsSold = "2616"; ManufacturingPrice = 3.0; SalePrice = 125.0; GrossSales = 327000.0; Discounts = 18525.0; Sales = 308475.0; COGS = 177840.0; Profit = 130635.0; Date = "12/1/18"; MonthName = "December"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Royal Oak"; UnitsSold = "2836"; ManufacturingPrice = 5.0; SalePrice = 350.0; GrossSales = 992600.0; Discounts = 80955.0; Sales = 911645.0; COGS = 601380.0; Profit = 310265.0; Date = "5/1/19"; MonthName = "May"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Royal Oak"; UnitsSold = "4023"; ManufacturingPrice = 5.0; SalePrice = 125.0; GrossSales = 502875.0; Discounts = 22550.0; Sales = 480325.0; COGS = 216480.0; Profit = 263845.0; Date = "11/1/18"; MonthName = "November"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Royal Oak"; UnitsSold = "3994"; ManufacturingPrice = 5.0; SalePrice = 15.0; GrossSales = 59910.0; Discounts = 3108.0; Sales = 56802.0; COGS = 20720.0; Profit = 36082.0; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "2928"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 58560.0; Discounts = 3908.0; Sales = 54652.0; COGS = 19540.0; Profit = 35112.0; Date = "3/1/19"; MonthName = "March"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "2912"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 873600.0; Discounts = 17730.0; Sales = 855870.0; COGS = 147750.0; Profit = 708120.0; Date = "5/1/19"; MonthName = "May"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "3671"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 55065.0; Discounts = 3250.5; Sales = 51814.5; COGS = 21670.0; Profit = 30144.5; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "2778"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 55560.0; Discounts = 482.0; Sales = 55078.0; COGS = 2410.0; Profit = 52668.0; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Burlington"; UnitsSold = "405"; ManufacturingPrice = 120.0; SalePrice = 15.0; GrossSales = 6075.0; Discounts = 1021.5; Sales = 5053.5; COGS = 6810.0; Profit = 1756.5; Date = "1/1/19"; MonthName = "January"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Burlington"; UnitsSold = "2013"; ManufacturingPrice = 120.0; SalePrice = 15.0; GrossSales = 30195.0; Discounts = 765.0; Sales = 29430.0; COGS = 5100.0; Profit = 24330.0; Date = "4/1/19"; MonthName = "April"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Burlington"; UnitsSold = "2634"; ManufacturingPrice = 120.0; SalePrice = 15.0; GrossSales = 39510.0; Discounts = 1185.0; Sales = 38325.0; COGS = 7900.0; Profit = 30425.0; Date = "5/1/19"; MonthName = "May"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Burlington"; UnitsSold = "4166"; ManufacturingPrice = 120.0; SalePrice = 350.0; GrossSales = 1458100.0; Discounts = 22365.0; Sales = 1435735.0; COGS = 166140.0; Profit = 1269595.0; Date = "7/1/19"; MonthName = "July"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Burlington"; UnitsSold = "355"; ManufacturingPrice = 120.0; SalePrice = 125.0; GrossSales = 44375.0; Discounts = 19950.0; Sales = 24425.0; COGS = 191520.0; Profit = 167095.0; Date = "9/1/19"; MonthName = "September"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Burlington"; UnitsSold = "2382"; ManufacturingPrice = 120.0; SalePrice = 300.0; GrossSales = 714600.0; Discounts = 68820.0; Sales = 645780.0; COGS = 573500.0; Profit = 72280.0; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Burlington"; UnitsSold = "4170"; ManufacturingPrice = 120.0; SalePrice = 20.0; GrossSales = 83400.0; Discounts = 482.0; Sales = 82918.0; COGS = 2410.0; Profit = 80508.0; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Burlington"; UnitsSold = "892"; ManufacturingPrice = 120.0; SalePrice = 7.0; GrossSales = 6244.0; Discounts = 1865.5; Sales = 4378.5; COGS = 13325.0; Profit = 8946.5; Date = "11/1/19"; MonthName = "November"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Burlington"; UnitsSold = "2200"; ManufacturingPrice = 120.0; SalePrice = 125.0; GrossSales = 275000.0; Discounts = 23950.0; Sales = 251050.0; COGS = 229920.0; Profit = 21130.0; Date = "12/1/18"; MonthName = "December"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Burlington"; UnitsSold = "3389"; ManufacturingPrice = 120.0; SalePrice = 300.0; GrossSales = 1016700.0; Discounts = 25590.0; Sales = 991110.0; COGS = 213250.0; Profit = 777860.0; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Mandarin"; UnitsSold = "2990"; ManufacturingPrice = 250.0; SalePrice = 125.0; GrossSales = 373750.0; Discounts = 4262.5; Sales = 369487.5; COGS = 40920.0; Profit = 328567.5; Date = "5/1/19"; MonthName = "May"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Mandarin"; UnitsSold = "4013"; ManufacturingPrice = 250.0; SalePrice = 15.0; GrossSales = 60195.0; Discounts = 961.5; Sales = 59233.5; COGS = 6410.0; Profit = 52823.5; Date = "7/1/19"; MonthName = "July"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Mandarin"; UnitsSold = "739"; ManufacturingPrice = 250.0; SalePrice = 350.0; GrossSales = 258650.0; Discounts = 98245.0; Sales = 160405.0; COGS = 729820.0; Profit = 569415.0; Date = "8/1/19"; MonthName = "August"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Mandarin"; UnitsSold = "1989"; ManufacturingPrice = 250.0; SalePrice = 300.0; GrossSales = 596700.0; Discounts = 12960.0; Sales = 583740.0; COGS = 108000.0; Profit = 475740.0; Date = "9/1/19"; MonthName = "September"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Mandarin"; UnitsSold = "2991"; ManufacturingPrice = 250.0; SalePrice = 300.0; GrossSales = 897300.0; Discounts = 68820.0; Sales = 828480.0; COGS = 573500.0; Profit = 254980.0; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Mandarin"; UnitsSold = "4237"; ManufacturingPrice = 250.0; SalePrice = 15.0; GrossSales = 63555.0; Discounts = 3250.5; Sales = 60304.5; COGS = 21670.0; Profit = 38634.5; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Mandarin"; UnitsSold = "1442"; ManufacturingPrice = 250.0; SalePrice = 125.0; GrossSales = 180250.0; Discounts = 31612.5; Sales = 148637.5; COGS = 303480.0; Profit = 154842.5; Date = "11/1/19"; MonthName = "November"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Mandarin"; UnitsSold = "2712"; ManufacturingPrice = 250.0; SalePrice = 350.0; GrossSales = 949200.0; Discounts = 65450.0; Sales = 883750.0; COGS = 486200.0; Profit = 397550.0; Date = "12/1/18"; MonthName = "December"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Luxe"; UnitsSold = "1508"; ManufacturingPrice = 260.0; SalePrice = 125.0; GrossSales = 188500.0; Discounts = 7237.5; Sales = 181262.5; COGS = 69480.0; Profit = 111782.5; Date = "1/1/19"; MonthName = "January"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Luxe"; UnitsSold = "4245"; ManufacturingPrice = 260.0; SalePrice = 350.0; GrossSales = 1485750.0; Discounts = 78400.0; Sales = 1407350.0; COGS = 582400.0; Profit = 824950.0; Date = "2/1/19"; MonthName = "February"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Luxe"; UnitsSold = "2630"; ManufacturingPrice = 260.0; SalePrice = 300.0; GrossSales = 789000.0; Discounts = 89790.0; Sales = 699210.0; COGS = 748250.0; Profit = 49040.0; Date = "3/1/19"; MonthName = "March"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Luxe"; UnitsSold = "1182"; ManufacturingPrice = 260.0; SalePrice = 12.0; GrossSales = 14184.0; Discounts = 4224.6; Sales = 9959.4; COGS = 10561.5; Profit = 602.1; Date = "4/1/19"; MonthName = "April"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Luxe"; UnitsSold = "1221"; ManufacturingPrice = 260.0; SalePrice = 20.0; GrossSales = 24420.0; Discounts = 4078.0; Sales = 20342.0; COGS = 20390.0; Profit = 48.0; Date = "5/1/19"; MonthName = "May"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Luxe"; UnitsSold = "963"; ManufacturingPrice = 260.0; SalePrice = 12.0; GrossSales = 11556.0; Discounts = 3088.8; Sales = 8467.2; COGS = 7722.0; Profit = 745.2; Date = "8/1/19"; MonthName = "August"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Luxe"; UnitsSold = "3243"; ManufacturingPrice = 260.0; SalePrice = 350.0; GrossSales = 1135050.0; Discounts = 24745.0; Sales = 1110305.0; COGS = 183820.0; Profit = 926485.0; Date = "9/1/19"; MonthName = "September"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Luxe"; UnitsSold = "1120"; ManufacturingPrice = 260.0; SalePrice = 15.0; GrossSales = 16800.0; Discounts = 3108.0; Sales = 13692.0; COGS = 20720.0; Profit = 7028.0; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Luxe"; UnitsSold = "1174"; ManufacturingPrice = 260.0; SalePrice = 300.0; GrossSales = 352200.0; Discounts = 25590.0; Sales = 326610.0; COGS = 213250.0; Profit = 113360.0; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Kensington"; UnitsSold = "2541"; ManufacturingPrice = 3.0; SalePrice = 12.0; GrossSales = 30492.0; Discounts = 1581.36; Sales = 28910.64; COGS = 3594.0; Profit = 25316.64; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "3246"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 22722.0; Discounts = 1949.64; Sales = 20772.36; COGS = 12660.0; Profit = 8112.36; Date = "4/1/19"; MonthName = "April"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "1531"; ManufacturingPrice = 10.0; SalePrice = 12.0; GrossSales = 18372.0; Discounts = 1581.36; Sales = 16790.64; COGS = 3594.0; Profit = 13196.64; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Burlington"; UnitsSold = "2526"; ManufacturingPrice = 120.0; SalePrice = 15.0; GrossSales = 37890.0; Discounts = 633.6; Sales = 37256.4; COGS = 3840.0; Profit = 33416.4; Date = "1/1/19"; MonthName = "January"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Burlington"; UnitsSold = "1136"; ManufacturingPrice = 120.0; SalePrice = 12.0; GrossSales = 13632.0; Discounts = 623.04; Sales = 13008.96; COGS = 1416.0; Profit = 11592.96; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Mandarin"; UnitsSold = "1983"; ManufacturingPrice = 250.0; SalePrice = 7.0; GrossSales = 13881.0; Discounts = 1215.83; Sales = 12665.17; COGS = 7895.0; Profit = 4770.17; Date = "3/1/19"; MonthName = "March"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Mandarin"; UnitsSold = "3259"; ManufacturingPrice = 250.0; SalePrice = 12.0; GrossSales = 39108.0; Discounts = 1326.6; Sales = 37781.4; COGS = 3015.0; Profit = 34766.4; Date = "9/1/18"; MonthName = "September"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Luxe"; UnitsSold = "3267"; ManufacturingPrice = 260.0; SalePrice = 15.0; GrossSales = 49005.0; Discounts = 5279.17; Sales = 43725.82; COGS = 31995.0; Profit = 11730.82; Date = "7/1/19"; MonthName = "July"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Luxe"; UnitsSold = "2454"; ManufacturingPrice = 260.0; SalePrice = 12.0; GrossSales = 29448.0; Discounts = 623.04; Sales = 28824.96; COGS = 1416.0; Profit = 27408.96; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Kensington"; UnitsSold = "2643"; ManufacturingPrice = 3.0; SalePrice = 12.0; GrossSales = 31716.0; Discounts = 2556.84; Sales = 29159.16; COGS = 5811.0; Profit = 23348.16; Date = "2/1/19"; MonthName = "February"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Kensington"; UnitsSold = "383"; ManufacturingPrice = 3.0; SalePrice = 350.0; GrossSales = 134050.0; Discounts = 30492.0; Sales = 103558.0; COGS = 205920.0; Profit = 102362.0; Date = "3/1/19"; MonthName = "March"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Kensington"; UnitsSold = "2801"; ManufacturingPrice = 3.0; SalePrice = 300.0; GrossSales = 840300.0; Discounts = 92763.0; Sales = 747537.0; COGS = 702750.0; Profit = 44787.0; Date = "7/1/19"; MonthName = "July"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Kensington"; UnitsSold = "1667"; ManufacturingPrice = 3.0; SalePrice = 125.0; GrossSales = 208375.0; Discounts = 33563.75; Sales = 174811.25; COGS = 292920.0; Profit = 118108.75; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Kensington"; UnitsSold = "3539"; ManufacturingPrice = 3.0; SalePrice = 15.0; GrossSales = 53085.0; Discounts = 2574.0; Sales = 50511.0; COGS = 15600.0; Profit = 34911.0; Date = "11/1/18"; MonthName = "November"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Kensington"; UnitsSold = "4226"; ManufacturingPrice = 3.0; SalePrice = 7.0; GrossSales = 29582.0; Discounts = 2083.62; Sales = 27498.38; COGS = 13530.0; Profit = 13968.38; Date = "11/1/18"; MonthName = "November"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Royal Oak"; UnitsSold = "2220"; ManufacturingPrice = 5.0; SalePrice = 350.0; GrossSales = 777000.0; Discounts = 29491.0; Sales = 747509.0; COGS = 199160.0; Profit = 548349.0; Date = "1/1/19"; MonthName = "January"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Royal Oak"; UnitsSold = "776"; ManufacturingPrice = 5.0; SalePrice = 20.0; GrossSales = 15520.0; Discounts = 6582.4; Sales = 8937.6; COGS = 29920.0; Profit = 20982.4; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Royal Oak"; UnitsSold = "553"; ManufacturingPrice = 5.0; SalePrice = 15.0; GrossSales = 8295.0; Discounts = 3559.05; Sales = 4735.95; COGS = 21570.0; Profit = 16834.05; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "2107"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 632100.0; Discounts = 28809.0; Sales = 603291.0; COGS = 218250.0; Profit = 385041.0; Date = "1/1/19"; MonthName = "January"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "2468"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 49360.0; Discounts = 2468.4; Sales = 46891.6; COGS = 11220.0; Profit = 35671.6; Date = "3/1/19"; MonthName = "March"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "1905"; ManufacturingPrice = 10.0; SalePrice = 350.0; GrossSales = 666750.0; Discounts = 81023.25; Sales = 585726.75; COGS = 547170.0; Profit = 38556.75; Date = "7/1/19"; MonthName = "July"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "3658"; ManufacturingPrice = 10.0; SalePrice = 12.0; GrossSales = 43896.0; Discounts = 5314.32; Sales = 38581.68; COGS = 12078.0; Profit = 26503.68; Date = "7/1/19"; MonthName = "July"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "4301"; ManufacturingPrice = 10.0; SalePrice = 12.0; GrossSales = 51612.0; Discounts = 3201.66; Sales = 48410.34; COGS = 7276.5; Profit = 41133.84; Date = "7/1/19"; MonthName = "July"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "2446"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 48920.0; Discounts = 5266.8; Sales = 43653.2; COGS = 23940.0; Profit = 19713.2; Date = "8/1/19"; MonthName = "August"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "4209"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 63135.0; Discounts = 3273.6; Sales = 59861.4; COGS = 19840.0; Profit = 40021.4; Date = "8/1/19"; MonthName = "August"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "3353"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 419125.0; Discounts = 33563.75; Sales = 385561.25; COGS = 292920.0; Profit = 92641.25; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "1401"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 28020.0; Discounts = 6582.4; Sales = 21437.6; COGS = 29920.0; Profit = 8482.4; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "1865"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 559500.0; Discounts = 45078.0; Sales = 514422.0; COGS = 341500.0; Profit = 172922.0; Date = "11/1/19"; MonthName = "November"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Burlington"; UnitsSold = "463"; ManufacturingPrice = 120.0; SalePrice = 20.0; GrossSales = 9260.0; Discounts = 6171.0; Sales = 3089.0; COGS = 28050.0; Profit = 24961.0; Date = "9/1/18"; MonthName = "September"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Burlington"; UnitsSold = "4177"; ManufacturingPrice = 120.0; SalePrice = 15.0; GrossSales = 62655.0; Discounts = 1080.75; Sales = 61574.25; COGS = 6550.0; Profit = 55024.25; Date = "9/1/18"; MonthName = "September"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Burlington"; UnitsSold = "2523"; ManufacturingPrice = 120.0; SalePrice = 350.0; GrossSales = 883050.0; Discounts = 13244.0; Sales = 869806.0; COGS = 89440.0; Profit = 780366.0; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Burlington"; UnitsSold = "1930"; ManufacturingPrice = 120.0; SalePrice = 7.0; GrossSales = 13510.0; Discounts = 1392.16; Sales = 12117.84; COGS = 9040.0; Profit = 3077.84; Date = "11/1/19"; MonthName = "November"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Mandarin"; UnitsSold = "1301"; ManufacturingPrice = 250.0; SalePrice = 12.0; GrossSales = 15612.0; Discounts = 2288.88; Sales = 13323.12; COGS = 5202.0; Profit = 8121.12; Date = "1/1/19"; MonthName = "January"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Mandarin"; UnitsSold = "4125"; ManufacturingPrice = 250.0; SalePrice = 125.0; GrossSales = 515625.0; Discounts = 7617.5; Sales = 508007.5; COGS = 66480.0; Profit = 441527.5; Date = "1/1/19"; MonthName = "January"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Mandarin"; UnitsSold = "607"; ManufacturingPrice = 250.0; SalePrice = 20.0; GrossSales = 12140.0; Discounts = 6457.0; Sales = 5683.0; COGS = 29350.0; Profit = 23667.0; Date = "11/1/18"; MonthName = "November"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Luxe"; UnitsSold = "478"; ManufacturingPrice = 260.0; SalePrice = 125.0; GrossSales = 59750.0; Discounts = 43518.75; Sales = 16231.25; COGS = 379800.0; Profit = 363568.75; Date = "1/1/19"; MonthName = "January"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Luxe"; UnitsSold = "4489"; ManufacturingPrice = 260.0; SalePrice = 20.0; GrossSales = 89780.0; Discounts = 5783.8; Sales = 83996.2; COGS = 26290.0; Profit = 57706.2; Date = "1/1/19"; MonthName = "January"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Luxe"; UnitsSold = "1504"; ManufacturingPrice = 260.0; SalePrice = 125.0; GrossSales = 188000.0; Discounts = 19703.75; Sales = 168296.25; COGS = 171960.0; Profit = 3663.75; Date = "5/1/19"; MonthName = "May"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Luxe"; UnitsSold = "3763"; ManufacturingPrice = 260.0; SalePrice = 125.0; GrossSales = 470375.0; Discounts = 13021.25; Sales = 457353.75; COGS = 113640.0; Profit = 343713.75; Date = "9/1/18"; MonthName = "September"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Luxe"; UnitsSold = "2412"; ManufacturingPrice = 260.0; SalePrice = 350.0; GrossSales = 844200.0; Discounts = 13244.0; Sales = 830956.0; COGS = 89440.0; Profit = 741516.0; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Luxe"; UnitsSold = "2342"; ManufacturingPrice = 260.0; SalePrice = 15.0; GrossSales = 35130.0; Discounts = 3559.05; Sales = 31570.95; COGS = 21570.0; Profit = 10000.95; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "4451"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 31157.0; Discounts = 292.6; Sales = 30864.4; COGS = 1900.0; Profit = 28964.4; Date = "9/1/18"; MonthName = "September"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Kensington"; UnitsSold = "3796"; ManufacturingPrice = 3.0; SalePrice = 350.0; GrossSales = 1328600.0; Discounts = 37212.0; Sales = 1291388.0; COGS = 230360.0; Profit = 1061028.0; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Kensington"; UnitsSold = "2286"; ManufacturingPrice = 3.0; SalePrice = 125.0; GrossSales = 285750.0; Discounts = 36240.0; Sales = 249510.0; COGS = 289920.0; Profit = 40410.0; Date = "9/1/18"; MonthName = "September"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Kensington"; UnitsSold = "3614"; ManufacturingPrice = 3.0; SalePrice = 125.0; GrossSales = 451750.0; Discounts = 32340.0; Sales = 419410.0; COGS = 258720.0; Profit = 160690.0; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Kensington"; UnitsSold = "1716"; ManufacturingPrice = 3.0; SalePrice = 15.0; GrossSales = 25740.0; Discounts = 4840.2; Sales = 20899.8; COGS = 26890.0; Profit = 5990.2; Date = "11/1/19"; MonthName = "November"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Royal Oak"; UnitsSold = "1301"; ManufacturingPrice = 5.0; SalePrice = 15.0; GrossSales = 19515.0; Discounts = 1218.6; Sales = 18296.4; COGS = 6770.0; Profit = 11526.4; Date = "3/1/19"; MonthName = "March"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Royal Oak"; UnitsSold = "4175"; ManufacturingPrice = 5.0; SalePrice = 300.0; GrossSales = 1252500.0; Discounts = 63828.0; Sales = 1188672.0; COGS = 443250.0; Profit = 745422.0; Date = "4/1/19"; MonthName = "April"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Royal Oak"; UnitsSold = "975"; ManufacturingPrice = 5.0; SalePrice = 7.0; GrossSales = 6825.0; Discounts = 2032.8; Sales = 4792.2; COGS = 12100.0; Profit = 7307.8; Date = "9/1/19"; MonthName = "September"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Royal Oak"; UnitsSold = "1154"; ManufacturingPrice = 5.0; SalePrice = 7.0; GrossSales = 8078.0; Discounts = 2296.56; Sales = 5781.44; COGS = 13670.0; Profit = 7888.56; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Royal Oak"; UnitsSold = "1873"; ManufacturingPrice = 5.0; SalePrice = 20.0; GrossSales = 37460.0; Discounts = 4116.0; Sales = 33344.0; COGS = 17150.0; Profit = 16194.0; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Royal Oak"; UnitsSold = "3766"; ManufacturingPrice = 5.0; SalePrice = 300.0; GrossSales = 1129800.0; Discounts = 42696.0; Sales = 1087104.0; COGS = 296500.0; Profit = 790604.0; Date = "12/1/18"; MonthName = "December"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "3558"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 1067400.0; Discounts = 125820.0; Sales = 941580.0; COGS = 873750.0; Profit = 67830.0; Date = "1/1/19"; MonthName = "January"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "3156"; ManufacturingPrice = 10.0; SalePrice = 350.0; GrossSales = 1104600.0; Discounts = 37212.0; Sales = 1067388.0; COGS = 230360.0; Profit = 837028.0; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "2994"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 374250.0; Discounts = 32340.0; Sales = 341910.0; COGS = 258720.0; Profit = 83190.0; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "2087"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 41740.0; Discounts = 2172.0; Sales = 39568.0; COGS = 9050.0; Profit = 30518.0; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "1056"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 21120.0; Discounts = 4116.0; Sales = 17004.0; COGS = 17150.0; Profit = 146.0; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "1353"; ManufacturingPrice = 10.0; SalePrice = 350.0; GrossSales = 473550.0; Discounts = 66948.0; Sales = 406602.0; COGS = 414440.0; Profit = 7838.0; Date = "11/1/19"; MonthName = "November"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "416"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 124800.0; Discounts = 48924.0; Sales = 75876.0; COGS = 339750.0; Profit = 263874.0; Date = "11/1/19"; MonthName = "November"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "3880"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 1164000.0; Discounts = 77400.0; Sales = 1086600.0; COGS = 537500.0; Profit = 549100.0; Date = "11/1/19"; MonthName = "November"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "809"; ManufacturingPrice = 10.0; SalePrice = 350.0; GrossSales = 283150.0; Discounts = 50274.0; Sales = 232876.0; COGS = 311220.0; Profit = 78344.0; Date = "11/1/19"; MonthName = "November"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "1892"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 28380.0; Discounts = 684.0; Sales = 27696.0; COGS = 3800.0; Profit = 23896.0; Date = "12/1/18"; MonthName = "December"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "2072"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 41440.0; Discounts = 2959.2; Sales = 38480.8; COGS = 12330.0; Profit = 26150.8; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Burlington"; UnitsSold = "3052"; ManufacturingPrice = 120.0; SalePrice = 350.0; GrossSales = 1068200.0; Discounts = 58590.0; Sales = 1009610.0; COGS = 362700.0; Profit = 646910.0; Date = "7/1/19"; MonthName = "July"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Burlington"; UnitsSold = "3121"; ManufacturingPrice = 120.0; SalePrice = 350.0; GrossSales = 1092350.0; Discounts = 41412.0; Sales = 1050938.0; COGS = 256360.0; Profit = 794578.0; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Burlington"; UnitsSold = "2059"; ManufacturingPrice = 120.0; SalePrice = 20.0; GrossSales = 41180.0; Discounts = 2172.0; Sales = 39008.0; COGS = 9050.0; Profit = 29958.0; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Mandarin"; UnitsSold = "4254"; ManufacturingPrice = 250.0; SalePrice = 12.0; GrossSales = 51048.0; Discounts = 3036.96; Sales = 48011.04; COGS = 6327.0; Profit = 41684.04; Date = "5/1/19"; MonthName = "May"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Mandarin"; UnitsSold = "1293"; ManufacturingPrice = 250.0; SalePrice = 15.0; GrossSales = 19395.0; Discounts = 6974.1; Sales = 12420.9; COGS = 38745.0; Profit = 26324.1; Date = "7/1/19"; MonthName = "July"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Mandarin"; UnitsSold = "1293"; ManufacturingPrice = 250.0; SalePrice = 350.0; GrossSales = 452550.0; Discounts = 26166.0; Sales = 426384.0; COGS = 161980.0; Profit = 264404.0; Date = "9/1/18"; MonthName = "September"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Mandarin"; UnitsSold = "230"; ManufacturingPrice = 250.0; SalePrice = 350.0; GrossSales = 80500.0; Discounts = 41412.0; Sales = 39088.0; COGS = 256360.0; Profit = 217272.0; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Mandarin"; UnitsSold = "1723"; ManufacturingPrice = 250.0; SalePrice = 125.0; GrossSales = 215375.0; Discounts = 35805.0; Sales = 179570.0; COGS = 286440.0; Profit = 106870.0; Date = "11/1/19"; MonthName = "November"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Mandarin"; UnitsSold = "240"; ManufacturingPrice = 250.0; SalePrice = 20.0; GrossSales = 4800.0; Discounts = 2959.2; Sales = 1840.8; COGS = 12330.0; Profit = 10489.2; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Luxe"; UnitsSold = "2571"; ManufacturingPrice = 260.0; SalePrice = 350.0; GrossSales = 899850.0; Discounts = 11340.0; Sales = 888510.0; COGS = 70200.0; Profit = 818310.0; Date = "2/1/19"; MonthName = "February"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Luxe"; UnitsSold = "1661"; ManufacturingPrice = 260.0; SalePrice = 7.0; GrossSales = 11627.0; Discounts = 2874.06; Sales = 8752.94; COGS = 17107.5; Profit = 8354.56; Date = "7/1/19"; MonthName = "July"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Luxe"; UnitsSold = "4474"; ManufacturingPrice = 260.0; SalePrice = 7.0; GrossSales = 31318.0; Discounts = 2296.56; Sales = 29021.44; COGS = 13670.0; Profit = 15351.44; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Luxe"; UnitsSold = "833"; ManufacturingPrice = 260.0; SalePrice = 15.0; GrossSales = 12495.0; Discounts = 4586.4; Sales = 7908.6; COGS = 25480.0; Profit = 17571.4; Date = "11/1/18"; MonthName = "November"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Kensington"; UnitsSold = "674"; ManufacturingPrice = 3.0; SalePrice = 20.0; GrossSales = 13480.0; Discounts = 6051.6; Sales = 7428.4; COGS = 25215.0; Profit = 17786.6; Date = "1/1/19"; MonthName = "January"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Royal Oak"; UnitsSold = "778"; ManufacturingPrice = 5.0; SalePrice = 12.0; GrossSales = 9336.0; Discounts = 3831.84; Sales = 5504.16; COGS = 7983.0; Profit = 2478.84; Date = "5/1/19"; MonthName = "May"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "1457"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 29140.0; Discounts = 3674.4; Sales = 25465.6; COGS = 15310.0; Profit = 10155.6; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Mandarin"; UnitsSold = "3158"; ManufacturingPrice = 250.0; SalePrice = 7.0; GrossSales = 22106.0; Discounts = 1252.44; Sales = 20853.56; COGS = 7455.0; Profit = 13398.56; Date = "3/1/19"; MonthName = "March"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Mandarin"; UnitsSold = "4095"; ManufacturingPrice = 250.0; SalePrice = 20.0; GrossSales = 81900.0; Discounts = 3674.4; Sales = 78225.6; COGS = 15310.0; Profit = 62915.6; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Luxe"; UnitsSold = "3170"; ManufacturingPrice = 260.0; SalePrice = 12.0; GrossSales = 38040.0; Discounts = 3975.84; Sales = 34064.16; COGS = 8283.0; Profit = 25781.16; Date = "9/1/18"; MonthName = "September"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Kensington"; UnitsSold = "493"; ManufacturingPrice = 3.0; SalePrice = 15.0; GrossSales = 7395.0; Discounts = 5005.65; Sales = 2389.35; COGS = 25670.0; Profit = 23280.65; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Mandarin"; UnitsSold = "3286"; ManufacturingPrice = 250.0; SalePrice = 15.0; GrossSales = 49290.0; Discounts = 5005.65; Sales = 44284.35; COGS = 25670.0; Profit = 18614.35; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Kensington"; UnitsSold = "3563"; ManufacturingPrice = 3.0; SalePrice = 350.0; GrossSales = 1247050.0; Discounts = 41996.5; Sales = 1205053.5; COGS = 239980.0; Profit = 965073.5; Date = "3/1/19"; MonthName = "March"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Kensington"; UnitsSold = "4109"; ManufacturingPrice = 3.0; SalePrice = 350.0; GrossSales = 1438150.0; Discounts = 81445.0; Sales = 1356705.0; COGS = 465400.0; Profit = 891305.0; Date = "3/1/19"; MonthName = "March"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Kensington"; UnitsSold = "3653"; ManufacturingPrice = 3.0; SalePrice = 20.0; GrossSales = 73060.0; Discounts = 1149.2; Sales = 71910.8; COGS = 4420.0; Profit = 67490.8; Date = "9/1/18"; MonthName = "September"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Royal Oak"; UnitsSold = "2203"; ManufacturingPrice = 5.0; SalePrice = 350.0; GrossSales = 771050.0; Discounts = 44703.75; Sales = 726346.25; COGS = 255450.0; Profit = 470896.25; Date = "1/1/19"; MonthName = "January"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Royal Oak"; UnitsSold = "2924"; ManufacturingPrice = 5.0; SalePrice = 7.0; GrossSales = 20468.0; Discounts = 1181.18; Sales = 19286.82; COGS = 6490.0; Profit = 12796.82; Date = "2/1/19"; MonthName = "February"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Royal Oak"; UnitsSold = "2650"; ManufacturingPrice = 5.0; SalePrice = 12.0; GrossSales = 31800.0; Discounts = 942.24; Sales = 30857.76; COGS = 1812.0; Profit = 29045.76; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Royal Oak"; UnitsSold = "1194"; ManufacturingPrice = 5.0; SalePrice = 20.0; GrossSales = 23880.0; Discounts = 5863.0; Sales = 18017.0; COGS = 22550.0; Profit = 4533.0; Date = "7/1/19"; MonthName = "July"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Royal Oak"; UnitsSold = "3366"; ManufacturingPrice = 5.0; SalePrice = 20.0; GrossSales = 67320.0; Discounts = 3247.4; Sales = 64072.6; COGS = 12490.0; Profit = 51582.6; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "1325"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 9275.0; Discounts = 1309.04; Sales = 7965.97; COGS = 7192.5; Profit = 773.47; Date = "1/1/19"; MonthName = "January"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "4243"; ManufacturingPrice = 10.0; SalePrice = 300.0; GrossSales = 1272900.0; Discounts = 31473.0; Sales = 1241427.0; COGS = 201750.0; Profit = 1039677.0; Date = "1/1/19"; MonthName = "January"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "2887"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 57740.0; Discounts = 6866.6; Sales = 50873.4; COGS = 26410.0; Profit = 24463.4; Date = "2/1/19"; MonthName = "February"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "3839"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 76780.0; Discounts = 7040.8; Sales = 69739.2; COGS = 27080.0; Profit = 42659.2; Date = "2/1/19"; MonthName = "February"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "1863"; ManufacturingPrice = 10.0; SalePrice = 350.0; GrossSales = 652050.0; Discounts = 119756.0; Sales = 532294.0; COGS = 684320.0; Profit = 152026.0; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "2858"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 357250.0; Discounts = 25723.75; Sales = 331526.25; COGS = 189960.0; Profit = 141566.25; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "2868"; ManufacturingPrice = 10.0; SalePrice = 12.0; GrossSales = 34416.0; Discounts = 890.76; Sales = 33525.24; COGS = 1713.0; Profit = 31812.24; Date = "7/1/19"; MonthName = "July"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "3805"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 26635.0; Discounts = 2453.36; Sales = 24181.64; COGS = 13480.0; Profit = 10701.64; Date = "8/1/19"; MonthName = "August"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "3914"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 58710.0; Discounts = 3051.75; Sales = 55658.25; COGS = 15650.0; Profit = 40008.25; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "524"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 10480.0; Discounts = 3247.4; Sales = 7232.6; COGS = 12490.0; Profit = 5257.4; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "3095"; ManufacturingPrice = 10.0; SalePrice = 350.0; GrossSales = 1083250.0; Discounts = 16243.5; Sales = 1067006.5; COGS = 92820.0; Profit = 974186.5; Date = "11/1/19"; MonthName = "November"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "2410"; ManufacturingPrice = 10.0; SalePrice = 12.0; GrossSales = 28920.0; Discounts = 1580.28; Sales = 27339.72; COGS = 3039.0; Profit = 24300.72; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Burlington"; UnitsSold = "4263"; ManufacturingPrice = 120.0; SalePrice = 15.0; GrossSales = 63945.0; Discounts = 7795.13; Sales = 56149.88; COGS = 39975.0; Profit = 16174.88; Date = "1/1/19"; MonthName = "January"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Burlington"; UnitsSold = "2239"; ManufacturingPrice = 120.0; SalePrice = 350.0; GrossSales = 783650.0; Discounts = 119756.0; Sales = 663894.0; COGS = 684320.0; Profit = 20426.0; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Burlington"; UnitsSold = "569"; ManufacturingPrice = 120.0; SalePrice = 7.0; GrossSales = 3983.0; Discounts = 1082.9; Sales = 2900.1; COGS = 5950.0; Profit = 3049.9; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Burlington"; UnitsSold = "3889"; ManufacturingPrice = 120.0; SalePrice = 12.0; GrossSales = 46668.0; Discounts = 942.24; Sales = 45725.76; COGS = 1812.0; Profit = 43913.76; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Burlington"; UnitsSold = "1378"; ManufacturingPrice = 120.0; SalePrice = 15.0; GrossSales = 20670.0; Discounts = 1287.0; Sales = 19383.0; COGS = 6600.0; Profit = 12783.0; Date = "9/1/18"; MonthName = "September"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Burlington"; UnitsSold = "2253"; ManufacturingPrice = 120.0; SalePrice = 12.0; GrossSales = 27036.0; Discounts = 639.6; Sales = 26396.4; COGS = 1230.0; Profit = 25166.4; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Burlington"; UnitsSold = "3202"; ManufacturingPrice = 120.0; SalePrice = 300.0; GrossSales = 960600.0; Discounts = 101595.0; Sales = 859005.0; COGS = 651250.0; Profit = 207755.0; Date = "11/1/18"; MonthName = "November"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Burlington"; UnitsSold = "3835"; ManufacturingPrice = 120.0; SalePrice = 12.0; GrossSales = 46020.0; Discounts = 1580.28; Sales = 44439.72; COGS = 3039.0; Profit = 41400.72; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Mandarin"; UnitsSold = "2487"; ManufacturingPrice = 250.0; SalePrice = 125.0; GrossSales = 310875.0; Discounts = 25723.75; Sales = 285151.25; COGS = 189960.0; Profit = 95191.25; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Mandarin"; UnitsSold = "4428"; ManufacturingPrice = 250.0; SalePrice = 15.0; GrossSales = 66420.0; Discounts = 3051.75; Sales = 63368.25; COGS = 15650.0; Profit = 47718.25; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Luxe"; UnitsSold = "1200"; ManufacturingPrice = 260.0; SalePrice = 125.0; GrossSales = 150000.0; Discounts = 26958.75; Sales = 123041.25; COGS = 199080.0; Profit = 76038.75; Date = "1/1/19"; MonthName = "January"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Luxe"; UnitsSold = "2953"; ManufacturingPrice = 260.0; SalePrice = 7.0; GrossSales = 20671.0; Discounts = 1082.9; Sales = 19588.1; COGS = 5950.0; Profit = 13638.1; Date = "6/1/19"; MonthName = "June"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Luxe"; UnitsSold = "1453"; ManufacturingPrice = 260.0; SalePrice = 12.0; GrossSales = 17436.0; Discounts = 639.6; Sales = 16796.4; COGS = 1230.0; Profit = 15566.4; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Luxe"; UnitsSold = "865"; ManufacturingPrice = 260.0; SalePrice = 12.0; GrossSales = 10380.0; Discounts = 2761.2; Sales = 7618.8; COGS = 5310.0; Profit = 2308.8; Date = "12/1/18"; MonthName = "December"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Kensington"; UnitsSold = "1072"; ManufacturingPrice = 3.0; SalePrice = 20.0; GrossSales = 21440.0; Discounts = 7221.2; Sales = 14218.8; COGS = 25790.0; Profit = 11571.2; Date = "4/1/19"; MonthName = "April"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Kensington"; UnitsSold = "1737"; ManufacturingPrice = 3.0; SalePrice = 20.0; GrossSales = 34740.0; Discounts = 4880.4; Sales = 29859.6; COGS = 17430.0; Profit = 12429.6; Date = "5/1/19"; MonthName = "May"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Kensington"; UnitsSold = "1535"; ManufacturingPrice = 3.0; SalePrice = 7.0; GrossSales = 10745.0; Discounts = 2936.08; Sales = 7808.92; COGS = 14980.0; Profit = 7171.08; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Kensington"; UnitsSold = "2532"; ManufacturingPrice = 3.0; SalePrice = 7.0; GrossSales = 17724.0; Discounts = 274.4; Sales = 17449.6; COGS = 1400.0; Profit = 16049.6; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Royal Oak"; UnitsSold = "1765"; ManufacturingPrice = 5.0; SalePrice = 7.0; GrossSales = 12355.0; Discounts = 287.14; Sales = 12067.86; COGS = 1465.0; Profit = 10602.86; Date = "2/1/19"; MonthName = "February"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Royal Oak"; UnitsSold = "1567"; ManufacturingPrice = 5.0; SalePrice = 7.0; GrossSales = 10969.0; Discounts = 2936.08; Sales = 8032.92; COGS = 14980.0; Profit = 6947.08; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "2640"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 39600.0; Discounts = 583.8; Sales = 39016.2; COGS = 2780.0; Profit = 36236.2; Date = "2/1/19"; MonthName = "February"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "3079"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 61580.0; Discounts = 6798.4; Sales = 54781.6; COGS = 24280.0; Profit = 30501.6; Date = "3/1/19"; MonthName = "March"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "4130"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 61950.0; Discounts = 3710.7; Sales = 58239.3; COGS = 17670.0; Profit = 40569.3; Date = "9/1/19"; MonthName = "September"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "2938"; ManufacturingPrice = 10.0; SalePrice = 12.0; GrossSales = 35256.0; Discounts = 2340.24; Sales = 32915.76; COGS = 4179.0; Profit = 28736.76; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Mandarin"; UnitsSold = "3080"; ManufacturingPrice = 250.0; SalePrice = 7.0; GrossSales = 21560.0; Discounts = 274.4; Sales = 21285.6; COGS = 1400.0; Profit = 19885.6; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Luxe"; UnitsSold = "1530"; ManufacturingPrice = 260.0; SalePrice = 12.0; GrossSales = 18360.0; Discounts = 2340.24; Sales = 16019.76; COGS = 4179.0; Profit = 11840.76; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Luxe"; UnitsSold = "3537"; ManufacturingPrice = 260.0; SalePrice = 12.0; GrossSales = 42444.0; Discounts = 3385.2; Sales = 39058.8; COGS = 6045.0; Profit = 33013.8; Date = "12/1/18"; MonthName = "December"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Kensington"; UnitsSold = "2021"; ManufacturingPrice = 3.0; SalePrice = 300.0; GrossSales = 606300.0; Discounts = 33642.0; Sales = 572658.0; COGS = 200250.0; Profit = 372408.0; Date = "7/1/19"; MonthName = "July"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Kensington"; UnitsSold = "1804"; ManufacturingPrice = 3.0; SalePrice = 125.0; GrossSales = 225500.0; Discounts = 17902.5; Sales = 207597.5; COGS = 122760.0; Profit = 84837.5; Date = "9/1/18"; MonthName = "September"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Kensington"; UnitsSold = "1014"; ManufacturingPrice = 3.0; SalePrice = 300.0; GrossSales = 304200.0; Discounts = 62832.0; Sales = 241368.0; COGS = 374000.0; Profit = 132632.0; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Kensington"; UnitsSold = "2913"; ManufacturingPrice = 3.0; SalePrice = 300.0; GrossSales = 873900.0; Discounts = 42420.0; Sales = 831480.0; COGS = 252500.0; Profit = 578980.0; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Kensington"; UnitsSold = "763"; ManufacturingPrice = 3.0; SalePrice = 15.0; GrossSales = 11445.0; Discounts = 3177.3; Sales = 8267.7; COGS = 15130.0; Profit = 6862.3; Date = "11/1/19"; MonthName = "November"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Kensington"; UnitsSold = "1425"; ManufacturingPrice = 3.0; SalePrice = 15.0; GrossSales = 21375.0; Discounts = 4830.0; Sales = 16545.0; COGS = 23000.0; Profit = 6455.0; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Kensington"; UnitsSold = "4357"; ManufacturingPrice = 3.0; SalePrice = 125.0; GrossSales = 544625.0; Discounts = 49367.5; Sales = 495257.5; COGS = 338520.0; Profit = 156737.5; Date = "12/1/18"; MonthName = "December"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Royal Oak"; UnitsSold = "2138"; ManufacturingPrice = 5.0; SalePrice = 350.0; GrossSales = 748300.0; Discounts = 109147.5; Sales = 639152.5; COGS = 579150.0; Profit = 60002.5; Date = "1/1/19"; MonthName = "January"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Royal Oak"; UnitsSold = "3825"; ManufacturingPrice = 5.0; SalePrice = 350.0; GrossSales = 1338750.0; Discounts = 58751.0; Sales = 1279999.0; COGS = 311740.0; Profit = 968259.0; Date = "4/1/19"; MonthName = "April"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Royal Oak"; UnitsSold = "3393"; ManufacturingPrice = 5.0; SalePrice = 350.0; GrossSales = 1187550.0; Discounts = 9800.0; Sales = 1177750.0; COGS = 52000.0; Profit = 1125750.0; Date = "5/1/19"; MonthName = "May"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Royal Oak"; UnitsSold = "2215"; ManufacturingPrice = 5.0; SalePrice = 7.0; GrossSales = 15505.0; Discounts = 380.24; Sales = 15124.76; COGS = 1940.0; Profit = 13184.76; Date = "9/1/19"; MonthName = "September"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Royal Oak"; UnitsSold = "2278"; ManufacturingPrice = 5.0; SalePrice = 7.0; GrossSales = 15946.0; Discounts = 1692.46; Sales = 14253.54; COGS = 8635.0; Profit = 5618.54; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Royal Oak"; UnitsSold = "403"; ManufacturingPrice = 5.0; SalePrice = 15.0; GrossSales = 6045.0; Discounts = 4830.0; Sales = 1215.0; COGS = 23000.0; Profit = 21785.0; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "289"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 5780.0; Discounts = 728.0; Sales = 5052.0; COGS = 2600.0; Profit = 2452.0; Date = "2/1/19"; MonthName = "February"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "749"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 11235.0; Discounts = 5187.0; Sales = 6048.0; COGS = 24700.0; Profit = 18652.0; Date = "9/1/18"; MonthName = "September"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "372"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 5580.0; Discounts = 3660.3; Sales = 1919.7; COGS = 17430.0; Profit = 15510.3; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "3781"; ManufacturingPrice = 10.0; SalePrice = 12.0; GrossSales = 45372.0; Discounts = 4895.52; Sales = 40476.48; COGS = 8742.0; Profit = 31734.48; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "1785"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 12495.0; Discounts = 1696.38; Sales = 10798.62; COGS = 8655.0; Profit = 2143.62; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "4029"; ManufacturingPrice = 10.0; SalePrice = 350.0; GrossSales = 1410150.0; Discounts = 34300.0; Sales = 1375850.0; COGS = 182000.0; Profit = 1193850.0; Date = "11/1/19"; MonthName = "November"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "2813"; ManufacturingPrice = 10.0; SalePrice = 12.0; GrossSales = 33756.0; Discounts = 3732.96; Sales = 30023.04; COGS = 6666.0; Profit = 23357.04; Date = "11/1/18"; MonthName = "November"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "2150"; ManufacturingPrice = 10.0; SalePrice = 350.0; GrossSales = 752500.0; Discounts = 57673.0; Sales = 694827.0; COGS = 306020.0; Profit = 388807.0; Date = "11/1/19"; MonthName = "November"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "2093"; ManufacturingPrice = 10.0; SalePrice = 350.0; GrossSales = 732550.0; Discounts = 94178.0; Sales = 638372.0; COGS = 499720.0; Profit = 138652.0; Date = "11/1/18"; MonthName = "November"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Burlington"; UnitsSold = "4391"; ManufacturingPrice = 120.0; SalePrice = 125.0; GrossSales = 548875.0; Discounts = 27562.5; Sales = 521312.5; COGS = 189000.0; Profit = 332312.5; Date = "2/1/19"; MonthName = "February"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Burlington"; UnitsSold = "2695"; ManufacturingPrice = 120.0; SalePrice = 20.0; GrossSales = 53900.0; Discounts = 1696.8; Sales = 52203.2; COGS = 6060.0; Profit = 46143.2; Date = "4/1/19"; MonthName = "April"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Burlington"; UnitsSold = "1337"; ManufacturingPrice = 120.0; SalePrice = 300.0; GrossSales = 401100.0; Discounts = 103320.0; Sales = 297780.0; COGS = 615000.0; Profit = 317220.0; Date = "7/1/19"; MonthName = "July"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Burlington"; UnitsSold = "2621"; ManufacturingPrice = 120.0; SalePrice = 300.0; GrossSales = 786300.0; Discounts = 11298.0; Sales = 775002.0; COGS = 67250.0; Profit = 707752.0; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Burlington"; UnitsSold = "3735"; ManufacturingPrice = 120.0; SalePrice = 300.0; GrossSales = 1120500.0; Discounts = 106512.0; Sales = 1013988.0; COGS = 634000.0; Profit = 379988.0; Date = "11/1/18"; MonthName = "November"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Mandarin"; UnitsSold = "4320"; ManufacturingPrice = 250.0; SalePrice = 7.0; GrossSales = 30240.0; Discounts = 2844.94; Sales = 27395.06; COGS = 14515.0; Profit = 12880.06; Date = "3/1/19"; MonthName = "March"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Mandarin"; UnitsSold = "2828"; ManufacturingPrice = 250.0; SalePrice = 300.0; GrossSales = 848400.0; Discounts = 106722.0; Sales = 741678.0; COGS = 635250.0; Profit = 106428.0; Date = "8/1/19"; MonthName = "August"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Mandarin"; UnitsSold = "2586"; ManufacturingPrice = 250.0; SalePrice = 300.0; GrossSales = 775800.0; Discounts = 11298.0; Sales = 764502.0; COGS = 67250.0; Profit = 697252.0; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Mandarin"; UnitsSold = "1248"; ManufacturingPrice = 250.0; SalePrice = 300.0; GrossSales = 374400.0; Discounts = 62832.0; Sales = 311568.0; COGS = 374000.0; Profit = 62432.0; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Mandarin"; UnitsSold = "4035"; ManufacturingPrice = 250.0; SalePrice = 300.0; GrossSales = 1210500.0; Discounts = 42420.0; Sales = 1168080.0; COGS = 252500.0; Profit = 915580.0; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Mandarin"; UnitsSold = "359"; ManufacturingPrice = 250.0; SalePrice = 350.0; GrossSales = 125650.0; Discounts = 62769.0; Sales = 62881.0; COGS = 333060.0; Profit = 270179.0; Date = "12/1/18"; MonthName = "December"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Luxe"; UnitsSold = "3926"; ManufacturingPrice = 260.0; SalePrice = 300.0; GrossSales = 1177800.0; Discounts = 37296.0; Sales = 1140504.0; COGS = 222000.0; Profit = 918504.0; Date = "3/1/19"; MonthName = "March"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Luxe"; UnitsSold = "4247"; ManufacturingPrice = 260.0; SalePrice = 125.0; GrossSales = 530875.0; Discounts = 49770.0; Sales = 481105.0; COGS = 341280.0; Profit = 139825.0; Date = "5/1/19"; MonthName = "May"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Luxe"; UnitsSold = "2695"; ManufacturingPrice = 260.0; SalePrice = 12.0; GrossSales = 32340.0; Discounts = 4158.0; Sales = 28182.0; COGS = 7425.0; Profit = 20757.0; Date = "8/1/19"; MonthName = "August"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Luxe"; UnitsSold = "1104"; ManufacturingPrice = 260.0; SalePrice = 15.0; GrossSales = 16560.0; Discounts = 3660.3; Sales = 12899.7; COGS = 17430.0; Profit = 4530.3; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Luxe"; UnitsSold = "1449"; ManufacturingPrice = 260.0; SalePrice = 12.0; GrossSales = 17388.0; Discounts = 4895.52; Sales = 12492.48; COGS = 8742.0; Profit = 3750.48; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Luxe"; UnitsSold = "1131"; ManufacturingPrice = 260.0; SalePrice = 7.0; GrossSales = 7917.0; Discounts = 1696.38; Sales = 6220.62; COGS = 8655.0; Profit = 2434.38; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Luxe"; UnitsSold = "1468"; ManufacturingPrice = 260.0; SalePrice = 7.0; GrossSales = 10276.0; Discounts = 1692.46; Sales = 8583.54; COGS = 8635.0; Profit = 51.46; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Luxe"; UnitsSold = "1272"; ManufacturingPrice = 260.0; SalePrice = 15.0; GrossSales = 19080.0; Discounts = 3927.0; Sales = 15153.0; COGS = 18700.0; Profit = 3547.0; Date = "11/1/18"; MonthName = "November"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Kensington"; UnitsSold = "1403"; ManufacturingPrice = 3.0; SalePrice = 125.0; GrossSales = 175375.0; Discounts = 22012.5; Sales = 153362.5; COGS = 140880.0; Profit = 12482.5; Date = "8/1/19"; MonthName = "August"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Kensington"; UnitsSold = "2161"; ManufacturingPrice = 3.0; SalePrice = 125.0; GrossSales = 270125.0; Discounts = 51881.25; Sales = 218243.75; COGS = 332040.0; Profit = 113796.25; Date = "8/1/19"; MonthName = "August"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Kensington"; UnitsSold = "1937"; ManufacturingPrice = 3.0; SalePrice = 125.0; GrossSales = 242125.0; Discounts = 20343.75; Sales = 221781.25; COGS = 130200.0; Profit = 91581.25; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Royal Oak"; UnitsSold = "2879"; ManufacturingPrice = 5.0; SalePrice = 300.0; GrossSales = 863700.0; Discounts = 24570.0; Sales = 839130.0; COGS = 136500.0; Profit = 702630.0; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "1330"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 26600.0; Discounts = 3474.0; Sales = 23126.0; COGS = 11580.0; Profit = 11546.0; Date = "3/1/19"; MonthName = "March"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "2426"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 36390.0; Discounts = 3631.5; Sales = 32758.5; COGS = 16140.0; Profit = 16618.5; Date = "4/1/19"; MonthName = "April"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "2033"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 14231.0; Discounts = 2661.75; Sales = 11569.25; COGS = 12675.0; Profit = 1105.75; Date = "4/1/19"; MonthName = "April"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "2029"; ManufacturingPrice = 10.0; SalePrice = 350.0; GrossSales = 710150.0; Discounts = 149677.5; Sales = 560472.5; COGS = 741260.0; Profit = 180787.5; Date = "5/1/19"; MonthName = "May"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "1049"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 15735.0; Discounts = 5757.75; Sales = 9977.25; COGS = 25590.0; Profit = 15612.75; Date = "8/1/19"; MonthName = "August"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "1062"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 21240.0; Discounts = 801.0; Sales = 20439.0; COGS = 2670.0; Profit = 17769.0; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "2509"; ManufacturingPrice = 10.0; SalePrice = 125.0; GrossSales = 313625.0; Discounts = 20343.75; Sales = 293281.25; COGS = 130200.0; Profit = 163081.25; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Vermont"; UnitsSold = "1743"; ManufacturingPrice = 10.0; SalePrice = 15.0; GrossSales = 26145.0; Discounts = 2643.75; Sales = 23501.25; COGS = 11750.0; Profit = 11751.25; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "3418"; ManufacturingPrice = 10.0; SalePrice = 350.0; GrossSales = 1196300.0; Discounts = 105367.5; Sales = 1090932.5; COGS = 521820.0; Profit = 569112.5; Date = "11/1/18"; MonthName = "November"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Vermont"; UnitsSold = "1751"; ManufacturingPrice = 10.0; SalePrice = 350.0; GrossSales = 612850.0; Discounts = 112927.5; Sales = 499922.5; COGS = 559260.0; Profit = 59337.5; Date = "11/1/18"; MonthName = "November"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Vermont"; UnitsSold = "3228"; ManufacturingPrice = 10.0; SalePrice = 12.0; GrossSales = 38736.0; Discounts = 1645.2; Sales = 37090.8; COGS = 2742.0; Profit = 34348.8; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Vermont"; UnitsSold = "1105"; ManufacturingPrice = 10.0; SalePrice = 20.0; GrossSales = 22100.0; Discounts = 879.0; Sales = 21221.0; COGS = 2930.0; Profit = 18291.0; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Burlington"; UnitsSold = "2778"; ManufacturingPrice = 120.0; SalePrice = 12.0; GrossSales = 33336.0; Discounts = 900.0; Sales = 32436.0; COGS = 1500.0; Profit = 30936.0; Date = "3/1/19"; MonthName = "March"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Burlington"; UnitsSold = "1173"; ManufacturingPrice = 120.0; SalePrice = 15.0; GrossSales = 17595.0; Discounts = 6358.5; Sales = 11236.5; COGS = 28260.0; Profit = 17023.5; Date = "5/1/19"; MonthName = "May"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Burlington"; UnitsSold = "3160"; ManufacturingPrice = 120.0; SalePrice = 125.0; GrossSales = 395000.0; Discounts = 12431.25; Sales = 382568.75; COGS = 79560.0; Profit = 303008.75; Date = "9/1/19"; MonthName = "September"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Burlington"; UnitsSold = "4322"; ManufacturingPrice = 120.0; SalePrice = 300.0; GrossSales = 1296600.0; Discounts = 115830.0; Sales = 1180770.0; COGS = 643500.0; Profit = 537270.0; Date = "11/1/18"; MonthName = "November"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Burlington"; UnitsSold = "1901"; ManufacturingPrice = 120.0; SalePrice = 125.0; GrossSales = 237625.0; Discounts = 45712.5; Sales = 191912.5; COGS = 292560.0; Profit = 100647.5; Date = "12/1/18"; MonthName = "December"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Burlington"; UnitsSold = "2980"; ManufacturingPrice = 120.0; SalePrice = 12.0; GrossSales = 35760.0; Discounts = 1645.2; Sales = 34114.8; COGS = 2742.0; Profit = 31372.8; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Mandarin"; UnitsSold = "4068"; ManufacturingPrice = 250.0; SalePrice = 20.0; GrossSales = 81360.0; Discounts = 2596.5; Sales = 78763.5; COGS = 8655.0; Profit = 70108.5; Date = "7/1/19"; MonthName = "July"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Mandarin"; UnitsSold = "2105"; ManufacturingPrice = 250.0; SalePrice = 15.0; GrossSales = 31575.0; Discounts = 1107.0; Sales = 30468.0; COGS = 4920.0; Profit = 25548.0; Date = "7/1/19"; MonthName = "July"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Mandarin"; UnitsSold = "1647"; ManufacturingPrice = 250.0; SalePrice = 20.0; GrossSales = 32940.0; Discounts = 801.0; Sales = 32139.0; COGS = 2670.0; Profit = 29469.0; Date = "10/1/18"; MonthName = "October"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Mandarin"; UnitsSold = "235"; ManufacturingPrice = 250.0; SalePrice = 15.0; GrossSales = 3525.0; Discounts = 2643.75; Sales = 881.25; COGS = 11750.0; Profit = 10868.75; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Mandarin"; UnitsSold = "3617"; ManufacturingPrice = 250.0; SalePrice = 125.0; GrossSales = 452125.0; Discounts = 55387.5; Sales = 396737.5; COGS = 354480.0; Profit = 42257.5; Date = "11/1/18"; MonthName = "November"; Year = "2018" }); + this.add(SalesEmbeddedItem().apply { Country = "India"; Product = "Mandarin"; UnitsSold = "2106"; ManufacturingPrice = 250.0; SalePrice = 125.0; GrossSales = 263250.0; Discounts = 10350.0; Sales = 252900.0; COGS = 66240.0; Profit = 186660.0; Date = "11/1/19"; MonthName = "November"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Mandarin"; UnitsSold = "2351"; ManufacturingPrice = 250.0; SalePrice = 20.0; GrossSales = 47020.0; Discounts = 879.0; Sales = 46141.0; COGS = 2930.0; Profit = 43211.0; Date = "12/1/19"; MonthName = "December"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "UK"; Product = "Luxe"; UnitsSold = "1897"; ManufacturingPrice = 260.0; SalePrice = 300.0; GrossSales = 569100.0; Discounts = 111375.0; Sales = 457725.0; COGS = 618750.0; Profit = 161025.0; Date = "3/1/19"; MonthName = "March"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Luxe"; UnitsSold = "647"; ManufacturingPrice = 260.0; SalePrice = 300.0; GrossSales = 194100.0; Discounts = 24570.0; Sales = 169530.0; COGS = 136500.0; Profit = 33030.0; Date = "10/1/19"; MonthName = "October"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Brazil"; Product = "Royal Oak"; UnitsSold = "3621"; ManufacturingPrice = 5.0; SalePrice = 7.0; GrossSales = 25347.0; Discounts = 1436.4; Sales = 23910.6; COGS = 6840.0; Profit = 17070.6; Date = "2/1/19"; MonthName = "February"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "Japan"; Product = "Vermont"; UnitsSold = "3221"; ManufacturingPrice = 10.0; SalePrice = 7.0; GrossSales = 22547.0; Discounts = 759.15; Sales = 21787.85; COGS = 3615.0; Profit = 18172.85; Date = "4/1/19"; MonthName = "April"; Year = "2019" }); + this.add(SalesEmbeddedItem().apply { Country = "USA"; Product = "Mandarin"; UnitsSold = "493"; ManufacturingPrice = 250.0; SalePrice = 12.0; GrossSales = 5916.0; Discounts = 3250.8; Sales = 2665.2; COGS = 5418.0; Profit = 2752.8; Date = "5/1/19"; MonthName = "May"; Year = "2019" }); + } +} + +public class SalesEmbeddedItem { + constructor() { + + } + + public var Country: String? = null; + public var Product: String? = null; + public var UnitsSold: String? = null; + public var ManufacturingPrice: Double = 0.0; + public var SalePrice: Double = 0.0; + public var GrossSales: Double = 0.0; + public var Discounts: Double = 0.0; + public var Sales: Double = 0.0; + public var COGS: Double = 0.0; + public var Profit: Double = 0.0; + public var Date: String? = null; + public var MonthName: String? = null; + public var Year: String? = null; + +} +//end data diff --git a/code-gen-library/ScatterBubbleSeriesFillScaleSliderChanged/Android.kt b/code-gen-library/ScatterBubbleSeriesFillScaleSliderChanged/Android.kt new file mode 100644 index 000000000..ab8daf8f0 --- /dev/null +++ b/code-gen-library/ScatterBubbleSeriesFillScaleSliderChanged/Android.kt @@ -0,0 +1,25 @@ +//begin imports + +//end imports + +import com.infragistics.mobile.controls.CodeGenHelper; + +public class ScatterBubbleSeriesFillScaleSliderChanged { + //begin eventHandler + public fun scatterBubbleSeriesFillScaleSliderChanged(sender: Any?, args: IgaPropertyEditorPropertyDescriptionChangedEventArgs?) { + + var chart = CodeGenHelper.getDescription("content"); + + var series: IgaBubbleSeries = chart.series[0] as IgaBubbleSeries; + + var fillScale = series.fillScale; + + if(args.newValue >= 25000){ + fillScale.maximumValue = args.newValue; + } + else{ + fillScale.minimumValue = args.newValue; + } + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/ScatterBubbleSeriesFillScaleSliderChanged/iOS.swift b/code-gen-library/ScatterBubbleSeriesFillScaleSliderChanged/iOS.swift new file mode 100644 index 000000000..8557f47ac --- /dev/null +++ b/code-gen-library/ScatterBubbleSeriesFillScaleSliderChanged/iOS.swift @@ -0,0 +1,21 @@ +//begin imports +//end imports + +public class ScatterBubbleSeriesFillScaleSliderChanged { + //begin eventHandler + public func scatterBubbleSeriesFillScaleSliderChanged(sender: Any?, args: IgsPropertyEditorPropertyDescriptionChangedEventArgs?) { + + var chart = CodeGenHelper.getDescription(IgsDataChart.self, "content") + + var series = chart.series[0] as! IgsBubbleSeries + + var fillScale = series.fillScale + + if let newValue = args?.newValue as? Double, newValue >= 25000 { + fillScale.maximumValue = newValue + } else if let newValue = args?.newValue as? Double { + fillScale.minimumValue = newValue + } + } + //end eventHandler +} diff --git a/code-gen-library/ScatterHighDensityData/Android.kt b/code-gen-library/ScatterHighDensityData/Android.kt new file mode 100644 index 000000000..3b37e0962 --- /dev/null +++ b/code-gen-library/ScatterHighDensityData/Android.kt @@ -0,0 +1,59 @@ +//begin imports +//end imports + +//begin data +class ScatterHighDensityItem { + public var x: Double = 0.0 + public var y: Double = 0.0 +} + + +public class ScatterHighDensityData: ArrayList { + + public constructor() { + var amount = 25000; + this.generate(amount / 2, 0.0, 0.0, 75000.0, 20000.0); + this.generate(amount / 4, 0.0, 0.0, 100000.0, 25000.0); + this.generate(amount / 8, 0.0, 0.0, 150000.0, 30000.0); + this.generate(amount / 8, 0.0, 0.0, 200000.0, 75000.0); + } + + public fun generate(count: Int, + centerX: Double, centerY: Double, + spreadX: Double, spreadY: Double) { + + + for (i in 0..count) { + var rangeX = Math.random() * spreadX + var rangeY = Math.random() * spreadY + val prop = Math.random() + + when { + prop < 0.25 -> { + // no change + } + prop < 0.5 -> { + rangeX *= -1 + } + prop < 0.75 -> { + rangeY *= -1 + } + else -> { + rangeX *= -1 + rangeY *= -1 + } + } + + val dispersionX = Math.random() + 0.12 + val dispersionY = Math.random() + 0.12 + + val item = ScatterHighDensityItem().apply { + x = (centerX + (rangeX * dispersionX)) + y = (centerY + (rangeY * dispersionY)) + } + + this.add(item) + } + } +} +//end data \ No newline at end of file diff --git a/code-gen-library/ScatterHighDensityData/iOS.swift b/code-gen-library/ScatterHighDensityData/iOS.swift new file mode 100644 index 000000000..300ba8ae5 --- /dev/null +++ b/code-gen-library/ScatterHighDensityData/iOS.swift @@ -0,0 +1,57 @@ +//begin imports +//end imports + +//begin data +public class ScatterHighDensityItem { + public var x: Double = 0.0 + public var y: Double = 0.0 +} + +public class ScatterHighDensityData: ArrayList { + + public init() { + super.init(); + let amount = 25000 + self.generate(count: amount / 2, centerX: 0.0, centerY: 0.0, spreadX: 75000.0, spreadY: 20000.0) + self.generate(count: amount / 4, centerX: 0.0, centerY: 0.0, spreadX: 100000.0, spreadY: 25000.0) + self.generate(count: amount / 8, centerX: 0.0, centerY: 0.0, spreadX: 150000.0, spreadY: 30000.0) + self.generate(count: amount / 8, centerX: 0.0, centerY: 0.0, spreadX: 200000.0, spreadY: 75000.0) + } + + public required init(arrayLiteral: ScatterHighDensityItem...) { + super.init(array: arrayLiteral); + } + + public func generate(count: Int, + centerX: Double, centerY: Double, + spreadX: Double, spreadY: Double) { + + for _ in 0...count { + var rangeX = Double.random(in: 0...1) * spreadX + var rangeY = Double.random(in: 0...1) * spreadY + let prop = Double.random(in: 0...1) + + switch prop { + case ..<0.25: + break + case ..<0.5: + rangeX *= -1 + case ..<0.75: + rangeY *= -1 + default: + rangeX *= -1 + rangeY *= -1 + } + + let dispersionX = Double.random(in: 0...1) + 0.12 + let dispersionY = Double.random(in: 0...1) + 0.12 + + let item = ScatterHighDensityItem() + item.x = centerX + (rangeX * dispersionX) + item.y = centerY + (rangeY * dispersionY) + + self.add(item: item) + } + } +} +//end data diff --git a/code-gen-library/SelectionMatcherOnViewInit/Android.kt b/code-gen-library/SelectionMatcherOnViewInit/Android.kt new file mode 100644 index 000000000..c1fb83f91 --- /dev/null +++ b/code-gen-library/SelectionMatcherOnViewInit/Android.kt @@ -0,0 +1,44 @@ +//begin imports +import android.os.Handler; +import android.os.Looper; +import com.infragistics.mobile.controls.IgaCategoryChart; +import com.infragistics.mobile.controls.IgaChartSelection; +import com.infragistics.mobile.controls.IgaSeriesMatcher; +//end imports + +import com.infragistics.mobile.controls.CodeGenHelper; + +public class SelectionMatcherOnViewInit +{ + + //begin eventHandler + //Kotlin: Action + public fun selectionMatcherOnViewInit() { + + var chart = CodeGenHelper.getDescription("content")!!; + val handler = Handler(Looper.getMainLooper()) + + handler.postDelayed({ + var data = CodeGenHelper.findByName>("energyRenewableConsumption")!!; + var matcher: IgaSeriesMatcher = IgaSeriesMatcher(); + + var selection: IgaChartSelection = IgaChartSelection(); + selection.item = data[1]; + matcher.memberPath = "hydro"; + matcher.memberPathType = "ValueMemberPath"; + selection.matcher = matcher; + chart.selectedSeriesItems!!.add(selection); + + var matcher2: IgaSeriesMatcher = IgaSeriesMatcher(); + var selection2: IgaChartSelection = IgaChartSelection(); + selection2.item = data[2]; + matcher2.memberPath = "wind"; + matcher2.memberPathType = "ValueMemberPath"; + selection2.matcher = matcher2; + + chart.selectedSeriesItems!!.add(selection2); + }, 100); + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/SelectionMatcherOnViewInit/iOS.swift b/code-gen-library/SelectionMatcherOnViewInit/iOS.swift new file mode 100644 index 000000000..72397bb27 --- /dev/null +++ b/code-gen-library/SelectionMatcherOnViewInit/iOS.swift @@ -0,0 +1,33 @@ +//begin imports +//end imports + +public class SelectionMatcherOnViewInit { + + //begin eventHandler + //Swift: Action + public func selectionMatcherOnViewInit() { + + let chart = CodeGenHelper.getDescription(IgsCategoryChart.self, "content")! + DispatchQueue.main.asyncAfter(deadline: .now() + 0.1) { + let data = CodeGenHelper.findByName([Any?].self, "energyRenewableConsumption")! + + let matcher = IgsSeriesMatcher() + let selection = IgsChartSelection() + selection.item = data[1] + matcher.memberPath = "hydro" + matcher.memberPathType = "ValueMemberPath" + selection.matcher = matcher + chart.selectedSeriesItems!.add(item: selection) + + let matcher2 = IgsSeriesMatcher() + let selection2 = IgsChartSelection() + selection2.item = data[2] + matcher2.memberPath = "wind" + matcher2.memberPathType = "ValueMemberPath" + selection2.matcher = matcher2 + + chart.selectedSeriesItems!.add(item: selection2) + } + } + //end eventHandler +} diff --git a/code-gen-library/SingersCustomers/XPLAT-CONFIG.json b/code-gen-library/SingersCustomers/XPLAT-CONFIG.json new file mode 100644 index 000000000..40727ac66 --- /dev/null +++ b/code-gen-library/SingersCustomers/XPLAT-CONFIG.json @@ -0,0 +1,7 @@ +[{ + "platform": "Kotlin", + "location": "jsonFile" +},{ + "platform": "Swift", + "location": "jsonFile" +}] \ No newline at end of file diff --git a/code-gen-library/StockAmazon/XPLAT-CONFIG.json b/code-gen-library/StockAmazon/XPLAT-CONFIG.json new file mode 100644 index 000000000..40727ac66 --- /dev/null +++ b/code-gen-library/StockAmazon/XPLAT-CONFIG.json @@ -0,0 +1,7 @@ +[{ + "platform": "Kotlin", + "location": "jsonFile" +},{ + "platform": "Swift", + "location": "jsonFile" +}] \ No newline at end of file diff --git a/code-gen-library/StockGoogle/WPF.cs b/code-gen-library/StockGoogle/Desktop.cs similarity index 100% rename from code-gen-library/StockGoogle/WPF.cs rename to code-gen-library/StockGoogle/Desktop.cs diff --git a/code-gen-library/StockMarket100/XPLAT-CONFIG.json b/code-gen-library/StockMarket100/XPLAT-CONFIG.json new file mode 100644 index 000000000..40727ac66 --- /dev/null +++ b/code-gen-library/StockMarket100/XPLAT-CONFIG.json @@ -0,0 +1,7 @@ +[{ + "platform": "Kotlin", + "location": "jsonFile" +},{ + "platform": "Swift", + "location": "jsonFile" +}] \ No newline at end of file diff --git a/code-gen-library/StockMarket1000/XPLAT-CONFIG.json b/code-gen-library/StockMarket1000/XPLAT-CONFIG.json new file mode 100644 index 000000000..40727ac66 --- /dev/null +++ b/code-gen-library/StockMarket1000/XPLAT-CONFIG.json @@ -0,0 +1,7 @@ +[{ + "platform": "Kotlin", + "location": "jsonFile" +},{ + "platform": "Swift", + "location": "jsonFile" +}] \ No newline at end of file diff --git a/code-gen-library/StockMarket2000/XPLAT-CONFIG.json b/code-gen-library/StockMarket2000/XPLAT-CONFIG.json new file mode 100644 index 000000000..40727ac66 --- /dev/null +++ b/code-gen-library/StockMarket2000/XPLAT-CONFIG.json @@ -0,0 +1,7 @@ +[{ + "platform": "Kotlin", + "location": "jsonFile" +},{ + "platform": "Swift", + "location": "jsonFile" +}] \ No newline at end of file diff --git a/code-gen-library/StockMarket500/XPLAT-CONFIG.json b/code-gen-library/StockMarket500/XPLAT-CONFIG.json new file mode 100644 index 000000000..40727ac66 --- /dev/null +++ b/code-gen-library/StockMarket500/XPLAT-CONFIG.json @@ -0,0 +1,7 @@ +[{ + "platform": "Kotlin", + "location": "jsonFile" +},{ + "platform": "Swift", + "location": "jsonFile" +}] \ No newline at end of file diff --git a/code-gen-library/StockMicrosoft/XPLAT-CONFIG.json b/code-gen-library/StockMicrosoft/XPLAT-CONFIG.json new file mode 100644 index 000000000..40727ac66 --- /dev/null +++ b/code-gen-library/StockMicrosoft/XPLAT-CONFIG.json @@ -0,0 +1,7 @@ +[{ + "platform": "Kotlin", + "location": "jsonFile" +},{ + "platform": "Swift", + "location": "jsonFile" +}] \ No newline at end of file diff --git a/code-gen-library/StockSP500Cap/XPLAT-CONFIG.json b/code-gen-library/StockSP500Cap/XPLAT-CONFIG.json new file mode 100644 index 000000000..40727ac66 --- /dev/null +++ b/code-gen-library/StockSP500Cap/XPLAT-CONFIG.json @@ -0,0 +1,7 @@ +[{ + "platform": "Kotlin", + "location": "jsonFile" +},{ + "platform": "Swift", + "location": "jsonFile" +}] \ No newline at end of file diff --git a/code-gen-library/StockTesla/XPLAT-CONFIG.json b/code-gen-library/StockTesla/XPLAT-CONFIG.json new file mode 100644 index 000000000..40727ac66 --- /dev/null +++ b/code-gen-library/StockTesla/XPLAT-CONFIG.json @@ -0,0 +1,7 @@ +[{ + "platform": "Kotlin", + "location": "jsonFile" +},{ + "platform": "Swift", + "location": "jsonFile" +}] \ No newline at end of file diff --git a/code-gen-library/TestsAddDataLegendHeaderFormatSpecfierLongWeekday/Android.kt b/code-gen-library/TestsAddDataLegendHeaderFormatSpecfierLongWeekday/Android.kt new file mode 100644 index 000000000..373f9ccba --- /dev/null +++ b/code-gen-library/TestsAddDataLegendHeaderFormatSpecfierLongWeekday/Android.kt @@ -0,0 +1,27 @@ +//begin imports +import com.infragistics.mobile.controls.IgaDataLegend; +import com.infragistics.mobile.controls.DateTimeFormatSpecifier; +//end imports + +import com.infragistics.mobile.controls.CodeGenHelper; + +public class TestsAddDataLegendHeaderFormatSpecfierLongWeekday +{ + + //begin eventHandler + //Kotlin: Action + public fun testsAddDataLegendHeaderFormatSpecfierLongWeekday(){ + // TODO: lond weekday cannot currently be set in WPF + + var legend = CodeGenHelper.getDescription("secondary")!!; + legend.headerFormatSpecifiers = arrayOf( + DateTimeFormatSpecifier().apply { + locale = "en-US"; + dateStyle = "short"; + } + ); + + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsAddDataLegendHeaderFormatSpecfierLongWeekday/Desktop.cs b/code-gen-library/TestsAddDataLegendHeaderFormatSpecfierLongWeekday/Desktop.cs new file mode 100644 index 000000000..df92aed1a --- /dev/null +++ b/code-gen-library/TestsAddDataLegendHeaderFormatSpecfierLongWeekday/Desktop.cs @@ -0,0 +1,26 @@ +//begin imports +using Infragistics.Controls; +using Infragistics.Controls.Charts; +//end imports + +public class TestsAddDataLegendHeaderFormatSpecfierLongWeekday +{ + + //begin eventHandler + //WPF: System.Action + public void TestsAddDataLegendHeaderFormatSpecfierLongWeekday(){ + // TODO: lond weekday cannot currently be set in WPF + + var legend = CodeGenHelper.GetDescription("secondary"); + legend.HeaderFormatSpecifiers = new object[1] { + new DateTimeFormatSpecifier() + { + Locale = "en-US", + DateStyle = "short" + } + }; + + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsAddDataLegendHeaderFormatSpecfierLongWeekday/Web.ts b/code-gen-library/TestsAddDataLegendHeaderFormatSpecfierLongWeekday/Web.ts new file mode 100644 index 000000000..e2dc1b61f --- /dev/null +++ b/code-gen-library/TestsAddDataLegendHeaderFormatSpecfierLongWeekday/Web.ts @@ -0,0 +1,22 @@ +//begin imports +import { IgcDataLegendComponent } from 'igniteui-webcomponents-charts'; +import { IgcDateTimeFormatSpecifier } from 'igniteui-webcomponents-core'; +//end imports + +export class TestsAddDataLegendHeaderFormatSpecfierLongWeekday +{ + + //begin eventHandler + public testsAddDataLegendHeaderFormatSpecfierLongWeekday(): void{ + // TODO: lond weekday cannot currently be set in WPF + + var legend = CodeGenHelper.getDescription("secondary"); + const spec: IgcDateTimeFormatSpecifier = new IgcDateTimeFormatSpecifier(); + spec.locale = "en-US"; + spec.dateStyle = "short"; + legend.headerFormatSpecifiers = [spec]; + + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsAddDataLegendHeaderFormatSpecfierLongWeekday/iOS.swift b/code-gen-library/TestsAddDataLegendHeaderFormatSpecfierLongWeekday/iOS.swift new file mode 100644 index 000000000..09f85d514 --- /dev/null +++ b/code-gen-library/TestsAddDataLegendHeaderFormatSpecfierLongWeekday/iOS.swift @@ -0,0 +1,21 @@ +//begin imports +//end imports + +public class TestsAddDataLegendHeaderFormatSpecfierLongWeekday { + + //begin eventHandler + //Swift: Action + public func testsAddDataLegendHeaderFormatSpecfierLongWeekday() { + // TODO: long weekday cannot currently be set in WPF + + let legend = CodeGenHelper.getDescription(IgsDataLegend.self, "secondary")! + var spec1 = IgsDateTimeFormatSpecifier(); + spec1.locale = "en-US" + spec1.dateStyle = "short" + + legend.headerFormatSpecifiers = [ + spec1 + ] + } + //end eventHandler +} diff --git a/code-gen-library/TestsAddDataLegendHeaderFormatSpecfierTimeShort/Android.kt b/code-gen-library/TestsAddDataLegendHeaderFormatSpecfierTimeShort/Android.kt new file mode 100644 index 000000000..ded8cd2f2 --- /dev/null +++ b/code-gen-library/TestsAddDataLegendHeaderFormatSpecfierTimeShort/Android.kt @@ -0,0 +1,24 @@ +//begin imports +import com.infragistics.mobile.controls.IgaDataLegend; +import com.infragistics.mobile.controls.DateTimeFormatSpecifier; +//end imports + +import com.infragistics.mobile.controls.CodeGenHelper; + +public class TestsAddDataLegendHeaderFormatSpecfierTimeShort +{ + + //begin eventHandler + //Kotlin: Action + public fun testsAddDataLegendHeaderFormatSpecfierTimeShort(){ + var legend = CodeGenHelper.getDescription("secondary")!!; + legend.headerFormatSpecifiers = arrayOf( + DateTimeFormatSpecifier().apply { + locale = "en-US"; + timeStyle = "short"; + } + ); + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsAddDataLegendHeaderFormatSpecfierTimeShort/Desktop.cs b/code-gen-library/TestsAddDataLegendHeaderFormatSpecfierTimeShort/Desktop.cs new file mode 100644 index 000000000..3fce19e53 --- /dev/null +++ b/code-gen-library/TestsAddDataLegendHeaderFormatSpecfierTimeShort/Desktop.cs @@ -0,0 +1,23 @@ +//begin imports +using Infragistics.Controls; +using Infragistics.Controls.Charts; +//end imports + +public class TestsAddDataLegendHeaderFormatSpecfierTimeShort +{ + + //begin eventHandler + //WPF: System.Action + public void TestsAddDataLegendHeaderFormatSpecfierTimeShort(){ + var legend = CodeGenHelper.GetDescription("secondary"); + legend.HeaderFormatSpecifiers = new object[1] { + new DateTimeFormatSpecifier() + { + Locale = "en-US", + TimeStyle = "short" + } + }; + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsAddDataLegendHeaderFormatSpecfierTimeShort/Web.ts b/code-gen-library/TestsAddDataLegendHeaderFormatSpecfierTimeShort/Web.ts new file mode 100644 index 000000000..353a27a45 --- /dev/null +++ b/code-gen-library/TestsAddDataLegendHeaderFormatSpecfierTimeShort/Web.ts @@ -0,0 +1,20 @@ +//begin imports +import { IgcDataLegendComponent } from 'igniteui-webcomponents-charts'; +import { IgcDateTimeFormatSpecifier } from 'igniteui-webcomponents-core'; + +//end imports + +export class TestsAddDataLegendHeaderFormatSpecfierTimeShort +{ + + //begin eventHandler + public testsAddDataLegendHeaderFormatSpecfierTimeShort(){ + var legend = CodeGenHelper.getDescription("secondary"); + const spec: IgcDateTimeFormatSpecifier = new IgcDateTimeFormatSpecifier(); + spec.locale = "en-US"; + spec.timeStyle = "short"; + legend.headerFormatSpecifiers = [spec]; + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsAddDataLegendHeaderFormatSpecfierTimeShort/iOS.swift b/code-gen-library/TestsAddDataLegendHeaderFormatSpecfierTimeShort/iOS.swift new file mode 100644 index 000000000..5c9934a12 --- /dev/null +++ b/code-gen-library/TestsAddDataLegendHeaderFormatSpecfierTimeShort/iOS.swift @@ -0,0 +1,19 @@ +//begin imports +//end imports + +public class TestsAddDataLegendHeaderFormatSpecfierTimeShort { + + //begin eventHandler + //Swift: Action + public func testsAddDataLegendHeaderFormatSpecfierTimeShort() { + let legend = CodeGenHelper.getDescription(IgsDataLegend.self, "secondary")! + var spec1 = IgsDateTimeFormatSpecifier(); + spec1.locale = "en-US" + spec1.timeStyle = "short" + + legend.headerFormatSpecifiers = [ + spec1 + ] + } + //end eventHandler +} diff --git a/code-gen-library/TestsAddDataLegendHeaderSimpleFormatSpecfier/Android.kt b/code-gen-library/TestsAddDataLegendHeaderSimpleFormatSpecfier/Android.kt new file mode 100644 index 000000000..80b475c0e --- /dev/null +++ b/code-gen-library/TestsAddDataLegendHeaderSimpleFormatSpecfier/Android.kt @@ -0,0 +1,23 @@ +//begin imports +import com.infragistics.mobile.controls.IgaDataLegend +import com.infragistics.mobile.controls.DateTimeFormatSpecifier +//end imports + +import com.infragistics.mobile.controls.CodeGenHelper + +public class TestsAddDataLegendHeaderSimpleFormatSpecfier { + + //begin eventHandler + //Kotlin: Action + public fun testsAddDataLegendHeaderSimpleFormatSpecfier() { + val legend = CodeGenHelper.getDescription("secondary")!!; + legend.headerFormatSpecifiers = arrayOf( + DateTimeFormatSpecifier().apply { + locale = "en-US" + dateStyle = "long" + } + ) + } + //end eventHandler + +} diff --git a/code-gen-library/TestsAddDataLegendHeaderSimpleFormatSpecfier/Desktop.cs b/code-gen-library/TestsAddDataLegendHeaderSimpleFormatSpecfier/Desktop.cs new file mode 100644 index 000000000..79700a296 --- /dev/null +++ b/code-gen-library/TestsAddDataLegendHeaderSimpleFormatSpecfier/Desktop.cs @@ -0,0 +1,23 @@ +//begin imports +using Infragistics.Controls; +using Infragistics.Controls.Charts; +//end imports + +public class TestsAddDataLegendHeaderSimpleFormatSpecfier +{ + + //begin eventHandler + //WPF: System.Action + public void TestsAddDataLegendHeaderSimpleFormatSpecfier(){ + var legend = CodeGenHelper.GetDescription("secondary"); + legend.HeaderFormatSpecifiers = new object[1] { + new DateTimeFormatSpecifier() + { + Locale = "en-US", + DateStyle = "long" + } + }; + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsAddDataLegendHeaderSimpleFormatSpecfier/Web.ts b/code-gen-library/TestsAddDataLegendHeaderSimpleFormatSpecfier/Web.ts new file mode 100644 index 000000000..ccbbf1a9a --- /dev/null +++ b/code-gen-library/TestsAddDataLegendHeaderSimpleFormatSpecfier/Web.ts @@ -0,0 +1,19 @@ +//begin imports +import { IgcDataLegendComponent } from 'igniteui-webcomponents-charts'; +import { IgcDateTimeFormatSpecifier } from 'igniteui-webcomponents-core'; +//end imports + +export class TestsAddDataLegendHeaderSimpleFormatSpecfier +{ + + //begin eventHandler + public testsAddDataLegendHeaderSimpleFormatSpecfier(){ + var legend = CodeGenHelper.getDescription("secondary"); + const spec: IgcDateTimeFormatSpecifier = new IgcDateTimeFormatSpecifier(); + spec.locale = "en-US"; + spec.dateStyle = "long"; + legend.headerFormatSpecifiers = [spec]; + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsAddDataLegendHeaderSimpleFormatSpecfier/iOS.swift b/code-gen-library/TestsAddDataLegendHeaderSimpleFormatSpecfier/iOS.swift new file mode 100644 index 000000000..fa3e56af1 --- /dev/null +++ b/code-gen-library/TestsAddDataLegendHeaderSimpleFormatSpecfier/iOS.swift @@ -0,0 +1,19 @@ +//begin imports +//end imports + +public class TestsAddDataLegendHeaderSimpleFormatSpecfier { + + //begin eventHandler + //Swift: Action + public func testsAddDataLegendHeaderSimpleFormatSpecfier() { + let legend = CodeGenHelper.getDescription(IgsDataLegend.self, "secondary")! + var spec1 = IgsDateTimeFormatSpecifier(); + spec1.locale = "en-US" + spec1.dateStyle = "long" + + legend.headerFormatSpecifiers = [ + spec1 + ] + } + //end eventHandler +} diff --git a/code-gen-library/TestsAddDataLegendHeaderSimpleFormatSpecfierShort/Android.kt b/code-gen-library/TestsAddDataLegendHeaderSimpleFormatSpecfierShort/Android.kt new file mode 100644 index 000000000..674909cb5 --- /dev/null +++ b/code-gen-library/TestsAddDataLegendHeaderSimpleFormatSpecfierShort/Android.kt @@ -0,0 +1,18 @@ +//begin imports +//end imports + +public class TestsAddDataLegendHeaderSimpleFormatSpecfierShort { + + //begin eventHandler + //Kotlin: Action + public func testsAddDataLegendHeaderSimpleFormatSpecfierShort() { + let legend = CodeGenHelper.getDescription(IgsDataLegend.self, "secondary")! + legend.headerFormatSpecifiers = [ + IgsDateTimeFormatSpecifier().apply { + $0.locale = "en-US" + $0.dateStyle = "short" + } + ] + } + //end eventHandler +} diff --git a/code-gen-library/TestsAddDataLegendHeaderSimpleFormatSpecfierShort/Desktop.cs b/code-gen-library/TestsAddDataLegendHeaderSimpleFormatSpecfierShort/Desktop.cs new file mode 100644 index 000000000..5d84e6319 --- /dev/null +++ b/code-gen-library/TestsAddDataLegendHeaderSimpleFormatSpecfierShort/Desktop.cs @@ -0,0 +1,23 @@ +//begin imports +using Infragistics.Controls; +using Infragistics.Controls.Charts; +//end imports + +public class TestsAddDataLegendHeaderSimpleFormatSpecfierShort +{ + + //begin eventHandler + //WPF: System.Action + public void TestsAddDataLegendHeaderSimpleFormatSpecfierShort(){ + var legend = CodeGenHelper.GetDescription("secondary"); + legend.HeaderFormatSpecifiers = new object[1] { + new DateTimeFormatSpecifier() + { + Locale = "en-US", + DateStyle = "short" + } + }; + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsAddDataLegendHeaderSimpleFormatSpecfierShort/Web.ts b/code-gen-library/TestsAddDataLegendHeaderSimpleFormatSpecfierShort/Web.ts new file mode 100644 index 000000000..5e756a03e --- /dev/null +++ b/code-gen-library/TestsAddDataLegendHeaderSimpleFormatSpecfierShort/Web.ts @@ -0,0 +1,19 @@ +//begin imports +import { IgcDataLegendComponent } from 'igniteui-webcomponents-charts'; +import { IgcDateTimeFormatSpecifier } from 'igniteui-webcomponents-core'; +//end imports + +export class TestsAddDataLegendHeaderSimpleFormatSpecfierShort +{ + + //begin eventHandler + public testsAddDataLegendHeaderSimpleFormatSpecfierShort(){ + var legend = CodeGenHelper.getDescription("secondary"); + const spec: IgcDateTimeFormatSpecifier = new IgcDateTimeFormatSpecifier(); + spec.locale = "en-US"; + spec.dateStyle = "short"; + legend.headerFormatSpecifiers = [spec]; + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsAddDataLegendHeaderSimpleFormatSpecfierShort/iOS.swift b/code-gen-library/TestsAddDataLegendHeaderSimpleFormatSpecfierShort/iOS.swift new file mode 100644 index 000000000..aaf97bf04 --- /dev/null +++ b/code-gen-library/TestsAddDataLegendHeaderSimpleFormatSpecfierShort/iOS.swift @@ -0,0 +1,22 @@ +//begin imports +//end imports + +import com.infragistics.mobile.controls.CodeGenHelper + +public class TestsAddDataLegendHeaderSimpleFormatSpecfierShort { + + //begin eventHandler + //Swift: Action + public func testsAddDataLegendHeaderSimpleFormatSpecfierShort() { + let legend = CodeGenHelper.getDescription(IgsDataLegend.self, "secondary")! + var spec1 = IgsDateTimeFormatSpecifier(); + spec1.locale = "en-US" + spec1.dateStyle = "short" + + legend.headerFormatSpecifiers = [ + spec1 + ] + } + //end eventHandler + +} diff --git a/code-gen-library/TestsAddDataLegendValueFormatSpecifier/Android.kt b/code-gen-library/TestsAddDataLegendValueFormatSpecifier/Android.kt new file mode 100644 index 000000000..613d1346d --- /dev/null +++ b/code-gen-library/TestsAddDataLegendValueFormatSpecifier/Android.kt @@ -0,0 +1,38 @@ +//begin imports +import com.infragistics.mobile.controls.IgaDataLegend +import com.infragistics.mobile.controls.NumberFormatSpecifier +import com.infragistics.mobile.controls.FormatSpecifier +import com.infragistics.mobile.controls.JsonDictionaryObject +import com.infragistics.mobile.controls.JsonDictionaryValue +import com.infragistics.mobile.controls.JsonDictionaryParser +//end imports + +import com.infragistics.mobile.controls.CodeGenHelper + +public class TestsAddDataLegendValueFormatSpecifier { + + //begin eventHandler + //Kotlin: Action + public fun testsAddDataLegendValueFormatSpecifier() { + val legend = CodeGenHelper.getDescription("secondary")!! + val jVal = CodeGenHelper.findByName("DataLegendValueFormatSpecifier")!! + var parser = JsonDictionaryParser(); + val formatterInfo = parser.parse(((jVal as JsonDictionaryValue).value as String)) as JsonDictionaryObject; + val numSpec = NumberFormatSpecifier() + + for (key in formatterInfo.getKeys()!!) { + when (key) { + "MaximumFractionDigits" -> numSpec.maximumFractionDigits = ((formatterInfo[key] as JsonDictionaryValue).value as Double).toInt(); + "MinimumFractionDigits" -> numSpec.minimumFractionDigits = ((formatterInfo[key] as JsonDictionaryValue).value as Double).toInt(); + "MinimumIntegerDigits" -> numSpec.minimumIntegerDigits = ((formatterInfo[key] as JsonDictionaryValue).value as Double).toInt(); + "Locale" -> numSpec.locale = (formatterInfo[key] as JsonDictionaryValue).value as String?; + "UseGrouping" -> numSpec.useGrouping = (formatterInfo[key] as JsonDictionaryValue).value as Boolean; + "Style" -> numSpec.style = (formatterInfo[key] as JsonDictionaryValue).value as String?; + } + } + + legend.valueFormatSpecifiers = arrayOf(numSpec) + } + //end eventHandler + +} diff --git a/code-gen-library/TestsAddDataLegendValueFormatSpecifier/WPF.cs b/code-gen-library/TestsAddDataLegendValueFormatSpecifier/WPF.cs new file mode 100644 index 000000000..406de181f --- /dev/null +++ b/code-gen-library/TestsAddDataLegendValueFormatSpecifier/WPF.cs @@ -0,0 +1,46 @@ +//begin imports +using Infragistics.Controls; +using Infragistics.Controls.Charts; +using Newtonsoft.Json.Linq; +//end imports + +public class TestsAddDataLegendValueFormatSpecifier +{ + + //begin eventHandler + //WPF: System.Action + public void TestsAddDataLegendValueFormatSpecifier(){ + var legend = CodeGenHelper.GetDescription("secondary"); + var jVal = CodeGenHelper.FindByName("DataLegendValueFormatSpecifier"); + var formatterInfo = JObject.Parse(jVal.ToString()); + NumberFormatSpecifier numSpec = new NumberFormatSpecifier(); + foreach (var prop in formatterInfo.Properties()) + { + switch (prop.Name) { + case "MaximumFractionDigits": + numSpec.MaximumFractionDigits = (int)prop.Value; + break; + case "MinimumFractionDigits": + numSpec.MinimumFractionDigits = (int)prop.Value; + break; + case "MinimumIntegerDigits": + numSpec.MinimumIntegerDigits = (int)prop.Value; + break; + case "Locale": + numSpec.Locale = prop.Value.ToString(); + break; + case "UseGrouping": + numSpec.UseGrouping = (bool)prop.Value; + break; + case "Style": + numSpec.Style = prop.Value.ToString(); + break; + + } + } + + legend.ValueFormatSpecifiers = new FormatSpecifier[1] {numSpec}; + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsAddDataLegendValueFormatSpecifier/Web.ts b/code-gen-library/TestsAddDataLegendValueFormatSpecifier/Web.ts new file mode 100644 index 000000000..8c64268d6 --- /dev/null +++ b/code-gen-library/TestsAddDataLegendValueFormatSpecifier/Web.ts @@ -0,0 +1,51 @@ +//begin imports +import { IgcDataLegendComponent } from 'igniteui-webcomponents-charts'; +import { IgcNumberFormatSpecifier,JsonDictionaryObject, JsonDictionaryParser,JsonDictionaryItem} from 'igniteui-webcomponents-core'; +//end imports + +export class TestsAddDataLegendValueFormatSpecifier +{ + + //begin eventHandler + public testsAddDataLegendValueFormatSpecifier(){ + var legend = CodeGenHelper.getDescription("secondary"); + const jVal = CodeGenHelper.findByName("DataLegendValueFormatSpecifier"); + var numSpec = new IgcNumberFormatSpecifier(); + var parser = new JsonDictionaryParser(); + var formatterInfo: JsonDictionaryObject = parser.parse(jVal.value) as JsonDictionaryObject; + const keys = formatterInfo.getKeys() + keys.forEach((prop) => { + var item = formatterInfo.item(prop); + let v = item["value"]; + if (v != null){ + switch (prop) { + case "MaximumFractionDigits": + numSpec.maximumFractionDigits = parseInt(v.toString()); + break; + case "MinimumFractionDigits": + numSpec.minimumFractionDigits = parseInt(v.toString()); + break; + case "MinimumIntegerDigits": + let v2 = parseInt(v.toString()); + if (v2 != 0) + numSpec.minimumIntegerDigits = v2; + break; + case "Locale": + numSpec.locale = v; + break; + case "UseGrouping": + numSpec.useGrouping = v; + break; + case "Style": + numSpec.style = v; + break; + + } + } + }) + legend.valueFormatSpecifiers = [numSpec]; + + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsAddDataLegendValueFormatSpecifier/WindowsForms.cs b/code-gen-library/TestsAddDataLegendValueFormatSpecifier/WindowsForms.cs new file mode 100644 index 000000000..31722c541 --- /dev/null +++ b/code-gen-library/TestsAddDataLegendValueFormatSpecifier/WindowsForms.cs @@ -0,0 +1,49 @@ +//begin imports +using Infragistics.Controls; +using Infragistics.Controls.Charts; +using Newtonsoft.Json.Linq; +using Infragistics.Win.Description; +//end imports + +public class TestsAddDataLegendValueFormatSpecifier +{ + + //begin eventHandler + //WPF: System.Action + public void TestsAddDataLegendValueFormatSpecifier(){ + var parser = new JsonDictionaryParser(); + var legend = CodeGenHelper.GetDescription("secondary"); + var jVal = CodeGenHelper.FindByName("DataLegendValueFormatSpecifier"); + var formatterInfo = (JsonDictionaryObject)parser.Parse((string)((JsonDictionaryValue)jVal).Value); + + NumberFormatSpecifier numSpec = new NumberFormatSpecifier(); + foreach (var prop in formatterInfo.GetKeys()) + { + switch (prop) { + case "MaximumFractionDigits": + numSpec.MaximumFractionDigits = (int)(double)(((JsonDictionaryValue)(formatterInfo[prop])).Value); + break; + case "MinimumFractionDigits": + numSpec.MinimumFractionDigits = (int)(double)(((JsonDictionaryValue)(formatterInfo[prop])).Value); + break; + case "MinimumIntegerDigits": + numSpec.MinimumIntegerDigits = (int)(double)(((JsonDictionaryValue)(formatterInfo[prop])).Value); + break; + case "Locale": + numSpec.Locale = (string)(((JsonDictionaryValue)(formatterInfo[prop])).Value); + break; + case "UseGrouping": + numSpec.UseGrouping = (bool)(((JsonDictionaryValue)(formatterInfo[prop])).Value); + break; + case "Style": + numSpec.Style = (string)(((JsonDictionaryValue)(formatterInfo[prop])).Value); + break; + + } + } + + legend.ValueFormatSpecifiers = new FormatSpecifier[1] {numSpec}; + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsAddDataLegendValueFormatSpecifier/iOS.swift b/code-gen-library/TestsAddDataLegendValueFormatSpecifier/iOS.swift new file mode 100644 index 000000000..ef37ba256 --- /dev/null +++ b/code-gen-library/TestsAddDataLegendValueFormatSpecifier/iOS.swift @@ -0,0 +1,34 @@ +//begin imports +//end imports + +public class TestsAddDataLegendValueFormatSpecifier { + + //begin eventHandler + //Swift: Action + public func testsAddDataLegendValueFormatSpecifier() { + let dataPie = CodeGenHelper.getDescription(IgsDataPieChart.self, "content")! + + var spec1 = IgsNumberFormatSpecifier(); + spec1.locale = "en-US" + spec1.minimumIntegerDigits = 4 + spec1.minimumFractionDigits = 2 + spec1.maximumFractionDigits = 2 + spec1.useGrouping = false + + dataPie.sliceLabelFormatSpecifiers = [ + spec1 + ] + + var spec2 = IgsNumberFormatSpecifier(); + spec2.locale = "en-US" + spec2.minimumIntegerDigits = 4 + spec2.minimumFractionDigits = 2 + spec2.maximumFractionDigits = 2 + spec2.useGrouping = false + + dataPie.othersSliceLabelFormatSpecifiers = [ + spec2 + ] + } + //end eventHandler +} diff --git a/code-gen-library/TestsAddDataPieNumberFormatter/Android.kt b/code-gen-library/TestsAddDataPieNumberFormatter/Android.kt new file mode 100644 index 000000000..9424fcf0a --- /dev/null +++ b/code-gen-library/TestsAddDataPieNumberFormatter/Android.kt @@ -0,0 +1,38 @@ +//begin imports +import com.infragistics.mobile.controls.IgaDataPieChart +import com.infragistics.mobile.controls.NumberFormatSpecifier +//end imports + +import com.infragistics.mobile.controls.CodeGenHelper + +public class TestsAddDataPieNumberFormatter { + + //begin eventHandler + //Kotlin: Action + public fun testsAddDataPieNumberFormatter() { + + val dataPie = CodeGenHelper.getDescription("content")!!; + + dataPie.sliceLabelFormatSpecifiers = arrayOf( + NumberFormatSpecifier().apply { + locale = "en-US" + minimumIntegerDigits = 4 + minimumFractionDigits = 2 + maximumFractionDigits = 2 + useGrouping = false + } + ) + + dataPie.othersSliceLabelFormatSpecifiers = arrayOf( + NumberFormatSpecifier().apply { + locale = "en-US" + minimumIntegerDigits = 4 + minimumFractionDigits = 2 + maximumFractionDigits = 2 + useGrouping = false + } + ) + } + //end eventHandler + +} diff --git a/code-gen-library/TestsAddDataPieNumberFormatter/Desktop.cs b/code-gen-library/TestsAddDataPieNumberFormatter/Desktop.cs new file mode 100644 index 000000000..6c06d061c --- /dev/null +++ b/code-gen-library/TestsAddDataPieNumberFormatter/Desktop.cs @@ -0,0 +1,40 @@ +//begin imports +using Infragistics.Controls; +using Infragistics.Controls.Charts; +//end imports + +public class TestsAddDataPieNumberFormatter +{ + + //begin eventHandler + //WPF: System.Action + public void TestsAddDataPieNumberFormatter(){ + + + var dataPie = CodeGenHelper.GetDescription("content"); + + dataPie.SliceLabelFormatSpecifiers = new object[1] { + new NumberFormatSpecifier() + { + Locale = "en-US", + MinimumIntegerDigits = 4, + MinimumFractionDigits = 2, + MaximumFractionDigits = 2, + UseGrouping = false + } + }; + dataPie.OthersSliceLabelFormatSpecifiers = new object[1] { + new NumberFormatSpecifier() + { + Locale = "en-US", + MinimumIntegerDigits = 4, + MinimumFractionDigits = 2, + MaximumFractionDigits = 2, + UseGrouping = false + } + }; + + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsAddDataPieNumberFormatter/Web.ts b/code-gen-library/TestsAddDataPieNumberFormatter/Web.ts new file mode 100644 index 000000000..29e1d8661 --- /dev/null +++ b/code-gen-library/TestsAddDataPieNumberFormatter/Web.ts @@ -0,0 +1,30 @@ +//begin imports +import { IgcDataPieChartComponent } from 'igniteui-webcomponents-charts'; +import { NumberFormatSpecifier } from 'igniteui-webcomponents-core'; +//end imports + +export class TestsAddDataPieNumberFormatter +{ + + //begin eventHandler + //WPF: System.Action + public testsAddDataPieNumberFormatter(){ + + + var dataPie = CodeGenHelper.getDescription("content"); + var formaters: NumberFormatSpecifier[] = []; + var spec = new NumberFormatSpecifier(); + spec.locale = "en-US", + spec.minimumIntegerDigits = 4, + spec.minimumFractionDigits = 2, + spec.maximumFractionDigits = 2, + spec.useGrouping = false + formaters.push(spec); + dataPie.sliceLabelFormatSpecifiers = formaters; + + dataPie.othersSliceLabelFormatSpecifiers = formaters; + + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsAddDataPieNumberFormatter/iOS.swift b/code-gen-library/TestsAddDataPieNumberFormatter/iOS.swift new file mode 100644 index 000000000..42ece6c56 --- /dev/null +++ b/code-gen-library/TestsAddDataPieNumberFormatter/iOS.swift @@ -0,0 +1,35 @@ +//begin imports +//end imports + +public class TestsAddDataPieNumberFormatter { + + //begin eventHandler + //Swift: Action + public func testsAddDataPieNumberFormatter() { + + let dataPie = CodeGenHelper.getDescription(IgsDataPieChart.self, "content")! + + var spec1 = IgsNumberFormatSpecifier(); + spec1.locale = "en-US" + spec1.minimumIntegerDigits = 4 + spec1.minimumFractionDigits = 2 + spec1.maximumFractionDigits = 2 + spec1.useGrouping = false + + dataPie.sliceLabelFormatSpecifiers = [ + spec1 + ] + + var spec2 = IgsNumberFormatSpecifier(); + spec2.locale = "en-US" + spec2.minimumIntegerDigits = 4 + spec2.minimumFractionDigits = 2 + spec2.maximumFractionDigits = 2 + spec2.useGrouping = false + + dataPie.othersSliceLabelFormatSpecifiers = [ + spec2 + ] + } + //end eventHandler +} diff --git a/code-gen-library/TestsAddNameTooltip/Android.kt b/code-gen-library/TestsAddNameTooltip/Android.kt new file mode 100644 index 000000000..25e24913e --- /dev/null +++ b/code-gen-library/TestsAddNameTooltip/Android.kt @@ -0,0 +1,36 @@ +//begin imports +import com.infragistics.mobile.controls.IgaDataChart +import com.infragistics.mobile.controls.IgaSeries +import android.widget.TextView +import com.infragistics.mobile.controls.IgaChartToolTipUpdatingEventArgs +import com.infragistics.mobile.controls.IgaChartToolTipUpdatingEventHandler +//end imports + +import com.infragistics.mobile.controls.CodeGenHelper + +public class TestsAddNameTooltip { + + //begin eventHandler + //Kotlin: Action + public fun testsAddNameTooltip() { + val chart = CodeGenHelper.getDescription("content")!!; + for (series in chart.series!!.toArray()) { + if (!series!!.isLayer) { + series.chartToolTipUpdating = object : IgaChartToolTipUpdatingEventHandler { + override fun invoke(sender: Any?, args: IgaChartToolTipUpdatingEventArgs?) { + var cv = args!!.currentView; + if (cv == null) { + var tv = android.widget.TextView(chart.context); + cv = tv; + args!!.currentView = cv; + } + val item = args!!.currentData!!.item as Map; + (cv as android.widget.TextView).text = item["Name"] as String; + } + } + } + } + } + //end eventHandler + +} diff --git a/code-gen-library/TestsAddNameTooltip/React.tsx b/code-gen-library/TestsAddNameTooltip/React.tsx new file mode 100644 index 000000000..8450a3652 --- /dev/null +++ b/code-gen-library/TestsAddNameTooltip/React.tsx @@ -0,0 +1,28 @@ +//begin imports +import { IChartTooltipProps } from 'igniteui-react-core'; +import { IgrDataChart } from 'igniteui-react-charts'; +//end imports + +import { CodeGenHelper } from 'igniteui-react-core'; + +export class TestsAddNameTooltip +{ + + //begin eventHandler + public testsAddNameTooltip(): void { + + var chart = CodeGenHelper.getDescription("content"); + for(let i=0;i ( +
+
{context.dataContext.item.Name}
+
+ ) + } + } + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsAddNameTooltip/WPF.cs b/code-gen-library/TestsAddNameTooltip/WPF.cs new file mode 100644 index 000000000..8f9b32e2b --- /dev/null +++ b/code-gen-library/TestsAddNameTooltip/WPF.cs @@ -0,0 +1,28 @@ +//begin imports +using Infragistics.Controls.Charts; +//end imports + +public class TestsAddNameTooltip +{ + + //begin eventHandler + //WPF: System.Action + public void TestsAddNameTooltip(){ + var chart = CodeGenHelper.GetDescription("content"); + foreach(var series in chart.Series) + { + if (!series.IsLayer) + { + var textBlock = new TextBlock(); + textBlock.SetBinding(TextBlock.TextProperty, + new Binding() + { + Path = new PropertyPath("Item[Name]") + }); + series.ToolTip = textBlock; + } + } + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsAddNameTooltip/Web.ts b/code-gen-library/TestsAddNameTooltip/Web.ts new file mode 100644 index 000000000..d45d94d35 --- /dev/null +++ b/code-gen-library/TestsAddNameTooltip/Web.ts @@ -0,0 +1,26 @@ +//begin imports +import { IgcDataChartComponent } from 'igniteui-webcomponents-charts'; +import { html } from 'lit'; +//end imports + +export class TestsAddNameTooltip +{ + + //begin eventHandler + public testsAddNameTooltip(){ + var chart = CodeGenHelper.getDescription("content"); + for(let i=0;i{ + return html`
${context.item.Name}
`; + }); + } + } + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsAddNameTooltip/WindowsForms.cs b/code-gen-library/TestsAddNameTooltip/WindowsForms.cs new file mode 100644 index 000000000..4b77d1795 --- /dev/null +++ b/code-gen-library/TestsAddNameTooltip/WindowsForms.cs @@ -0,0 +1,48 @@ +//begin imports +using Infragistics.Win.DataVisualization; +//end imports + +public class TestsAddNameTooltip +{ + + //begin eventHandler + //WindowsForms: System.Action + public void TestsAddNameTooltip(){ + var chart = CodeGenHelper.GetDescription("content"); + //chart.TooltipContentUpdating += + foreach(var series in chart.Series) + { + if (!series.IsLayer) + { + series.TooltipContentUpdating += Series_TooltipContentUpdating; + } + } + } + + private System.Windows.Forms.Control Series_TooltipContentUpdating(object sender, ChartTooltipContentEventArgs e) + { + Panel panel = e.CurrentContent as Panel; + if (panel == null || (panel != null && !panel.Tag.Equals(e.DataContext.Item))) + { + panel = new Panel(); + panel.Tag = e.DataContext.Item; // Needed for the above check to work + + //panel.Size = new Size(300, 40); + var item = e.DataContext.Item; + string name = ""; + if (item is IDictionary) + { + name = (string)(item as IDictionary)["Name"]; + } + Label l = new Label() { Text = name, AutoSize = true }; + panel.Controls.Add(l); + + panel.Size = new Size(0,0); + panel.AutoSize = true; + panel.AutoSizeMode = AutoSizeMode.GrowAndShrink; + } + return panel; + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsAddNameTooltip/iOS.swift b/code-gen-library/TestsAddNameTooltip/iOS.swift new file mode 100644 index 000000000..ba093ea04 --- /dev/null +++ b/code-gen-library/TestsAddNameTooltip/iOS.swift @@ -0,0 +1,30 @@ +//begin imports +import UIKit; +//end imports + +public class TestsAddNameTooltip { + + //begin eventHandler + //Swift: Action + public func testsAddNameTooltip() { + let chart = CodeGenHelper.getDescription(IgsDataChart.self, "content")! + for series in chart.series?.toArray() ?? [] { + if !series!.isLayer { + series!.chartToolTipUpdating = { sender, args in + guard let args = args else { return } + var cv = args.currentView + if cv == nil { + let tv = UILabel() + cv = tv + args.currentView = cv + } + if let item = args.currentData?.item as? [String?: Any?], + let name = item["Name"] as? String { + (cv as? UILabel)?.text = name + } + } + } + } + } + //end eventHandler +} diff --git a/code-gen-library/TestsAddStaticTextTooltip/Android.kt b/code-gen-library/TestsAddStaticTextTooltip/Android.kt new file mode 100644 index 000000000..4b0e6b386 --- /dev/null +++ b/code-gen-library/TestsAddStaticTextTooltip/Android.kt @@ -0,0 +1,34 @@ +//begin imports +import com.infragistics.mobile.controls.IgaChartToolTipUpdatingEventHandler +import com.infragistics.mobile.controls.IgaChartToolTipUpdatingEventArgs +import com.infragistics.mobile.controls.IgaDataChart +import android.widget.TextView +//end imports + +import com.infragistics.mobile.controls.CodeGenHelper + +public class TestsAddStaticTextTooltip { + + //begin eventHandler + //Kotlin: Action + public fun testsAddStaticTextTooltip() { + val chart = CodeGenHelper.getDescription("content")!!; + for (series in chart.series!!.toArray()) { + if (!series!!.isLayer) { + series.chartToolTipUpdating = object : IgaChartToolTipUpdatingEventHandler { + override fun invoke(sender: Any?, args: IgaChartToolTipUpdatingEventArgs?) { + var cv = args!!.currentView; + if (cv == null) { + var tv = android.widget.TextView(chart.context); + cv = tv; + args!!.currentView = cv; + } + (cv as android.widget.TextView).text = "text" + } + } + } + } + } + //end eventHandler + +} diff --git a/code-gen-library/TestsAddStaticTextTooltip/React.tsx b/code-gen-library/TestsAddStaticTextTooltip/React.tsx new file mode 100644 index 000000000..304f50e8c --- /dev/null +++ b/code-gen-library/TestsAddStaticTextTooltip/React.tsx @@ -0,0 +1,30 @@ + +//begin imports +import { IChartTooltipProps } from 'igniteui-webcomponents-core'; +import { IgcDataChartComponent } from 'igniteui-webcomponents-charts'; +import { FunctionComponent } from 'react'; +//end imports + +import { CodeGenHelper } from 'igniteui-webcomponents-core'; + + +export class TestsAddStaticTextTooltip +{ + + //begin eventHandler + public testsAddStaticTextTooltip(){ + var chart = CodeGenHelper.getDescription("content"); + for(let i=0;i ( +
+ text +
+ ) + } + } + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsAddStaticTextTooltip/WPF.cs b/code-gen-library/TestsAddStaticTextTooltip/WPF.cs new file mode 100644 index 000000000..73035dba1 --- /dev/null +++ b/code-gen-library/TestsAddStaticTextTooltip/WPF.cs @@ -0,0 +1,23 @@ +//begin imports +using Infragistics.Controls.Charts; +//end imports + +public class TestsAddStaticTextTooltip +{ + + //begin eventHandler + //WPF: System.Action + public void TestsAddStaticTextTooltip(){ + var chart = CodeGenHelper.GetDescription("content"); + foreach (var series in chart.Series) + { + if (!series.IsLayer) + { + var textBlock = new TextBlock() { Text = "text" }; + series.ToolTip = textBlock; + } + } + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsAddStaticTextTooltip/Web.ts b/code-gen-library/TestsAddStaticTextTooltip/Web.ts new file mode 100644 index 000000000..5f83e50ac --- /dev/null +++ b/code-gen-library/TestsAddStaticTextTooltip/Web.ts @@ -0,0 +1,26 @@ +//begin imports +import { IgcDataChartComponent } from 'igniteui-webcomponents-charts'; +import { html } from 'lit'; +//end imports + +export class TestsAddStaticTextTooltip +{ + + //begin eventHandler + public testsAddStaticTextTooltip(){ + var chart = CodeGenHelper.getDescription("content"); + for(let i=0;i{ + return html`
text
`; + }); + } + } + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsAddStaticTextTooltip/WindowsForms.cs b/code-gen-library/TestsAddStaticTextTooltip/WindowsForms.cs new file mode 100644 index 000000000..85899d037 --- /dev/null +++ b/code-gen-library/TestsAddStaticTextTooltip/WindowsForms.cs @@ -0,0 +1,36 @@ +//begin imports +using Infragistics.Win.DataVisualization; +//end imports + +public class TestsAddStaticTextTool +{ + + //begin eventHandler + //WindowsForms: System.Action + public void TestsAddStaticTextTooltip(){ + var chart = CodeGenHelper.GetDescription("content"); + //chart.TooltipContentUpdating += + foreach(var series in chart.Series) + { + if (!series.IsLayer) + { + series.TooltipContentUpdating += Series_TooltipContentUpdating; + } + } + } + + private System.Windows.Forms.Control Series_TooltipContentUpdating(object sender, ChartTooltipContentEventArgs e) + { + Panel panel = e.CurrentContent as Panel; + if (panel == null ) + { + panel = new Panel(); + panel.Size = new Size(300, 40); + Label l = new Label() { Text = "text", Width = 290 }; + panel.Controls.Add(l); + } + return panel; + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsAddStaticTextTooltip/iOS.swift b/code-gen-library/TestsAddStaticTextTooltip/iOS.swift new file mode 100644 index 000000000..9e725dfdf --- /dev/null +++ b/code-gen-library/TestsAddStaticTextTooltip/iOS.swift @@ -0,0 +1,27 @@ +//begin imports +import UIKit; +//end imports + +public class TestsAddStaticTextTooltip { + + //begin eventHandler + //Swift: Action + public func testsAddStaticTextTooltip() { + let chart = CodeGenHelper.getDescription(IgsDataChart.self, "content")! + for series in chart.series!.toArray() ?? [] { + if !series!.isLayer { + series!.chartToolTipUpdating = { sender, args in + guard let args = args else { return } + var cv = args.currentView + if cv == nil { + let tv = UILabel() + cv = tv + args.currentView = cv + } + (cv as? UILabel)?.text = "text" + } + } + } + } + //end eventHandler +} diff --git a/code-gen-library/TestsAssignStyleToNegativeShapes/Android.kt b/code-gen-library/TestsAssignStyleToNegativeShapes/Android.kt new file mode 100644 index 000000000..73e36aa82 --- /dev/null +++ b/code-gen-library/TestsAssignStyleToNegativeShapes/Android.kt @@ -0,0 +1,21 @@ +//begin imports +import com.infragistics.mobile.controls.IgaAssigningCategoryStyleEventArgs +import android.graphics.Color +import com.infragistics.mobile.controls.IgaSolidColorBrush +//end imports + +import com.infragistics.mobile.controls.CodeGenHelper + +public class TestsAssignStyleToNegativeShapes { + + //begin eventHandler + public fun testsAssignStyleToNegativeShapes(sender: Any?, args: IgaAssigningCategoryStyleEventArgs) { + if (args.selectionHighlightingInfo != null && args.isNegativeShape) { + args.fill = IgaSolidColorBrush(Color.BLUE) + args.stroke = IgaSolidColorBrush(Color.BLACK) + args.highlightingHandled = true + } + } + //end eventHandler + +} diff --git a/code-gen-library/TestsAssignStyleToNegativeShapes/Desktop.cs b/code-gen-library/TestsAssignStyleToNegativeShapes/Desktop.cs new file mode 100644 index 000000000..65d8c11d6 --- /dev/null +++ b/code-gen-library/TestsAssignStyleToNegativeShapes/Desktop.cs @@ -0,0 +1,18 @@ +//begin imports +using Infragistics.Controls.Charts; +//end imports + +public class TestsAssignStyleToNegativeShapes +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.AssigningCategoryStyleEventHandler + public void TestsAssignStyleToNegativeShapes(object sender, AssigningCategoryStyleEventArgs args) + { + if (args.SelectionHighlightingInfo != null && args.IsNegativeShape){ + args.Fill = new SolidColorBrush(Colors.Blue); + args.Stroke = new SolidColorBrush(Colors.Black); + args.HighlightingHandled = true; + } + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsAssignStyleToNegativeShapes/Web.ts b/code-gen-library/TestsAssignStyleToNegativeShapes/Web.ts new file mode 100644 index 000000000..84fed4e91 --- /dev/null +++ b/code-gen-library/TestsAssignStyleToNegativeShapes/Web.ts @@ -0,0 +1,18 @@ +//begin imports +import { IgcAssigningCategoryStyleEventArgs } from 'igniteui-webcomponents-charts'; +import { Brush } from 'igniteui-webcomponents-core'; +//end imports + +export class TestsAssignStyleToNegativeShapes +{ + //begin eventHandler + public testsAssignStyleToNegativeShapes(sender:any, args: IgcAssigningCategoryStyleEventArgs) + { + if (args.selectionHighlightingInfo != null && args.isNegativeShape){ + args.fill = "blue"; + args.stroke = "black"; + args.highlightingHandled = true; + } + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsAssignStyleToNegativeShapes/iOS.swift b/code-gen-library/TestsAssignStyleToNegativeShapes/iOS.swift new file mode 100644 index 000000000..cccf35dfd --- /dev/null +++ b/code-gen-library/TestsAssignStyleToNegativeShapes/iOS.swift @@ -0,0 +1,16 @@ +//begin imports +import UIKit; +//end imports + +public class TestsAssignStyleToNegativeShapes { + + //begin eventHandler + public func testsAssignStyleToNegativeShapes(sender: Any?, args: IgsAssigningCategoryStyleEventArgs?) { + if args!.selectionHighlightingInfo != nil && args!.isNegativeShape { + args!.fill = IgsSolidColorBrush(UIColor.blue) + args!.stroke = IgsSolidColorBrush(UIColor.black) + args!.highlightingHandled = true + } + } + //end eventHandler +} diff --git a/code-gen-library/TestsAssignStyleToNegativeShapes2/Android.kt b/code-gen-library/TestsAssignStyleToNegativeShapes2/Android.kt new file mode 100644 index 000000000..f47659f18 --- /dev/null +++ b/code-gen-library/TestsAssignStyleToNegativeShapes2/Android.kt @@ -0,0 +1,22 @@ +//begin imports +import com.infragistics.mobile.controls.IgaAssigningCategoryStyleEventArgs +import android.graphics.Color +import com.infragistics.mobile.controls.IgaSolidColorBrush +//end imports + +import com.infragistics.mobile.library.CodeGenHelper + +public class TestsAssignStyleToNegativeShapes2 { + + //begin eventHandler + public fun testsAssignStyleToNegativeShapes2(sender: Any?, args: IgaAssigningCategoryStyleEventArgs) { + if (args.selectionHighlightingInfo != null && args.isNegativeShape) { + args.fill = IgaSolidColorBrush(Color.BLUE) + args.stroke = IgaSolidColorBrush(Color.BLACK) + args.strokeThickness = 2.0; + args.highlightingHandled = true + } + } + //end eventHandler + +} diff --git a/code-gen-library/TestsAssignStyleToNegativeShapes2/Desktop.cs b/code-gen-library/TestsAssignStyleToNegativeShapes2/Desktop.cs new file mode 100644 index 000000000..84d70c290 --- /dev/null +++ b/code-gen-library/TestsAssignStyleToNegativeShapes2/Desktop.cs @@ -0,0 +1,19 @@ +//begin imports +using Infragistics.Controls.Charts; +//end imports + +public class TestsAssignStyleToNegativeShapes2 +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.AssigningCategoryStyleEventHandler + public void TestsAssignStyleToNegativeShapes2(object sender, AssigningCategoryStyleEventArgs args) + { + if (args.SelectionHighlightingInfo != null && args.IsNegativeShape){ + args.Fill = new SolidColorBrush(Colors.Blue); + args.Stroke = new SolidColorBrush(Colors.Black); + args.StrokeThickness = 2; + args.HighlightingHandled = true; + } + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsAssignStyleToNegativeShapes2/Web.ts b/code-gen-library/TestsAssignStyleToNegativeShapes2/Web.ts new file mode 100644 index 000000000..512be88a4 --- /dev/null +++ b/code-gen-library/TestsAssignStyleToNegativeShapes2/Web.ts @@ -0,0 +1,19 @@ +//begin imports +import { IgcAssigningCategoryStyleEventArgs } from 'igniteui-webcomponents-charts'; +import { Brush } from 'igniteui-webcomponents-core'; +//end imports + +export class TestsAssignStyleToNegativeShapes2 +{ + //begin eventHandler + public testsAssignStyleToNegativeShapes2(sender: any,args: IgcAssigningCategoryStyleEventArgs) + { + if (args.selectionHighlightingInfo != null && args.isNegativeShape){ + args.fill = "blue"; + args.stroke = "black"; + args.strokeThickness = 2; + args.highlightingHandled = true; + } + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsAssignStyleToNegativeShapes2/iOS.swift b/code-gen-library/TestsAssignStyleToNegativeShapes2/iOS.swift new file mode 100644 index 000000000..48294dc6f --- /dev/null +++ b/code-gen-library/TestsAssignStyleToNegativeShapes2/iOS.swift @@ -0,0 +1,17 @@ +//begin imports +import UIKit; +//end imports + +public class TestsAssignStyleToNegativeShapes2 { + + //begin eventHandler + public func testsAssignStyleToNegativeShapes2(sender: Any?, args: IgsAssigningCategoryStyleEventArgs?) { + if args!.selectionHighlightingInfo != nil && args!.isNegativeShape { + args!.fill = IgsSolidColorBrush(UIColor.blue) + args!.stroke = IgsSolidColorBrush(UIColor.black) + args!.strokeThickness = 2.0 + args!.highlightingHandled = true + } + } + //end eventHandler +} diff --git a/code-gen-library/TestsAssignStyleToSelectedMarkers/Android.kt b/code-gen-library/TestsAssignStyleToSelectedMarkers/Android.kt new file mode 100644 index 000000000..298021a5e --- /dev/null +++ b/code-gen-library/TestsAssignStyleToSelectedMarkers/Android.kt @@ -0,0 +1,21 @@ +//begin imports +import com.infragistics.mobile.controls.IgaAssigningCategoryMarkerStyleEventArgs +import android.graphics.Color +import com.infragistics.mobile.controls.IgaSolidColorBrush +//end imports + +import com.infragistics.mobile.library.CodeGenHelper + +public class TestsAssignStyleToSelectedMarkers { + + //begin eventHandler + public fun testsAssignStyleToSelectedMarkers(sender: Any?, args: IgaAssigningCategoryMarkerStyleEventArgs) { + if (args.selectionHighlightingInfo != null) { + args.fill = IgaSolidColorBrush(Color.BLUE) + args.stroke = IgaSolidColorBrush(Color.BLACK) + args.highlightingHandled = true + } + } + //end eventHandler + +} diff --git a/code-gen-library/TestsAssignStyleToSelectedMarkers/Desktop.cs b/code-gen-library/TestsAssignStyleToSelectedMarkers/Desktop.cs new file mode 100644 index 000000000..d10311623 --- /dev/null +++ b/code-gen-library/TestsAssignStyleToSelectedMarkers/Desktop.cs @@ -0,0 +1,20 @@ +//begin imports +using Infragistics.Controls.Charts; +//end imports + +public class TestsAssignStyleToSelectedMarkers +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.AssigningCategoryMarkerStyleEventHandler + public void TestsAssignStyleToSelectedMarkers(object sender, AssigningCategoryMarkerStyleEventArgs args) + { + + if (args.SelectionHighlightingInfo != null) + { + args.Fill = new SolidColorBrush(Colors.Blue); + args.Stroke = new SolidColorBrush(Colors.Black); + args.HighlightingHandled = true; + } + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsAssignStyleToSelectedMarkers/Web.ts b/code-gen-library/TestsAssignStyleToSelectedMarkers/Web.ts new file mode 100644 index 000000000..c9242298d --- /dev/null +++ b/code-gen-library/TestsAssignStyleToSelectedMarkers/Web.ts @@ -0,0 +1,21 @@ +//begin imports +import { IgcAssigningCategoryMarkerStyleEventArgs } from "igniteui-webcomponents-charts"; +import { Brush } from 'igniteui-webcomponents-core'; +//end imports + +export class TestsAssignStyleToSelectedMarkers +{ + //begin eventHandler + public testsAssignStyleToSelectedMarkers(sender: any,args: IgcAssigningCategoryMarkerStyleEventArgs) + { + + if (args.selectionHighlightingInfo != null) + { + + args.fill = "blue"; + args.stroke = "black"; + args.highlightingHandled = true; + } + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsAssignStyleToSelectedMarkers/iOS.swift b/code-gen-library/TestsAssignStyleToSelectedMarkers/iOS.swift new file mode 100644 index 000000000..215be6999 --- /dev/null +++ b/code-gen-library/TestsAssignStyleToSelectedMarkers/iOS.swift @@ -0,0 +1,16 @@ +//begin imports +import UIKit; +//end imports + +public class TestsAssignStyleToSelectedMarkers { + + //begin eventHandler + public func testsAssignStyleToSelectedMarkers(sender: Any?, args: IgsAssigningCategoryMarkerStyleEventArgs?) { + if args!.selectionHighlightingInfo != nil { + args!.fill = IgsSolidColorBrush(UIColor.blue) + args!.stroke = IgsSolidColorBrush(UIColor.black) + args!.highlightingHandled = true + } + } + //end eventHandler +} diff --git a/code-gen-library/TestsDataLegendCalcSummaryAdd100/Android.kt b/code-gen-library/TestsDataLegendCalcSummaryAdd100/Android.kt new file mode 100644 index 000000000..ed17098b5 --- /dev/null +++ b/code-gen-library/TestsDataLegendCalcSummaryAdd100/Android.kt @@ -0,0 +1,17 @@ +//begin imports +import com.infragistics.mobile.controls.IgaDataLegendSummaryEventArgs +//end imports + +class TestsDataLegendCalcSummaryAdd100 { + + //begin eventHandler + fun testsDataLegendCalcSummaryAdd100(sender: Any?, args: IgaDataLegendSummaryEventArgs) { + var total = 100.0 + for (value in args.columnValues!!.toTypedArray()) { + total += value + } + args.summaryValue = total + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendCalcSummaryAdd100/Desktop.cs b/code-gen-library/TestsDataLegendCalcSummaryAdd100/Desktop.cs new file mode 100644 index 000000000..ccd29c027 --- /dev/null +++ b/code-gen-library/TestsDataLegendCalcSummaryAdd100/Desktop.cs @@ -0,0 +1,18 @@ +//begin imports +using Infragistics.Controls.Charts; +//end imports + +public class TestsDataLegendCalcSummaryAdd100 +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.DataLegendSummaryHandler + public void TestsDataLegendCalcSummaryAdd100(object sender, DataLegendSummaryEventArgs args) + { + double total = 100; + foreach (var val in args.ColumnValues) + total = total + val; + args.SummaryValue = total; + + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendCalcSummaryAdd100/Web.ts b/code-gen-library/TestsDataLegendCalcSummaryAdd100/Web.ts new file mode 100644 index 000000000..f4e9fb93a --- /dev/null +++ b/code-gen-library/TestsDataLegendCalcSummaryAdd100/Web.ts @@ -0,0 +1,20 @@ +//begin imports +import { DataLegendSummaryEventArgs } from "igniteui-webcomponents-charts"; +//end imports + +export class TestsDataLegendCalcSummaryAdd100 +{ + //begin eventHandler + public testsDataLegendCalcSummaryAdd100(sender: any, args: DataLegendSummaryEventArgs) + { + let total = 100; + + for (const val of args.columnValues) { + total += val; + } + + args.summaryValue = total; + + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendCalcSummaryAdd100/iOS.swift b/code-gen-library/TestsDataLegendCalcSummaryAdd100/iOS.swift new file mode 100644 index 000000000..91f1e62df --- /dev/null +++ b/code-gen-library/TestsDataLegendCalcSummaryAdd100/iOS.swift @@ -0,0 +1,15 @@ +//begin imports +//end imports + +public class TestsDataLegendCalcSummaryAdd100 { + + //begin eventHandler + public func testsDataLegendCalcSummaryAdd100(sender: Any?, args: IgsDataLegendSummaryEventArgs?) { + var total = 100.0 + for value in args!.columnValues ?? [] { + total += value + } + args!.summaryValue = total + } + //end eventHandler +} diff --git a/code-gen-library/TestsDataLegendCalcSummaryAdd100WDetails/Android.kt b/code-gen-library/TestsDataLegendCalcSummaryAdd100WDetails/Android.kt new file mode 100644 index 000000000..e2b7a6369 --- /dev/null +++ b/code-gen-library/TestsDataLegendCalcSummaryAdd100WDetails/Android.kt @@ -0,0 +1,19 @@ +//begin imports +import com.infragistics.mobile.controls.IgaDataLegendSummaryEventArgs +//end imports + +class TestsDataLegendCalcSummaryAdd100WDetails { + + //begin eventHandler + fun testsDataLegendCalcSummaryAdd100WDetails(sender: Any?, args: IgaDataLegendSummaryEventArgs) { + var total = 100.0 + for (value in args.columnValues!!.toTypedArray()) { + total += value + } + args.summaryValue = total + args.summaryLabel = "A:" + args.summaryUnits = "S+100" + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendCalcSummaryAdd100WDetails/Desktop.cs b/code-gen-library/TestsDataLegendCalcSummaryAdd100WDetails/Desktop.cs new file mode 100644 index 000000000..01633efe5 --- /dev/null +++ b/code-gen-library/TestsDataLegendCalcSummaryAdd100WDetails/Desktop.cs @@ -0,0 +1,20 @@ +//begin imports +using Infragistics.Controls.Charts; +//end imports + +public class TestsDataLegendCalcSummaryAdd100WDetails +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.DataLegendSummaryHandler + public void TestsDataLegendCalcSummaryAdd100WDetails(object sender, DataLegendSummaryEventArgs args) + { + double total = 100; + foreach (var val in args.ColumnValues) + total = total + val; + args.SummaryValue = total; + args.SummaryLabel = "A:"; + args.SummaryUnits = "S+100"; + + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendCalcSummaryAdd100WDetails/Web.ts b/code-gen-library/TestsDataLegendCalcSummaryAdd100WDetails/Web.ts new file mode 100644 index 000000000..94e85dfb7 --- /dev/null +++ b/code-gen-library/TestsDataLegendCalcSummaryAdd100WDetails/Web.ts @@ -0,0 +1,22 @@ +//begin imports +import { DataLegendSummaryEventArgs } from "igniteui-webcomponents-charts"; +//end imports + +export class TestsDataLegendCalcSummaryAdd100WDetails +{ + //begin eventHandler + public testsDataLegendCalcSummaryAdd100WDetails(sender: any,args: DataLegendSummaryEventArgs) + { + let total = 100; + + for (const val of args.columnValues) { + total += val; + } + + args.summaryValue = total; + args.summaryLabel = "A:"; + args.summaryUnits = "S+100"; + + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendCalcSummaryAdd100WDetails/iOS.swift b/code-gen-library/TestsDataLegendCalcSummaryAdd100WDetails/iOS.swift new file mode 100644 index 000000000..3ff851dd5 --- /dev/null +++ b/code-gen-library/TestsDataLegendCalcSummaryAdd100WDetails/iOS.swift @@ -0,0 +1,17 @@ +//begin imports +//end imports + +public class TestsDataLegendCalcSummaryAdd100WDetails { + + //begin eventHandler + public func testsDataLegendCalcSummaryAdd100WDetails(sender: Any?, args: IgsDataLegendSummaryEventArgs?) { + var total = 100.0 + for value in args!.columnValues ?? [] { + total += value + } + args!.summaryValue = total + args!.summaryLabel = "A:" + args!.summaryUnits = "S+100" + } + //end eventHandler +} diff --git a/code-gen-library/TestsDataLegendHideBadgeOnSeriesTwo/Android.kt b/code-gen-library/TestsDataLegendHideBadgeOnSeriesTwo/Android.kt new file mode 100644 index 000000000..8425ce361 --- /dev/null +++ b/code-gen-library/TestsDataLegendHideBadgeOnSeriesTwo/Android.kt @@ -0,0 +1,15 @@ +//begin imports +import com.infragistics.mobile.controls.IgaDataLegendStylingRowEventArgs +//end imports + +class TestsDataLegendHideBadgeOnSeriesTwo { + + //begin eventHandler + fun testsDataLegendHideBadgeOnSeriesTwo(sender: Any?, args: IgaDataLegendStylingRowEventArgs) { + if (args.seriesTitle == "Two") { + args.isBadgeVisible = false + } + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendHideBadgeOnSeriesTwo/Desktop.cs b/code-gen-library/TestsDataLegendHideBadgeOnSeriesTwo/Desktop.cs new file mode 100644 index 000000000..94c4f2f09 --- /dev/null +++ b/code-gen-library/TestsDataLegendHideBadgeOnSeriesTwo/Desktop.cs @@ -0,0 +1,15 @@ +//begin imports +using Infragistics.Controls.Charts; +//end imports + +public class TestsDataLegendHideBadgeOnSeriesTwo +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.DataLegendStyleRowHandler + public void TestsDataLegendHideBadgeOnSeriesTwo(object sender, DataLegendStylingRowEventArgs args) + { + if (args.SeriesTitle == "Two") + args.IsBadgeVisible = false; + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendHideBadgeOnSeriesTwo/Web.ts b/code-gen-library/TestsDataLegendHideBadgeOnSeriesTwo/Web.ts new file mode 100644 index 000000000..cf7657642 --- /dev/null +++ b/code-gen-library/TestsDataLegendHideBadgeOnSeriesTwo/Web.ts @@ -0,0 +1,14 @@ +//begin imports +import { IgcDataLegendStylingRowEventArgs } from "igniteui-webcomponents-charts"; } +//end imports + +export class TestsDataLegendHideBadgeOnSeriesTwo +{ + //begin eventHandler + public testsDataLegendHideBadgeOnSeriesTwo(sender: any,args: IgcDataLegendStylingRowEventArgs) + { + if (args.seriesTitle == "Two") + args.isBadgeVisible = false; + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendHideBadgeOnSeriesTwo/iOS.swift b/code-gen-library/TestsDataLegendHideBadgeOnSeriesTwo/iOS.swift new file mode 100644 index 000000000..a411270ad --- /dev/null +++ b/code-gen-library/TestsDataLegendHideBadgeOnSeriesTwo/iOS.swift @@ -0,0 +1,13 @@ +//begin imports +//end imports + +public class TestsDataLegendHideBadgeOnSeriesTwo { + + //begin eventHandler + public func testsDataLegendHideBadgeOnSeriesTwo(sender: Any?, args: IgsDataLegendStylingRowEventArgs?) { + if args!.seriesTitle == "Two" { + args!.isBadgeVisible = false + } + } + //end eventHandler +} diff --git a/code-gen-library/TestsDataLegendHideRowOnSeriesTwo/Android.kt b/code-gen-library/TestsDataLegendHideRowOnSeriesTwo/Android.kt new file mode 100644 index 000000000..610dfa0e3 --- /dev/null +++ b/code-gen-library/TestsDataLegendHideRowOnSeriesTwo/Android.kt @@ -0,0 +1,15 @@ +//begin imports +import com.infragistics.mobile.controls.IgaDataLegendStylingRowEventArgs +//end imports + +class TestsDataLegendHideRowOnSeriesTwo { + + //begin eventHandler + fun testsDataLegendHideRowOnSeriesTwo(sender: Any?, args: IgaDataLegendStylingRowEventArgs) { + if (args.seriesTitle == "Two") { + args.isRowVisible = false + } + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendHideRowOnSeriesTwo/Desktop.cs b/code-gen-library/TestsDataLegendHideRowOnSeriesTwo/Desktop.cs new file mode 100644 index 000000000..136c50306 --- /dev/null +++ b/code-gen-library/TestsDataLegendHideRowOnSeriesTwo/Desktop.cs @@ -0,0 +1,15 @@ +//begin imports +using Infragistics.Controls.Charts; +//end imports + +public class TestsDataLegendHideRowOnSeriesTwo +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.DataLegendStyleRowHandler + public void TestsDataLegendHideRowOnSeriesTwo(object sender, DataLegendStylingRowEventArgs args) + { + if (args.SeriesTitle == "Two") + args.IsRowVisible = false; + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendHideRowOnSeriesTwo/Web.ts b/code-gen-library/TestsDataLegendHideRowOnSeriesTwo/Web.ts new file mode 100644 index 000000000..e69e6a2b9 --- /dev/null +++ b/code-gen-library/TestsDataLegendHideRowOnSeriesTwo/Web.ts @@ -0,0 +1,15 @@ +//begin imports +import { IgcDataLegendStylingRowEventArgs } from "igniteui-webcomponents-charts"; } +//end imports + +export class TestsDataLegendHideRowOnSeriesTwo +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.DataLegendStyleRowHandler + public testsDataLegendHideRowOnSeriesTwo(sender: any,args: IgcDataLegendStylingRowEventArgs) + { + if (args.seriesTitle == "Two") + args.isRowVisible = false; + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendHideRowOnSeriesTwo/iOS.swift b/code-gen-library/TestsDataLegendHideRowOnSeriesTwo/iOS.swift new file mode 100644 index 000000000..1f00720c8 --- /dev/null +++ b/code-gen-library/TestsDataLegendHideRowOnSeriesTwo/iOS.swift @@ -0,0 +1,13 @@ +//begin imports +//end imports + +public class TestsDataLegendHideRowOnSeriesTwo { + + //begin eventHandler + public func testsDataLegendHideRowOnSeriesTwo(sender: Any?, args: IgsDataLegendStylingRowEventArgs?) { + if args!.seriesTitle == "Two" { + args!.isRowVisible = false + } + } + //end eventHandler +} diff --git a/code-gen-library/TestsDataLegendStyleGroupRow1/Android.kt b/code-gen-library/TestsDataLegendStyleGroupRow1/Android.kt new file mode 100644 index 000000000..967044ba6 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleGroupRow1/Android.kt @@ -0,0 +1,24 @@ +//begin imports +import com.infragistics.mobile.controls.IgaDataLegendStylingRowEventArgs +import com.infragistics.mobile.controls.IgaSolidColorBrush +import android.graphics.Color +//end imports + +class TestsDataLegendStyleGroupRow1 { + + //begin eventHandler + fun testsDataLegendStyleGroupRow1(sender: Any?, args: IgaDataLegendStylingRowEventArgs) { + when (args.groupName) { + "Group1" -> { + args.titleText = "Collection 1" + args.titleTextColor = IgaSolidColorBrush(Color.BLUE) + } + "Group2" -> { + args.titleText = "Collection 2" + args.titleTextColor = IgaSolidColorBrush(Color.RED) + } + } + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleGroupRow1/Desktop.cs b/code-gen-library/TestsDataLegendStyleGroupRow1/Desktop.cs new file mode 100644 index 000000000..cd7975f62 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleGroupRow1/Desktop.cs @@ -0,0 +1,24 @@ +//begin imports +using Infragistics.Controls.Charts; +//end imports + +public class TestsDataLegendStyleGroupRow1 +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.DataLegendStyleRowHandler + public void TestsDataLegendStyleGroupRow1(object sender, DataLegendStylingRowEventArgs args) + { + switch (args.GroupName) + { + case "Group1": + args.TitleText = "Collection 1"; + args.TitleTextColor = new SolidColorBrush(Colors.Blue); + break; + case "Group2": + args.TitleText = "Collection 2"; + args.TitleTextColor = new SolidColorBrush(Colors.Red); + break; + } + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleGroupRow1/Web.ts b/code-gen-library/TestsDataLegendStyleGroupRow1/Web.ts new file mode 100644 index 000000000..48708a8f3 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleGroupRow1/Web.ts @@ -0,0 +1,25 @@ +//begin imports +import { IgcDataLegendStylingRowEventArgs } from "igniteui-webcomponents-charts"; + +//end imports + +export class TestsDataLegendStyleGroupRow1 +{ + //begin eventHandler + public testsDataLegendStyleGroupRow1(sender: any,args: IgcDataLegendStylingRowEventArgs) + { + + switch (args.groupName) + { + case "Group1": + args.titleText = "Collection 1"; + args.titleTextColor = "blue"; + break; + case "Group2": + args.titleText = "Collection 2"; + args.titleTextColor = "red"; + break; + } + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleGroupRow1/iOS.swift b/code-gen-library/TestsDataLegendStyleGroupRow1/iOS.swift new file mode 100644 index 000000000..56fb378c5 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleGroupRow1/iOS.swift @@ -0,0 +1,21 @@ +//begin imports +import UIKit; +//end imports + +public class TestsDataLegendStyleGroupRow1 { + + //begin eventHandler + public func testsDataLegendStyleGroupRow1(sender: Any?, args: IgsDataLegendStylingRowEventArgs?) { + switch args!.groupName { + case "Group1": + args!.titleText = "Collection 1" + args!.titleTextColor = IgsSolidColorBrush(UIColor.blue) + case "Group2": + args!.titleText = "Collection 2" + args!.titleTextColor = IgsSolidColorBrush(UIColor.red) + default: + break + } + } + //end eventHandler +} diff --git a/code-gen-library/TestsDataLegendStyleHeaderRed/Android.kt b/code-gen-library/TestsDataLegendStyleHeaderRed/Android.kt new file mode 100644 index 000000000..7e86cba3f --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleHeaderRed/Android.kt @@ -0,0 +1,15 @@ +//begin imports +import com.infragistics.mobile.controls.IgaDataLegendStylingRowEventArgs +import com.infragistics.mobile.controls.IgaSolidColorBrush +import android.graphics.Color +//end imports + +class TestsDataLegendStyleHeaderRed { + + //begin eventHandler + fun testsDataLegendStyleHeaderRed(sender: Any?, args: IgaDataLegendStylingRowEventArgs) { + args.titleTextColor = IgaSolidColorBrush(Color.RED) + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleHeaderRed/Desktop.cs b/code-gen-library/TestsDataLegendStyleHeaderRed/Desktop.cs new file mode 100644 index 000000000..1cf7d30b1 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleHeaderRed/Desktop.cs @@ -0,0 +1,14 @@ +//begin imports +using Infragistics.Controls.Charts; +//end imports + +public class TestsDataLegendStyleHeaderRed +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.DataLegendStyleRowHandler + public void TestsDataLegendStyleHeaderRed(object sender, DataLegendStylingRowEventArgs args) + { + args.TitleTextColor = new SolidColorBrush(Colors.Red); + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleHeaderRed/Web.ts b/code-gen-library/TestsDataLegendStyleHeaderRed/Web.ts new file mode 100644 index 000000000..f0439150a --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleHeaderRed/Web.ts @@ -0,0 +1,14 @@ +//begin imports +import {IgcDataLegendStylingRowEventArgs} from "igniteui-webcomponents-charts";" +//end imports + +export class TestsDataLegendStyleHeaderRed +{ + //begin eventHandler + public testsDataLegendStyleHeaderRed(sender: any,args: IgcDataLegendStylingRowEventArgs) + { + + args.titleTextColor = "red"; + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleHeaderRed/iOS.swift b/code-gen-library/TestsDataLegendStyleHeaderRed/iOS.swift new file mode 100644 index 000000000..7f6170ded --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleHeaderRed/iOS.swift @@ -0,0 +1,12 @@ +//begin imports +import UIKit; +//end imports + +public class TestsDataLegendStyleHeaderRed { + + //begin eventHandler + public func testsDataLegendStyleHeaderRed(sender: Any?, args: IgsDataLegendStylingRowEventArgs?) { + args!.titleTextColor = IgsSolidColorBrush(UIColor.red) + } + //end eventHandler +} diff --git a/code-gen-library/TestsDataLegendStyleHeaderWithCurrent/Android.kt b/code-gen-library/TestsDataLegendStyleHeaderWithCurrent/Android.kt new file mode 100644 index 000000000..7bb20433f --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleHeaderWithCurrent/Android.kt @@ -0,0 +1,13 @@ +//begin imports +import com.infragistics.mobile.controls.IgaDataLegendStylingRowEventArgs +//end imports + +class TestsDataLegendStyleHeaderWithCurrent { + + //begin eventHandler + fun testsDataLegendStyleHeaderWithCurrent(sender: Any?, args: IgaDataLegendStylingRowEventArgs) { + args.titleText = "Current:" + args.titleText + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleHeaderWithCurrent/Desktop.cs b/code-gen-library/TestsDataLegendStyleHeaderWithCurrent/Desktop.cs new file mode 100644 index 000000000..f399d72b2 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleHeaderWithCurrent/Desktop.cs @@ -0,0 +1,14 @@ +//begin imports +using Infragistics.Controls.Charts; +//end imports + +public class TestsDataLegendStyleHeaderWithCurrent +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.DataLegendStyleRowHandler + public void TestsDataLegendStyleHeaderWithCurrent(object sender, DataLegendStylingRowEventArgs args) + { + args.TitleText = "Current:" + args.TitleText; + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleHeaderWithCurrent/Web.ts b/code-gen-library/TestsDataLegendStyleHeaderWithCurrent/Web.ts new file mode 100644 index 000000000..dde8fcc73 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleHeaderWithCurrent/Web.ts @@ -0,0 +1,13 @@ +//begin imports +import { IgcDataLegendStylingRowEventArgs } from "igniteui-webcomponents-charts"; +//end imports + +export class TestsDataLegendStyleHeaderWithCurrent +{ + //begin eventHandler + public testsDataLegendStyleHeaderWithCurrent(sender: any,args: IgcDataLegendStylingRowEventArgs) + { + args.titleText = "Current:" + args.titleText; + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleHeaderWithCurrent/iOS.swift b/code-gen-library/TestsDataLegendStyleHeaderWithCurrent/iOS.swift new file mode 100644 index 000000000..2737c7a44 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleHeaderWithCurrent/iOS.swift @@ -0,0 +1,11 @@ +//begin imports +//end imports + +public class TestsDataLegendStyleHeaderWithCurrent { + + //begin eventHandler + public func testsDataLegendStyleHeaderWithCurrent(sender: Any?, args: IgsDataLegendStylingRowEventArgs?) { + args!.titleText = "Current:" + (args!.titleText ?? "") + } + //end eventHandler +} diff --git a/code-gen-library/TestsDataLegendStyleSeriesColumns1/Android.kt b/code-gen-library/TestsDataLegendStyleSeriesColumns1/Android.kt new file mode 100644 index 000000000..f7d37ebd1 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSeriesColumns1/Android.kt @@ -0,0 +1,34 @@ +//begin imports +import com.infragistics.mobile.controls.IgaDataLegendStylingColumnEventArgs +import com.infragistics.mobile.controls.IgaSolidColorBrush +import android.graphics.Color +//end imports + +class TestsDataLegendStyleSeriesColumns1 { + + //begin eventHandler + fun testsDataLegendStyleSeriesColumns1(sender: Any?, args: IgaDataLegendStylingColumnEventArgs) { + when (args.seriesTitle) { + "One" -> { + args.labelText = "Value" + args.labelTextColor = IgaSolidColorBrush(Color.rgb(0, 128, 0)) + args.valueText = "+25.000" + args.valueTextColor = IgaSolidColorBrush(Color.RED) + } + "Two" -> { + args.labelText = "Value" + args.labelTextColor = IgaSolidColorBrush(Color.BLUE) + args.valueText = "+10.000" + args.valueTextColor = IgaSolidColorBrush(Color.rgb(0, 128, 0)) + } + "Three" -> { + args.labelText = "Value" + args.labelTextColor = IgaSolidColorBrush(Color.RED) + args.valueText = "+20.000" + args.valueTextColor = IgaSolidColorBrush(Color.BLUE) + } + } + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSeriesColumns1/Desktop.cs b/code-gen-library/TestsDataLegendStyleSeriesColumns1/Desktop.cs new file mode 100644 index 000000000..e40f20891 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSeriesColumns1/Desktop.cs @@ -0,0 +1,34 @@ +//begin imports +using Infragistics.Controls.Charts; +//end imports + +public class TestsDataLegendStyleSeriesColumns1 +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.DataLegendStyleColumnHandler + public void TestsDataLegendStyleSeriesColumns1(object sender, DataLegendStylingColumnEventArgs args) + { + switch (args.SeriesTitle) + { + case "One": + args.LabelText = "Value"; + args.LabelTextColor = new SolidColorBrush(Colors.Green); + args.ValueText = "+25.000"; + args.ValueTextColor = new SolidColorBrush(Colors.Red); + break; + case "Two": + args.LabelText = "Value"; + args.LabelTextColor = new SolidColorBrush(Colors.Blue); + args.ValueText = "+10.000"; + args.ValueTextColor = new SolidColorBrush(Colors.Green); + break; + case "Three": + args.LabelText = "Value"; + args.LabelTextColor = new SolidColorBrush(Colors.Red); + args.ValueText = "+20.000"; + args.ValueTextColor = new SolidColorBrush(Colors.Blue); + break; + } + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSeriesColumns1/Web.ts b/code-gen-library/TestsDataLegendStyleSeriesColumns1/Web.ts new file mode 100644 index 000000000..4b9b2f6a7 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSeriesColumns1/Web.ts @@ -0,0 +1,34 @@ +//begin imports +import { IgcDataLegendStylingColumnEventArgs } from 'igniteui-webcomponents-charts'; + +//end imports + +export class TestsDataLegendStyleSeriesColumns1 +{ + //begin eventHandler + public testsDataLegendStyleSeriesColumns1(sender:any,args: IgcDataLegendStylingColumnEventArgs) + { + switch (args.seriesTitle) + { + case "One": + args.labelText = "Value"; + args.labelTextColor ="green"; + args.valueText = "+25.000"; + args.valueTextColor = "red"; + break; + case "Two": + args.labelText = "Value"; + args.labelTextColor = "blue"; + args.valueText = "+10.000"; + args.valueTextColor = "green"; + break; + case "Three": + args.labelText = "Value"; + args.labelTextColor = "red"; + args.valueText = "+20.000"; + args.valueTextColor = "blue"; + break; + } + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSeriesColumns1/iOS.swift b/code-gen-library/TestsDataLegendStyleSeriesColumns1/iOS.swift new file mode 100644 index 000000000..e48334712 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSeriesColumns1/iOS.swift @@ -0,0 +1,30 @@ +//begin imports +import UIKit; +//end imports + +public class TestsDataLegendStyleSeriesColumns1 { + + //begin eventHandler + public func testsDataLegendStyleSeriesColumns1(sender: Any?, args: IgsDataLegendStylingColumnEventArgs?) { + switch args!.seriesTitle { + case "One": + args!.labelText = "Value" + args!.labelTextColor = IgsSolidColorBrush(UIColor(red: 0/255.0, green: 128/255.0, blue: 0/255.0, alpha: 1.0)) + args!.valueText = "+25.000" + args!.valueTextColor = IgsSolidColorBrush(UIColor.red) + case "Two": + args!.labelText = "Value" + args!.labelTextColor = IgsSolidColorBrush(UIColor.blue) + args!.valueText = "+10.000" + args!.valueTextColor = IgsSolidColorBrush(UIColor(red: 0/255.0, green: 128/255.0, blue: 0/255.0, alpha: 1.0)) + case "Three": + args!.labelText = "Value" + args!.labelTextColor = IgsSolidColorBrush(UIColor.red) + args!.valueText = "+20.000" + args!.valueTextColor = IgsSolidColorBrush(UIColor.blue) + default: + break + } + } + //end eventHandler +} diff --git a/code-gen-library/TestsDataLegendStyleSeriesColumns2/Android.kt b/code-gen-library/TestsDataLegendStyleSeriesColumns2/Android.kt new file mode 100644 index 000000000..8200e96e7 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSeriesColumns2/Android.kt @@ -0,0 +1,66 @@ +//begin imports +import com.infragistics.mobile.controls.IgaDataLegendStylingColumnEventArgs +import com.infragistics.mobile.controls.IgaSolidColorBrush +import android.graphics.Color +//end imports + +class TestsDataLegendStyleSeriesColumns2 { + + //begin eventHandler + fun testsDataLegendStyleSeriesColumns2(sender: Any?, args: IgaDataLegendStylingColumnEventArgs) { + when (args.seriesTitle) { + "Financial1", "F1" -> { + when (args.valueMemberPath) { + "Open", "[Open]" -> { + args.labelText = "Open" + args.labelTextColor = IgaSolidColorBrush(Color.CYAN) + args.unitsText = "$" + args.unitsTextColor = IgaSolidColorBrush(Color.BLACK) + args.valueTextColor = IgaSolidColorBrush(Color.rgb(0, 128, 0)) + } + "Close", "[Close]" -> { + args.labelText = "Close" + args.labelTextColor = IgaSolidColorBrush(Color.rgb(0, 128, 0)) + args.unitsText = "$" + args.unitsTextColor = IgaSolidColorBrush(Color.RED) + args.valueTextColor = IgaSolidColorBrush(Color.CYAN) + } + "TypicalPrice", "[TypicalPrice]", "TP" -> { + args.labelText = "Typical" + args.labelTextColor = IgaSolidColorBrush(Color.BLUE) + args.unitsText = "$" + args.unitsTextColor = IgaSolidColorBrush(Color.rgb(0, 128, 0)) + args.valueTextColor = IgaSolidColorBrush(Color.BLUE) + } + } + } + "Financial2", "F2" -> { + when (args.valueMemberPath) { + "Open", "[Open]" -> { + args.labelText = "Open" + args.labelTextColor = IgaSolidColorBrush(Color.rgb(0, 128, 0)) + args.unitsText = "$" + args.unitsTextColor = IgaSolidColorBrush(0xFFA52A2A.toInt()) // Brown + args.valueTextColor = IgaSolidColorBrush(Color.CYAN) + } + "Close", "[Close]" -> { + args.labelText = "Close" + args.labelTextColor = IgaSolidColorBrush(Color.CYAN) + args.unitsText = "$" + args.unitsTextColor = IgaSolidColorBrush(Color.RED) + args.valueTextColor = IgaSolidColorBrush(Color.rgb(0, 128, 0)) + } + "TypicalPrice", "[TypicalPrice]", "TP" -> { + args.labelText = "Typical" + args.labelTextColor = IgaSolidColorBrush(Color.BLUE) + args.unitsText = "$" + args.unitsTextColor = IgaSolidColorBrush(Color.rgb(128,0,128)) // Purple + args.valueTextColor = IgaSolidColorBrush(Color.rgb(255, 165, 0)) // Orange + } + } + } + } + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSeriesColumns2/Desktop.cs b/code-gen-library/TestsDataLegendStyleSeriesColumns2/Desktop.cs new file mode 100644 index 000000000..930818f40 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSeriesColumns2/Desktop.cs @@ -0,0 +1,79 @@ +//begin imports +using Infragistics.Controls.Charts; +//end imports + +public class TestsDataLegendStyleSeriesColumns2 +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.DataLegendStyleColumnHandler + public void TestsDataLegendStyleSeriesColumns2(object sender, DataLegendStylingColumnEventArgs args) + { + switch (args.SeriesTitle) +{ + case "Financial1": + case "F1": + switch (args.ValueMemberPath) + { + case "Open": + case "[Open]": + args.LabelText = "Open"; + args.LabelTextColor = new SolidColorBrush(Colors.Cyan); + args.UnitsText = "$"; + args.UnitsTextColor = new SolidColorBrush(Colors.Black); + args.ValueTextColor = new SolidColorBrush(Colors.Green); + break; + case "Close": + case "[Close]": + args.LabelText = "Close"; + args.LabelTextColor = new SolidColorBrush(Colors.Green); + args.UnitsText = "$"; + args.UnitsTextColor = new SolidColorBrush(Colors.Red); + args.ValueTextColor = new SolidColorBrush(Colors.Cyan); + break; + case "TypicalPrice": + case "[TypicalPrice]": + case "TP": + args.LabelText = "Typical"; + args.LabelTextColor = new SolidColorBrush(Colors.Blue); + args.UnitsText = "$"; + args.UnitsTextColor = new SolidColorBrush(Colors.Green); + args.ValueTextColor = new SolidColorBrush(Colors.Blue); + break; + } + break; + case "Financial2": + case "F2": + switch (args.ValueMemberPath) + { + case "Open": + case "[Open]": + args.LabelText = "Open"; + args.LabelTextColor = new SolidColorBrush(Colors.Green); + args.UnitsText = "$"; + args.UnitsTextColor = new SolidColorBrush(Colors.Brown); + args.ValueTextColor = new SolidColorBrush(Colors.Cyan); + break; + case "Close": + case "[Close]": + args.LabelText = "Close"; + args.LabelTextColor = new SolidColorBrush(Colors.Cyan); + args.UnitsText = "$"; + args.UnitsTextColor = new SolidColorBrush(Colors.Red); + args.ValueTextColor = new SolidColorBrush(Colors.Green); + break; + case "TypicalPrice": + case "[TypicalPrice]": + case "TP": + args.LabelText = "Typical"; + args.LabelTextColor = new SolidColorBrush(Colors.Blue); + args.UnitsText = "$"; + args.UnitsTextColor = new SolidColorBrush(Colors.Purple); + args.ValueTextColor = new SolidColorBrush(Colors.Orange); + break; + } + break; + +} + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSeriesColumns2/Web.ts b/code-gen-library/TestsDataLegendStyleSeriesColumns2/Web.ts new file mode 100644 index 000000000..8861b5694 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSeriesColumns2/Web.ts @@ -0,0 +1,79 @@ +//begin imports +import { IgcDataLegendStylingColumnEventArgs } from 'igniteui-webcomponents-charts'; + +//end imports + +export class TestsDataLegendStyleSeriesColumns2 +{ + //begin eventHandler + public testsDataLegendStyleSeriesColumns2(sender:any,args: IgcDataLegendStylingColumnEventArgs) + { + switch (args.seriesTitle) + { + case "Financial1": + case "F1": + switch (args.valueMemberPath) + { + case "Open": + case "[Open]": + args.labelText = "Open"; + args.labelTextColor = "cyan"; + args.unitsText = "$"; + args.unitsTextColor = "black"; + args.valueTextColor = "green"; + break; + case "Close": + case "[Close]": + args.labelText = "Close"; + args.labelTextColor = "green"; + args.unitsText = "$"; + args.unitsTextColor = "red"; + args.valueTextColor = "cyan"; + break; + case "TypicalPrice": + case "[TypicalPrice]": + case "TP": + args.labelText = "Typical"; + args.labelTextColor = "blue"; + args.unitsText = "$"; + args.unitsTextColor = "green"; + args.valueTextColor = "blue"; + break; + } + break; + case "Financial2": + case "F2": + switch (args.valueMemberPath) + { + case "Open": + case "[Open]": + args.labelText = "Open"; + args.labelTextColor = "green"; + args.unitsText = "$"; + args.unitsTextColor = "brown"; + args.valueTextColor = "cyan"; + break; + case "Close": + case "[Close]": + args.labelText = "Close"; + args.labelTextColor = "cyan"; + args.unitsText = "$"; + args.unitsTextColor = "red"; + args.valueTextColor = "green"; + break; + case "TypicalPrice": + case "[TypicalPrice]": + case "TP": + args.labelText = "Typical"; + args.labelTextColor = "blue"; + args.unitsText = "$"; + args.unitsTextColor = "purple"; + args.valueTextColor = "orange"; + break; + } + break; + +} + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSeriesColumns2/iOS.swift b/code-gen-library/TestsDataLegendStyleSeriesColumns2/iOS.swift new file mode 100644 index 000000000..256b7d646 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSeriesColumns2/iOS.swift @@ -0,0 +1,63 @@ +//begin imports +import UIKit; +//end imports + +public class TestsDataLegendStyleSeriesColumns2 { + + //begin eventHandler + public func testsDataLegendStyleSeriesColumns2(sender: Any?, args: IgsDataLegendStylingColumnEventArgs?) { + switch args!.seriesTitle { + case "Financial1", "F1": + switch args!.valueMemberPath { + case "Open", "[Open]": + args!.labelText = "Open" + args!.labelTextColor = IgsSolidColorBrush(UIColor.cyan) + args!.unitsText = "$" + args!.unitsTextColor = IgsSolidColorBrush(UIColor.black) + args!.valueTextColor = IgsSolidColorBrush(UIColor(red: 0/255.0, green: 128/255.0, blue: 0/255.0, alpha: 1.0)) + case "Close", "[Close]": + args!.labelText = "Close" + args!.labelTextColor = IgsSolidColorBrush(UIColor(red: 0/255.0, green: 128/255.0, blue: 0/255.0, alpha: 1.0)) + args!.unitsText = "$" + args!.unitsTextColor = IgsSolidColorBrush(UIColor.red) + args!.valueTextColor = IgsSolidColorBrush(UIColor.cyan) + case "TypicalPrice", "[TypicalPrice]", "TP": + args!.labelText = "Typical" + args!.labelTextColor = IgsSolidColorBrush(UIColor.blue) + args!.unitsText = "$" + args!.unitsTextColor = IgsSolidColorBrush(UIColor(red: 0/255.0, green: 128/255.0, blue: 0/255.0, alpha: 1.0)) + args!.valueTextColor = IgsSolidColorBrush(UIColor.blue) + default: + break + } + + case "Financial2", "F2": + switch args!.valueMemberPath { + case "Open", "[Open]": + args!.labelText = "Open" + args!.labelTextColor = IgsSolidColorBrush(UIColor(red: 0/255.0, green: 128/255.0, blue: 0/255.0, alpha: 1.0)) + args!.unitsText = "$" + args!.unitsTextColor = IgsSolidColorBrush(UIColor(red: 165/255.0, green: 42/255.0, blue: 42/255.0, alpha: 1.0)) // Brown + args!.valueTextColor = IgsSolidColorBrush(UIColor.cyan) + case "Close", "[Close]": + args!.labelText = "Close" + args!.labelTextColor = IgsSolidColorBrush(UIColor.cyan) + args!.unitsText = "$" + args!.unitsTextColor = IgsSolidColorBrush(UIColor.red) + args!.valueTextColor = IgsSolidColorBrush(UIColor(red: 0/255.0, green: 128/255.0, blue: 0/255.0, alpha: 1.0)) + case "TypicalPrice", "[TypicalPrice]", "TP": + args!.labelText = "Typical" + args!.labelTextColor = IgsSolidColorBrush(UIColor.blue) + args!.unitsText = "$" + args!.unitsTextColor = IgsSolidColorBrush(UIColor(red: 128/255.0, green: 0/255.0, blue: 128/255.0, alpha: 1.0)) // Purple + args!.valueTextColor = IgsSolidColorBrush(UIColor(red: 255/255.0, green: 165/255.0, blue: 0/255.0, alpha: 1.0)) // Orange + default: + break + } + + default: + break + } + } + //end eventHandler +} diff --git a/code-gen-library/TestsDataLegendStyleSeriesColumnsByGroup1/Android.kt b/code-gen-library/TestsDataLegendStyleSeriesColumnsByGroup1/Android.kt new file mode 100644 index 000000000..7a3889248 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSeriesColumnsByGroup1/Android.kt @@ -0,0 +1,26 @@ +//begin imports +import com.infragistics.mobile.controls.IgaDataLegendStylingColumnEventArgs +import com.infragistics.mobile.controls.IgaSolidColorBrush +import android.graphics.Color +//end imports + +class TestsDataLegendStyleSeriesColumnsByGroup1 { + + //begin eventHandler + fun testsDataLegendStyleSeriesColumnsByGroup1(sender: Any?, args: IgaDataLegendStylingColumnEventArgs) { + when (args.groupName) { + "Group1" -> { + args.labelText = "Value" + args.labelTextColor = IgaSolidColorBrush(Color.BLUE) + args.valueTextColor = IgaSolidColorBrush(Color.BLUE) + } + "Group2" -> { + args.labelText = "Value" + args.labelTextColor = IgaSolidColorBrush(Color.RED) + args.valueTextColor = IgaSolidColorBrush(Color.RED) + } + } + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSeriesColumnsByGroup1/Desktop.cs b/code-gen-library/TestsDataLegendStyleSeriesColumnsByGroup1/Desktop.cs new file mode 100644 index 000000000..b857782c8 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSeriesColumnsByGroup1/Desktop.cs @@ -0,0 +1,27 @@ +//begin imports +using Infragistics.Controls.Charts; +//end imports + +public class TestsDataLegendStyleSeriesColumnsByGroup1 +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.DataLegendStyleColumnHandler + public void TestsDataLegendStyleSeriesColumnsByGroup1(object sender, DataLegendStylingColumnEventArgs args) + { + switch (args.GroupName) + { + case "Group1": + args.LabelText = "Value"; + args.LabelTextColor = new SolidColorBrush(Colors.Blue); + args.ValueTextColor = new SolidColorBrush(Colors.Blue); + break; + case "Group2": + args.LabelText = "Value"; + args.LabelTextColor = new SolidColorBrush(Colors.Red); + args.ValueTextColor = new SolidColorBrush(Colors.Red); + break; + + } + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSeriesColumnsByGroup1/Web.ts b/code-gen-library/TestsDataLegendStyleSeriesColumnsByGroup1/Web.ts new file mode 100644 index 000000000..594524269 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSeriesColumnsByGroup1/Web.ts @@ -0,0 +1,28 @@ +//begin imports +import { IgcDataLegendStylingColumnEventArgs } from "igniteui-webcomponents-charts"; + +//end imports + +public class TestsDataLegendStyleSeriesColumnsByGroup1 +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.DataLegendStyleColumnHandler + public testsDataLegendStyleSeriesColumnsByGroup1(sender: any,args: IgcDataLegendStylingColumnEventArgs) + { + switch (args.groupName) + { + case "Group1": + args.labelText = "Value"; + args.labelTextColor = "blue"; + args.valueTextColor = "blue"; + break; + case "Group2": + args.labelText = "Value"; + args.labelTextColor = "red"; + args.valueTextColor = "red"; + break; + + } + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSeriesColumnsByGroup1/iOS.swift b/code-gen-library/TestsDataLegendStyleSeriesColumnsByGroup1/iOS.swift new file mode 100644 index 000000000..9fe50bf5b --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSeriesColumnsByGroup1/iOS.swift @@ -0,0 +1,23 @@ +//begin imports +import UIKit; +//end imports + +public class TestsDataLegendStyleSeriesColumnsByGroup1 { + + //begin eventHandler + public func testsDataLegendStyleSeriesColumnsByGroup1(sender: Any?, args: IgsDataLegendStylingColumnEventArgs?) { + switch args!.groupName { + case "Group1": + args!.labelText = "Value" + args!.labelTextColor = IgsSolidColorBrush(UIColor.blue) + args!.valueTextColor = IgsSolidColorBrush(UIColor.blue) + case "Group2": + args!.labelText = "Value" + args!.labelTextColor = IgsSolidColorBrush(UIColor.red) + args!.valueTextColor = IgsSolidColorBrush(UIColor.red) + default: + break + } + } + //end eventHandler +} diff --git a/code-gen-library/TestsDataLegendStyleSeriesRows1/Android.kt b/code-gen-library/TestsDataLegendStyleSeriesRows1/Android.kt new file mode 100644 index 000000000..db29317a0 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSeriesRows1/Android.kt @@ -0,0 +1,28 @@ +//begin imports +import com.infragistics.mobile.controls.IgaDataLegendStylingRowEventArgs +import com.infragistics.mobile.controls.IgaSolidColorBrush +import android.graphics.Color +//end imports + +class TestsDataLegendStyleSeriesRows1 { + + //begin eventHandler + fun testsDataLegendStyleSeriesRows1(sender: Any?, args: IgaDataLegendStylingRowEventArgs) { + when (args.seriesTitle) { + "One" -> { + args.titleText = "Series1" + args.titleTextColor = IgaSolidColorBrush(Color.BLUE) + } + "Two" -> { + args.titleText = "Series2" + args.titleTextColor = IgaSolidColorBrush(Color.RED) + } + "Three" -> { + args.titleText = "Series3" + args.titleTextColor = IgaSolidColorBrush(Color.rgb(0, 128, 0)) + } + } + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSeriesRows1/Desktop.cs b/code-gen-library/TestsDataLegendStyleSeriesRows1/Desktop.cs new file mode 100644 index 000000000..cf40e4d04 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSeriesRows1/Desktop.cs @@ -0,0 +1,28 @@ +//begin imports +using Infragistics.Controls.Charts; +//end imports + +public class TestsDataLegendStyleSeriesRows1 +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.DataLegendStyleRowHandler + public void TestsDataLegendStyleSeriesRows1(object sender, DataLegendStylingRowEventArgs args) + { + switch (args.SeriesTitle) + { + case "One": + args.TitleText = "Series1"; + args.TitleTextColor = new SolidColorBrush(Colors.Blue); + break; + case "Two": + args.TitleText = "Series2"; + args.TitleTextColor = new SolidColorBrush(Colors.Red); + break; + case "Three": + args.TitleText = "Series3"; + args.TitleTextColor = new SolidColorBrush(Colors.Green); + break; + } + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSeriesRows1/Web.ts b/code-gen-library/TestsDataLegendStyleSeriesRows1/Web.ts new file mode 100644 index 000000000..080ab2584 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSeriesRows1/Web.ts @@ -0,0 +1,27 @@ +//begin imports +import { IgcDataLegendStylingRowEventArgs } from 'igniteui-webcomponents-charts'; +//end imports + +export class TestsDataLegendStyleSeriesRows1 +{ + //begin eventHandler + public testsDataLegendStyleSeriesRows1(sender:any,args: IgcDataLegendStylingRowEventArgs) + { + switch (args.seriesTitle) + { + case "One": + args.titleText = "Series1"; + args.titleTextColor = "blue"; + break; + case "Two": + args.titleText = "Series2"; + args.titleTextColor = "red"; + break; + case "Three": + args.titleText = "Series3"; + args.titleTextColor = "green"; + break; + } + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSeriesRows1/iOS.swift b/code-gen-library/TestsDataLegendStyleSeriesRows1/iOS.swift new file mode 100644 index 000000000..515361e84 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSeriesRows1/iOS.swift @@ -0,0 +1,25 @@ +//begin imports +import UIKit; +//end imports + +class TestsDataLegendStyleSeriesRows1 { + + //begin eventHandler + func testsDataLegendStyleSeriesRows1(sender: Any?, args: IgsDataLegendStylingRowEventArgs?) { + switch args!.seriesTitle { + case "One": + args!.titleText = "Series1" + args!.titleTextColor = IgsSolidColorBrush(UIColor.blue) + case "Two": + args!.titleText = "Series2" + args!.titleTextColor = IgsSolidColorBrush(UIColor.red) + case "Three": + args!.titleText = "Series3" + args!.titleTextColor = IgsSolidColorBrush(UIColor(red: 0 / 255.0, green: 128 / 255.0, blue: 0 / 255.0, alpha: 1.0)) + default: + break + } + } + //end eventHandler + +} diff --git a/code-gen-library/TestsDataLegendStyleSeriesRows2/Android.kt b/code-gen-library/TestsDataLegendStyleSeriesRows2/Android.kt new file mode 100644 index 000000000..bb9f48072 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSeriesRows2/Android.kt @@ -0,0 +1,24 @@ +//begin imports +import com.infragistics.mobile.controls.IgaDataLegendStylingRowEventArgs +import com.infragistics.mobile.controls.IgaSolidColorBrush +import android.graphics.Color +//end imports + +class TestsDataLegendStyleSeriesRows2 { + + //begin eventHandler + fun testsDataLegendStyleSeriesRows2(sender: Any?, args: IgaDataLegendStylingRowEventArgs) { + when (args.seriesTitle) { + "Financial1" -> { + args.titleText = "F1" + args.titleTextColor = IgaSolidColorBrush(Color.BLUE) + } + "Financial2" -> { + args.titleText = "F2" + args.titleTextColor = IgaSolidColorBrush(Color.rgb(255, 165, 0)) // Orange + } + } + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSeriesRows2/Desktop.cs b/code-gen-library/TestsDataLegendStyleSeriesRows2/Desktop.cs new file mode 100644 index 000000000..96ec2adc1 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSeriesRows2/Desktop.cs @@ -0,0 +1,24 @@ +//begin imports +using Infragistics.Controls.Charts; +//end imports + +public class TestsDataLegendStyleSeriesRows2 +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.DataLegendStyleRowHandler + public void TestsDataLegendStyleSeriesRows2(object sender, DataLegendStylingRowEventArgs args) + { + switch (args.SeriesTitle) + { + case "Financial1": + args.TitleText = "F1"; + args.TitleTextColor = new SolidColorBrush(Colors.Blue); + break; + case "Financial2": + args.TitleText = "F2"; + args.TitleTextColor = new SolidColorBrush(Colors.Orange); + break; + } + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSeriesRows2/Web.ts b/code-gen-library/TestsDataLegendStyleSeriesRows2/Web.ts new file mode 100644 index 000000000..f5f3fa591 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSeriesRows2/Web.ts @@ -0,0 +1,24 @@ +//begin imports +import { IgcDataLegendStylingRowEventArgs } from 'igniteui-webcomponents-charts'; + +//end imports + +export class TestsDataLegendStyleSeriesRows2 +{ + //begin eventHandler + public testsDataLegendStyleSeriesRows2(sender:any,args:IgcDataLegendStylingRowEventArgs) + { + switch (args.seriesTitle) + { + case "Financial1": + args.titleText = "F1"; + args.titleTextColor = "blue"; + break; + case "Financial2": + args.titleText = "F2"; + args.titleTextColor = "orange"; + break; + } + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSeriesRows2/iOS.swift b/code-gen-library/TestsDataLegendStyleSeriesRows2/iOS.swift new file mode 100644 index 000000000..4566d0175 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSeriesRows2/iOS.swift @@ -0,0 +1,22 @@ +//begin imports +import UIKit; +//end imports + +class TestsDataLegendStyleSeriesRows2 { + + //begin eventHandler + func testsDataLegendStyleSeriesRows2(sender: Any?, args: IgsDataLegendStylingRowEventArgs?) { + switch args!.seriesTitle { + case "Financial1": + args!.titleText = "F1" + args!.titleTextColor = IgsSolidColorBrush(UIColor.blue) + case "Financial2": + args!.titleText = "F2" + args!.titleTextColor = IgsSolidColorBrush(UIColor(red: 255/255.0, green: 165/255.0, blue: 0/255.0, alpha: 1.0)) // Orange + default: + break + } + } + //end eventHandler + +} diff --git a/code-gen-library/TestsDataLegendStyleSeriesRowsByGroup1/Android.kt b/code-gen-library/TestsDataLegendStyleSeriesRowsByGroup1/Android.kt new file mode 100644 index 000000000..7e96d4917 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSeriesRowsByGroup1/Android.kt @@ -0,0 +1,22 @@ +//begin imports +import com.infragistics.mobile.controls.IgaDataLegendStylingRowEventArgs +import com.infragistics.mobile.controls.IgaSolidColorBrush +import android.graphics.Color +//end imports + +class TestsDataLegendStyleSeriesRowsByGroup1 { + + //begin eventHandler + fun testsDataLegendStyleSeriesRowsByGroup1(sender: Any?, args: IgaDataLegendStylingRowEventArgs) { + when (args.groupName) { + "Group1" -> { + args.titleTextColor = IgaSolidColorBrush(Color.BLUE) + } + "Group2" -> { + args.titleTextColor = IgaSolidColorBrush(Color.RED) + } + } + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSeriesRowsByGroup1/Desktop.cs b/code-gen-library/TestsDataLegendStyleSeriesRowsByGroup1/Desktop.cs new file mode 100644 index 000000000..5a1dabc4d --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSeriesRowsByGroup1/Desktop.cs @@ -0,0 +1,22 @@ +//begin imports +using Infragistics.Controls.Charts; +//end imports + +public class TestsDataLegendStyleSeriesRowsByGroup1 +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.DataLegendStyleRowHandler + public void TestsDataLegendStyleSeriesRowsByGroup1(object sender, DataLegendStylingRowEventArgs args) + { + switch (args.GroupName) + { + case "Group1": + args.TitleTextColor = new SolidColorBrush(Colors.Blue); + break; + case "Group2": + args.TitleTextColor = new SolidColorBrush(Colors.Red); + break; + } + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSeriesRowsByGroup1/Web.ts b/code-gen-library/TestsDataLegendStyleSeriesRowsByGroup1/Web.ts new file mode 100644 index 000000000..07661fc3d --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSeriesRowsByGroup1/Web.ts @@ -0,0 +1,22 @@ +//begin imports +import { IgcDataLegendStylingRowEventArgs } from 'igniteui-webcomponents-charts'; +//end imports + +public class TestsDataLegendStyleSeriesRowsByGroup1 +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.DataLegendStyleRowHandler + public testsDataLegendStyleSeriesRowsByGroup1(sender:any,args: IgcDataLegendStylingRowEventArgs) + { + switch (args.groupName) + { + case "Group1": + args.titleTextColor = "blue"; + break; + case "Group2": + args.titleTextColor = "red"; + break; + } + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSeriesRowsByGroup1/iOS.swift b/code-gen-library/TestsDataLegendStyleSeriesRowsByGroup1/iOS.swift new file mode 100644 index 000000000..76bd4b49e --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSeriesRowsByGroup1/iOS.swift @@ -0,0 +1,20 @@ +//begin imports +import UIKit; +//end imports + +class TestsDataLegendStyleSeriesRowsByGroup1 { + + //begin eventHandler + func testsDataLegendStyleSeriesRowsByGroup1(sender: Any?, args: IgsDataLegendStylingRowEventArgs?) { + switch args!.groupName { + case "Group1": + args!.titleTextColor = IgsSolidColorBrush(UIColor.blue) + case "Group2": + args!.titleTextColor = IgsSolidColorBrush(UIColor.red) + default: + break + } + } + //end eventHandler + +} diff --git a/code-gen-library/TestsDataLegendStyleSummaryColumns1/Android.kt b/code-gen-library/TestsDataLegendStyleSummaryColumns1/Android.kt new file mode 100644 index 000000000..6f167356e --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSummaryColumns1/Android.kt @@ -0,0 +1,15 @@ +//begin imports +import com.infragistics.mobile.controls.IgaDataLegendStylingColumnEventArgs +import com.infragistics.mobile.controls.IgaSolidColorBrush +import android.graphics.Color +//end imports + +class TestsDataLegendStyleSummaryColumns1 { + + //begin eventHandler + fun testsDataLegendStyleSummaryColumns1(sender: Any?, args: IgaDataLegendStylingColumnEventArgs) { + args.valueTextColor = IgaSolidColorBrush(Color.RED) + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSummaryColumns1/Desktop.cs b/code-gen-library/TestsDataLegendStyleSummaryColumns1/Desktop.cs new file mode 100644 index 000000000..6d1ba121a --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSummaryColumns1/Desktop.cs @@ -0,0 +1,14 @@ +//begin imports +using Infragistics.Controls.Charts; +//end imports + +public class TestsDataLegendStyleSummaryColumns1 +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.DataLegendStyleColumnHandler + public void TestsDataLegendStyleSummaryColumns1(object sender, DataLegendStylingColumnEventArgs args) + { + args.ValueTextColor = new SolidColorBrush(Colors.Red); + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSummaryColumns1/Web.ts b/code-gen-library/TestsDataLegendStyleSummaryColumns1/Web.ts new file mode 100644 index 000000000..eee0ce4ae --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSummaryColumns1/Web.ts @@ -0,0 +1,13 @@ +//begin imports +import { IgcDataLegendStylingColumnEventArgs } from 'igniteui-webcomponents-charts'; +//end imports + +export class TestsDataLegendStyleSummaryColumns1 +{ + //begin eventHandler + public testsDataLegendStyleSummaryColumns1(sender: any,args: IgcDataLegendStylingColumnEventArgs) + { + args.valueTextColor = "red"; + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSummaryColumns1/iOS.swift b/code-gen-library/TestsDataLegendStyleSummaryColumns1/iOS.swift new file mode 100644 index 000000000..1ad99a033 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSummaryColumns1/iOS.swift @@ -0,0 +1,13 @@ +//begin imports +import UIKit; +//end imports + +class TestsDataLegendStyleSummaryColumns1 { + + //begin eventHandler + func testsDataLegendStyleSummaryColumns1(sender: Any?, args: IgsDataLegendStylingColumnEventArgs?) { + args!.valueTextColor = IgsSolidColorBrush(UIColor.red) + } + //end eventHandler + +} diff --git a/code-gen-library/TestsDataLegendStyleSummaryColumns3/Android.kt b/code-gen-library/TestsDataLegendStyleSummaryColumns3/Android.kt new file mode 100644 index 000000000..d53141eaa --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSummaryColumns3/Android.kt @@ -0,0 +1,28 @@ +//begin imports +import com.infragistics.mobile.controls.IgaDataLegendStylingColumnEventArgs +import com.infragistics.mobile.controls.IgaSolidColorBrush +import android.graphics.Color +//end imports + +class TestsDataLegendStyleSummaryColumns3 { + + //begin eventHandler + fun testsDataLegendStyleSummaryColumns3(sender: Any?, args: IgaDataLegendStylingColumnEventArgs) { + when (args.valueMemberPath) { + "Open", "[Open]" -> { + args.valueTextColor = IgaSolidColorBrush(Color.rgb(0, 128, 0)) // Green + } + "High", "[High]" -> { + args.valueTextColor = IgaSolidColorBrush(Color.BLUE) + } + "Low", "[Low]" -> { + args.valueTextColor = IgaSolidColorBrush(Color.rgb(255, 165, 0)) // Orange + } + "Close", "[Close]" -> { + args.valueTextColor = IgaSolidColorBrush(Color.RED) + } + } + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSummaryColumns3/Desktop.cs b/code-gen-library/TestsDataLegendStyleSummaryColumns3/Desktop.cs new file mode 100644 index 000000000..7c6557035 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSummaryColumns3/Desktop.cs @@ -0,0 +1,33 @@ +//begin imports +using Infragistics.Controls.Charts; +//end imports + +public class TestsDataLegendStyleSummaryColumns3 +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.DataLegendStyleColumnHandler + public void TestsDataLegendStyleSummaryColumns3(object sender, DataLegendStylingColumnEventArgs args) + { + switch(args.ValueMemberPath) + { + case "Open": + case "[Open]": + args.ValueTextColor = new SolidColorBrush(Colors.Green); + break; + case "High": + case "[High]": + args.ValueTextColor = new SolidColorBrush(Colors.Blue); + break; + case "Low": + case "[Low]": + args.ValueTextColor = new SolidColorBrush(Colors.Orange); + break; + case "Close": + case "[Close]": + args.ValueTextColor = new SolidColorBrush(Colors.Red); + break; + } + + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSummaryColumns3/Web.ts b/code-gen-library/TestsDataLegendStyleSummaryColumns3/Web.ts new file mode 100644 index 000000000..e7fa4bb7b --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSummaryColumns3/Web.ts @@ -0,0 +1,38 @@ +//begin imports +import { IgcDataLegendStylingColumnEventArgs } from 'igniteui-webcomponents-charts'; + +//end imports + +export class TestsDataLegendStyleSummaryColumns3 +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.DataLegendStyleColumnHandler + public testsDataLegendStyleSummaryColumns3(sender:any,args: IgcDataLegendStylingColumnEventArgs) + { + switch(args.valueMemberPath) + { + case "Open": + case "[Open]": + + args.valueTextColor = "green"; + break; + case "High": + case "[High]": + + args.valueTextColor = "blue"; + break; + case "Low": + case "[Low]": + + args.valueTextColor = "orange"; + break; + case "Close": + case "[Close]": + + args.valueTextColor = "red"; + break; + } + + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSummaryColumns3/iOS.swift b/code-gen-library/TestsDataLegendStyleSummaryColumns3/iOS.swift new file mode 100644 index 000000000..42cf420cf --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSummaryColumns3/iOS.swift @@ -0,0 +1,24 @@ +//begin imports +import UIKit; +//end imports + +class TestsDataLegendStyleSummaryColumns3 { + + //begin eventHandler + func testsDataLegendStyleSummaryColumns3(sender: Any?, args: IgsDataLegendStylingColumnEventArgs?) { + switch args!.valueMemberPath { + case "Open", "[Open]": + args!.valueTextColor = IgsSolidColorBrush(UIColor(red: 0/255.0, green: 128/255.0, blue: 0/255.0, alpha: 1.0)) // Green + case "High", "[High]": + args!.valueTextColor = IgsSolidColorBrush(UIColor.blue) + case "Low", "[Low]": + args!.valueTextColor = IgsSolidColorBrush(UIColor(red: 255/255.0, green: 165/255.0, blue: 0/255.0, alpha: 1.0)) // Orange + case "Close", "[Close]": + args!.valueTextColor = IgsSolidColorBrush(UIColor.red) + default: + break + } + } + //end eventHandler + +} diff --git a/code-gen-library/TestsDataLegendStyleSummaryColumnsByGroup1/Android.kt b/code-gen-library/TestsDataLegendStyleSummaryColumnsByGroup1/Android.kt new file mode 100644 index 000000000..3ba248bbd --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSummaryColumnsByGroup1/Android.kt @@ -0,0 +1,26 @@ +//begin imports +import com.infragistics.mobile.controls.IgaDataLegendStylingColumnEventArgs +import com.infragistics.mobile.controls.IgaSolidColorBrush +import android.graphics.Color +//end imports + +class TestsDataLegendStyleSummaryColumnsByGroup1 { + + //begin eventHandler + fun testsDataLegendStyleSummaryColumnsByGroup1(sender: Any?, args: IgaDataLegendStylingColumnEventArgs) { + when (args.groupName) { + "Group1" -> { + args.labelText = "Value" + args.labelTextColor = IgaSolidColorBrush(Color.BLUE) + args.valueTextColor = IgaSolidColorBrush(Color.BLUE) + } + "Group2" -> { + args.labelText = "Value" + args.labelTextColor = IgaSolidColorBrush(Color.RED) + args.valueTextColor = IgaSolidColorBrush(Color.RED) + } + } + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSummaryColumnsByGroup1/Desktop.cs b/code-gen-library/TestsDataLegendStyleSummaryColumnsByGroup1/Desktop.cs new file mode 100644 index 000000000..26a141a88 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSummaryColumnsByGroup1/Desktop.cs @@ -0,0 +1,27 @@ +//begin imports +using Infragistics.Controls.Charts; +//end imports + +public class TestsDataLegendStyleSummaryColumnsByGroup1 +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.DataLegendStyleColumnHandler + public void TestsDataLegendStyleSummaryColumnsByGroup1(object sender, DataLegendStylingColumnEventArgs args) + { + switch (args.GroupName) + { + case "Group1": + args.LabelText = "Value"; + args.LabelTextColor = new SolidColorBrush(Colors.Blue); + args.ValueTextColor = new SolidColorBrush(Colors.Blue); + break; + case "Group2": + args.LabelText = "Value"; + args.LabelTextColor = new SolidColorBrush(Colors.Red); + args.ValueTextColor = new SolidColorBrush(Colors.Red); + break; + + } + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSummaryColumnsByGroup1/Web.ts b/code-gen-library/TestsDataLegendStyleSummaryColumnsByGroup1/Web.ts new file mode 100644 index 000000000..151d79795 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSummaryColumnsByGroup1/Web.ts @@ -0,0 +1,26 @@ +//begin imports +import { IgcDataLegendStylingColumnEventArgs } from 'igniteui-webcomponents-charts'; +//end imports + +export class TestsDataLegendStyleSummaryColumnsByGroup1 +{ + //begin eventHandler + public testsDataLegendStyleSummaryColumnsByGroup1(sender:any,args: IgcDataLegendStylingColumnEventArgs) + { + switch (args.groupName) + { + case "Group1": + args.labelText = "Value"; + args.labelTextColor = "blue"; + args.valueTextColor = "blue"; + break; + case "Group2": + args.labelText = "Value"; + args.labelTextColor = "red"; + args.valueTextColor = "red"; + break; + + } + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSummaryColumnsByGroup1/iOS.swift b/code-gen-library/TestsDataLegendStyleSummaryColumnsByGroup1/iOS.swift new file mode 100644 index 000000000..516377502 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSummaryColumnsByGroup1/iOS.swift @@ -0,0 +1,24 @@ +//begin imports +import UIKit; +//end imports + +class TestsDataLegendStyleSummaryColumnsByGroup1 { + + //begin eventHandler + func testsDataLegendStyleSummaryColumnsByGroup1(sender: Any?, args: IgsDataLegendStylingColumnEventArgs?) { + switch args!.groupName { + case "Group1": + args!.labelText = "Value" + args!.labelTextColor = IgsSolidColorBrush(UIColor.blue) + args!.valueTextColor = IgsSolidColorBrush(UIColor.blue) + case "Group2": + args!.labelText = "Value" + args!.labelTextColor = IgsSolidColorBrush(UIColor.red) + args!.valueTextColor = IgsSolidColorBrush(UIColor.red) + default: + break + } + } + //end eventHandler + +} diff --git a/code-gen-library/TestsDataLegendStyleSummaryRows1/Android.kt b/code-gen-library/TestsDataLegendStyleSummaryRows1/Android.kt new file mode 100644 index 000000000..e7cf50a63 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSummaryRows1/Android.kt @@ -0,0 +1,16 @@ +//begin imports +import com.infragistics.mobile.controls.IgaDataLegendStylingRowEventArgs +import com.infragistics.mobile.controls.IgaSolidColorBrush +import android.graphics.Color +//end imports + +class TestsDataLegendStyleSummaryRows1 { + + //begin eventHandler + fun testsDataLegendStyleSummaryRows1(sender: Any?, args: IgaDataLegendStylingRowEventArgs) { + args.titleText = "The Total" + args.titleTextColor = IgaSolidColorBrush(Color.BLUE) + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSummaryRows1/Desktop.cs b/code-gen-library/TestsDataLegendStyleSummaryRows1/Desktop.cs new file mode 100644 index 000000000..1c6e64653 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSummaryRows1/Desktop.cs @@ -0,0 +1,16 @@ +//begin imports +using Infragistics.Controls.Charts; +//end imports + +public class TestsDataLegendStyleSummaryRows1 +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.DataLegendStyleRowHandler + public void TestsDataLegendStyleSummaryRows1(object sender, DataLegendStylingRowEventArgs args) + { + args.TitleText = "The Total"; + args.TitleTextColor = new SolidColorBrush(Colors.Blue); + + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSummaryRows1/Web.ts b/code-gen-library/TestsDataLegendStyleSummaryRows1/Web.ts new file mode 100644 index 000000000..169d31b0c --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSummaryRows1/Web.ts @@ -0,0 +1,16 @@ +//begin imports +import { IgcDataLegendStylingRowEventArgs } from 'igniteui-webcomponents-charts'; + +//end imports + +export class TestsDataLegendStyleSummaryRows1 +{ + //begin eventHandler + public testsDataLegendStyleSummaryRows1(sender: any,args: IgcDataLegendStylingRowEventArgs) + { + args.titleText = "The Total"; + args.titleTextColor = "blue"; + + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSummaryRows1/iOS.swift b/code-gen-library/TestsDataLegendStyleSummaryRows1/iOS.swift new file mode 100644 index 000000000..b10d091a8 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSummaryRows1/iOS.swift @@ -0,0 +1,14 @@ +//begin imports +import UIKit; +//end imports + +class TestsDataLegendStyleSummaryRows1 { + + //begin eventHandler + func testsDataLegendStyleSummaryRows1(sender: Any?, args: IgsDataLegendStylingRowEventArgs?) { + args!.titleText = "The Total" + args!.titleTextColor = IgsSolidColorBrush(UIColor.blue) + } + //end eventHandler + +} diff --git a/code-gen-library/TestsDataLegendStyleSummaryRows2/Android.kt b/code-gen-library/TestsDataLegendStyleSummaryRows2/Android.kt new file mode 100644 index 000000000..157dd8882 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSummaryRows2/Android.kt @@ -0,0 +1,13 @@ +//begin imports +import com.infragistics.mobile.controls.IgaDataLegendStylingRowEventArgs +//end imports + +class TestsDataLegendStyleSummaryRows2 { + + //begin eventHandler + fun testsDataLegendStyleSummaryRows2(sender: Any?, args: IgaDataLegendStylingRowEventArgs) { + args.titleText = "MySummary" + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSummaryRows2/Desktop.cs b/code-gen-library/TestsDataLegendStyleSummaryRows2/Desktop.cs new file mode 100644 index 000000000..e06e6a21a --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSummaryRows2/Desktop.cs @@ -0,0 +1,15 @@ +//begin imports +using Infragistics.Controls.Charts; +//end imports + +public class TestsDataLegendStyleSummaryRows2 +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.DataLegendStyleRowHandler + public void TestsDataLegendStyleSummaryRows2(object sender, DataLegendStylingRowEventArgs args) + { + args.TitleText = "MySummary"; + + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSummaryRows2/Web.ts b/code-gen-library/TestsDataLegendStyleSummaryRows2/Web.ts new file mode 100644 index 000000000..7f922ba57 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSummaryRows2/Web.ts @@ -0,0 +1,15 @@ +//begin imports +import { IgcDataLegendStylingRowEventArgs } from 'igniteui-webcomponents-charts'; +//end imports + +export class TestsDataLegendStyleSummaryRows2 +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.DataLegendStyleRowHandler + public testsDataLegendStyleSummaryRows2(sender:any,args: IgcDataLegendStylingRowEventArgs) + { + args.titleText = "MySummary"; + + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSummaryRows2/iOS.swift b/code-gen-library/TestsDataLegendStyleSummaryRows2/iOS.swift new file mode 100644 index 000000000..e6999e489 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSummaryRows2/iOS.swift @@ -0,0 +1,12 @@ +//begin imports +//end imports + +class TestsDataLegendStyleSummaryRows2 { + + //begin eventHandler + func testsDataLegendStyleSummaryRows2(sender: Any?, args: IgsDataLegendStylingRowEventArgs?) { + args!.titleText = "MySummary" + } + //end eventHandler + +} diff --git a/code-gen-library/TestsDataLegendStyleSummaryRows3/Android.kt b/code-gen-library/TestsDataLegendStyleSummaryRows3/Android.kt new file mode 100644 index 000000000..bf444df74 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSummaryRows3/Android.kt @@ -0,0 +1,16 @@ +//begin imports +import com.infragistics.mobile.controls.IgaDataLegendStylingRowEventArgs +import com.infragistics.mobile.controls.IgaSolidColorBrush +import android.graphics.Color +//end imports + +class TestsDataLegendStyleSummaryRows3 { + + //begin eventHandler + fun testsDataLegendStyleSummaryRows3(sender: Any?, args: IgaDataLegendStylingRowEventArgs) { + args.titleText = "TOTAL" + args.titleTextColor = IgaSolidColorBrush(Color.BLUE) + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSummaryRows3/Desktop.cs b/code-gen-library/TestsDataLegendStyleSummaryRows3/Desktop.cs new file mode 100644 index 000000000..784e7d8cf --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSummaryRows3/Desktop.cs @@ -0,0 +1,16 @@ +//begin imports +using Infragistics.Controls.Charts; +//end imports + +public class TestsDataLegendStyleSummaryRows3 +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.DataLegendStyleRowHandler + public void TestsDataLegendStyleSummaryRows3(object sender, DataLegendStylingRowEventArgs args) + { + args.TitleText = "TOTAL"; + args.TitleTextColor = new SolidColorBrush(Colors.Blue); + + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSummaryRows3/Web.ts b/code-gen-library/TestsDataLegendStyleSummaryRows3/Web.ts new file mode 100644 index 000000000..2d992a40b --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSummaryRows3/Web.ts @@ -0,0 +1,16 @@ +//begin imports +import { IgcDataLegendStylingRowEventArgs } from 'igniteui-webcomponents-charts'; +//end imports + +export class TestsDataLegendStyleSummaryRows3 +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.DataLegendStyleRowHandler + public testsDataLegendStyleSummaryRows3(sender:any,args: IgcDataLegendStylingRowEventArgs) + { + args.titleText = "TOTAL"; + args.titleTextColor = "blue"; + + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSummaryRows3/iOS.swift b/code-gen-library/TestsDataLegendStyleSummaryRows3/iOS.swift new file mode 100644 index 000000000..c5e08a896 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSummaryRows3/iOS.swift @@ -0,0 +1,14 @@ +//begin imports +import UIKit; +//end imports + +class TestsDataLegendStyleSummaryRows3 { + + //begin eventHandler + func testsDataLegendStyleSummaryRows3(sender: Any?, args: IgsDataLegendStylingRowEventArgs?) { + args!.titleText = "TOTAL" + args!.titleTextColor = IgsSolidColorBrush(UIColor.blue) + } + //end eventHandler + +} diff --git a/code-gen-library/TestsDataLegendStyleSummaryRowsByGroup1/Android.kt b/code-gen-library/TestsDataLegendStyleSummaryRowsByGroup1/Android.kt new file mode 100644 index 000000000..20b0e80fa --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSummaryRowsByGroup1/Android.kt @@ -0,0 +1,24 @@ +//begin imports +import com.infragistics.mobile.controls.IgaDataLegendStylingRowEventArgs +import com.infragistics.mobile.controls.IgaSolidColorBrush +import android.graphics.Color +//end imports + +class TestsDataLegendStyleSummaryRowsByGroup1 { + + //begin eventHandler + fun testsDataLegendStyleSummaryRowsByGroup1(sender: Any?, args: IgaDataLegendStylingRowEventArgs) { + when (args.groupName) { + "Group1" -> { + args.titleText = "The Total" + args.titleTextColor = IgaSolidColorBrush(Color.BLUE) + } + "Group2" -> { + args.titleText = "The Total" + args.titleTextColor = IgaSolidColorBrush(Color.RED) + } + } + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSummaryRowsByGroup1/Desktop.cs b/code-gen-library/TestsDataLegendStyleSummaryRowsByGroup1/Desktop.cs new file mode 100644 index 000000000..2c2817250 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSummaryRowsByGroup1/Desktop.cs @@ -0,0 +1,24 @@ +//begin imports +using Infragistics.Controls.Charts; +//end imports + +public class TestsDataLegendStyleSummaryRowsByGroup1 +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.DataLegendStyleRowHandler + public void TestsDataLegendStyleSummaryRowsByGroup1(object sender, DataLegendStylingRowEventArgs args) + { + switch (args.GroupName) + { + case "Group1": + args.TitleText = "The Total"; + args.TitleTextColor = new SolidColorBrush(Colors.Blue); + break; + case "Group2": + args.TitleText = "The Total"; + args.TitleTextColor = new SolidColorBrush(Colors.Red); + break; + } + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSummaryRowsByGroup1/Web.ts b/code-gen-library/TestsDataLegendStyleSummaryRowsByGroup1/Web.ts new file mode 100644 index 000000000..724fe7c63 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSummaryRowsByGroup1/Web.ts @@ -0,0 +1,25 @@ +//begin imports +import { IgcDataLegendStylingRowEventArgs } from 'igniteui-webcomponents-charts'; + +//end imports + +export class TestsDataLegendStyleSummaryRowsByGroup1 +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.DataLegendStyleRowHandler + public testsDataLegendStyleSummaryRowsByGroup1(sender:any,args: IgcDataLegendStylingRowEventArgs) + { + switch (args.groupName) + { + case "Group1": + args.titleText = "The Total"; + args.titleTextColor = "blue"; + break; + case "Group2": + args.titleText = "The Total"; + args.titleTextColor = "red"; + break; + } + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSummaryRowsByGroup1/iOS.swift b/code-gen-library/TestsDataLegendStyleSummaryRowsByGroup1/iOS.swift new file mode 100644 index 000000000..eb1dcc944 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSummaryRowsByGroup1/iOS.swift @@ -0,0 +1,22 @@ +//begin imports +import UIKit; +//end imports + +class TestsDataLegendStyleSummaryRowsByGroup1 { + + //begin eventHandler + func testsDataLegendStyleSummaryRowsByGroup1(sender: Any?, args: IgsDataLegendStylingRowEventArgs?) { + switch args!.groupName { + case "Group1": + args!.titleText = "The Total" + args!.titleTextColor = IgsSolidColorBrush(UIColor.blue) + case "Group2": + args!.titleText = "The Total" + args!.titleTextColor = IgsSolidColorBrush(UIColor.red) + default: + break + } + } + //end eventHandler + +} diff --git a/code-gen-library/TestsDataLegendStyleSummaryRowsByGroup2/Android.kt b/code-gen-library/TestsDataLegendStyleSummaryRowsByGroup2/Android.kt new file mode 100644 index 000000000..1cff76466 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSummaryRowsByGroup2/Android.kt @@ -0,0 +1,24 @@ +//begin imports +import com.infragistics.mobile.controls.IgaDataLegendStylingRowEventArgs +import com.infragistics.mobile.controls.IgaSolidColorBrush +import android.graphics.Color +//end imports + +class TestsDataLegendStyleSummaryRowsByGroup2 { + + //begin eventHandler + fun testsDataLegendStyleSummaryRowsByGroup2(sender: Any?, args: IgaDataLegendStylingRowEventArgs) { + when (args.groupName) { + "Group1" -> { + args.titleText = "Summary" + args.titleTextColor = IgaSolidColorBrush(Color.BLUE) + } + "Group2" -> { + args.titleText = "Summary" + args.titleTextColor = IgaSolidColorBrush(Color.RED) + } + } + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSummaryRowsByGroup2/Desktop.cs b/code-gen-library/TestsDataLegendStyleSummaryRowsByGroup2/Desktop.cs new file mode 100644 index 000000000..121ef97d1 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSummaryRowsByGroup2/Desktop.cs @@ -0,0 +1,24 @@ +//begin imports +using Infragistics.Controls.Charts; +//end imports + +public class TestsDataLegendStyleSummaryRowsByGroup2 +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.DataLegendStyleRowHandler + public void TestsDataLegendStyleSummaryRowsByGroup2(object sender, DataLegendStylingRowEventArgs args) + { + switch (args.GroupName) + { + case "Group1": + args.TitleText = "Summary"; + args.TitleTextColor = new SolidColorBrush(Colors.Blue); + break; + case "Group2": + args.TitleText = "Summary"; + args.TitleTextColor = new SolidColorBrush(Colors.Red); + break; + } + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSummaryRowsByGroup2/Web.ts b/code-gen-library/TestsDataLegendStyleSummaryRowsByGroup2/Web.ts new file mode 100644 index 000000000..c21bc5d8b --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSummaryRowsByGroup2/Web.ts @@ -0,0 +1,24 @@ +//begin imports +import { IgcDataLegendStylingRowEventArgs } from 'igniteui-webcomponents-charts'; + +//end imports + +export class TestsDataLegendStyleSummaryRowsByGroup2 +{ + //begin eventHandler + public testsDataLegendStyleSummaryRowsByGroup2(sender:any,args: IgcDataLegendStylingRowEventArgs) + { + switch (args.groupName) + { + case "Group1": + args.titleText = "Summary"; + args.titleTextColor = "blue"; + break; + case "Group2": + args.titleText = "Summary"; + args.titleTextColor = "red"; + break; + } + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsDataLegendStyleSummaryRowsByGroup2/iOS.swift b/code-gen-library/TestsDataLegendStyleSummaryRowsByGroup2/iOS.swift new file mode 100644 index 000000000..4666949e6 --- /dev/null +++ b/code-gen-library/TestsDataLegendStyleSummaryRowsByGroup2/iOS.swift @@ -0,0 +1,22 @@ +//begin imports +import UIKit; +//end imports + +class TestsDataLegendStyleSummaryRowsByGroup2 { + + //begin eventHandler + func testsDataLegendStyleSummaryRowsByGroup2(sender: Any?, args: IgsDataLegendStylingRowEventArgs?) { + switch args!.groupName { + case "Group1": + args!.titleText = "Summary" + args!.titleTextColor = IgsSolidColorBrush(UIColor.blue) + case "Group2": + args!.titleText = "Summary" + args!.titleTextColor = IgsSolidColorBrush(UIColor.red) + default: + break + } + } + //end eventHandler + +} diff --git a/code-gen-library/TestsSetValueOverlayAxisAnnotationToTEST/Android.kt b/code-gen-library/TestsSetValueOverlayAxisAnnotationToTEST/Android.kt new file mode 100644 index 000000000..c8fce3891 --- /dev/null +++ b/code-gen-library/TestsSetValueOverlayAxisAnnotationToTEST/Android.kt @@ -0,0 +1,13 @@ +//begin imports +//end imports + +public class TestsSetValueOverlayAxisAnnotationToTEST { + + //begin eventHandler + //Kotlin: Any?___String? + public fun testsSetValueOverlayAxisAnnotationToTEST(sender: Any?, item: Any?): String? { + return "TEST" + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsSetValueOverlayAxisAnnotationToTEST/WPF.cs b/code-gen-library/TestsSetValueOverlayAxisAnnotationToTEST/WPF.cs new file mode 100644 index 000000000..3f2ad1254 --- /dev/null +++ b/code-gen-library/TestsSetValueOverlayAxisAnnotationToTEST/WPF.cs @@ -0,0 +1,14 @@ +//begin imports +using Infragistics.Controls.Charts; +//end imports + +public class TestsSetValueOverlayAxisAnnotationToTEST +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.AxisFormatLabelEventHandler + public string TestsSetValueOverlayAxisAnnotationToTEST(object sender, object item) + { + return "TEST"; + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsSetValueOverlayAxisAnnotationToTEST/Web.ts b/code-gen-library/TestsSetValueOverlayAxisAnnotationToTEST/Web.ts new file mode 100644 index 000000000..e5ab77b9a --- /dev/null +++ b/code-gen-library/TestsSetValueOverlayAxisAnnotationToTEST/Web.ts @@ -0,0 +1,12 @@ +//begin imports +//end imports + +export class TestsSetValueOverlayAxisAnnotationToTEST +{ + //begin eventHandler + public testsSetValueOverlayAxisAnnotationToTEST(sender: any, item: any): string + { + return "TEST"; + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsSetValueOverlayAxisAnnotationToTEST/WindowsForms.cs b/code-gen-library/TestsSetValueOverlayAxisAnnotationToTEST/WindowsForms.cs new file mode 100644 index 000000000..e1c21524c --- /dev/null +++ b/code-gen-library/TestsSetValueOverlayAxisAnnotationToTEST/WindowsForms.cs @@ -0,0 +1,15 @@ +//begin imports +using Infragistics.Controls.Charts; +using Infragistics.Win.DataVisualization; +//end imports + +public class TestsSetValueOverlayAxisAnnotationToTEST +{ + //begin eventHandler + //WPF: Infragistics.Win.DataVisualization.AxisFormatLabelHandler + public string TestsSetValueOverlayAxisAnnotationToTEST(AxisLabelInfo info) + { + return "TEST"; + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsSetValueOverlayAxisAnnotationToTEST/iOS.swift b/code-gen-library/TestsSetValueOverlayAxisAnnotationToTEST/iOS.swift new file mode 100644 index 000000000..1efa58d6d --- /dev/null +++ b/code-gen-library/TestsSetValueOverlayAxisAnnotationToTEST/iOS.swift @@ -0,0 +1,13 @@ +//begin imports +//end imports + +public class TestsSetValueOverlayAxisAnnotationToTEST { + + //begin eventHandler + //Swift: Any?___String? + public func testsSetValueOverlayAxisAnnotationToTEST(sender: Any?, args: Any?) -> String? { + return "TEST" + } + //end eventHandler + +} diff --git a/code-gen-library/TestsUpdateBadgeModeInSeriesAddedEvent/Android.kt b/code-gen-library/TestsUpdateBadgeModeInSeriesAddedEvent/Android.kt new file mode 100644 index 000000000..741d48add --- /dev/null +++ b/code-gen-library/TestsUpdateBadgeModeInSeriesAddedEvent/Android.kt @@ -0,0 +1,14 @@ +//begin imports +import com.infragistics.mobile.controls.IgaChartSeriesEventArgs +import com.infragistics.mobile.controls.IgaLegendItemBadgeMode +//end imports + +class TestsUpdateBadgeModeInSeriesAddedEvent { + + //begin eventHandler + fun testsUpdateBadgeModeInSeriesAddedEvent(sender: Any?, args: IgaChartSeriesEventArgs) { + args.series!!.legendItemBadgeMode = IgaLegendItemBadgeMode.MATCH_SERIES; + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsUpdateBadgeModeInSeriesAddedEvent/Desktop.cs b/code-gen-library/TestsUpdateBadgeModeInSeriesAddedEvent/Desktop.cs new file mode 100644 index 000000000..3b6be1500 --- /dev/null +++ b/code-gen-library/TestsUpdateBadgeModeInSeriesAddedEvent/Desktop.cs @@ -0,0 +1,16 @@ +//begin imports +using Infragistics.Controls.Charts; +using Newtonsoft.Json.Linq; +//end imports + +public class TestsUpdateBadgeModeInSeriesAddedEvent +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.ChartSeriesEventHandler + public void TestsUpdateBadgeModeInSeriesAddedEvent(object sender, ChartSeriesEventArgs args) + { + args.Series.LegendItemBadgeMode = LegendItemBadgeMode.MatchSeries; + + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsUpdateBadgeModeInSeriesAddedEvent/Web.ts b/code-gen-library/TestsUpdateBadgeModeInSeriesAddedEvent/Web.ts new file mode 100644 index 000000000..3197af306 --- /dev/null +++ b/code-gen-library/TestsUpdateBadgeModeInSeriesAddedEvent/Web.ts @@ -0,0 +1,16 @@ +//begin imports +import { IgcChartSeriesEventArgs } from 'igniteui-webcomponents-charts'; +import { LegendItemBadgeMode } from 'igniteui-webcomponents-core'; + +//end imports + +export class TestsUpdateBadgeModeInSeriesAddedEvent +{ + //begin eventHandler + public testsUpdateBadgeModeInSeriesAddedEvent(sender: any,args: IgcChartSeriesEventArgs): void + { + args.series.legendItemBadgeMode = LegendItemBadgeMode.MatchSeries; + + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsUpdateBadgeModeInSeriesAddedEvent/iOS.swift b/code-gen-library/TestsUpdateBadgeModeInSeriesAddedEvent/iOS.swift new file mode 100644 index 000000000..ff9c998ab --- /dev/null +++ b/code-gen-library/TestsUpdateBadgeModeInSeriesAddedEvent/iOS.swift @@ -0,0 +1,12 @@ +//begin imports +//end imports + +class TestsUpdateBadgeModeInSeriesAddedEvent { + + //begin eventHandler + func testsUpdateBadgeModeInSeriesAddedEvent(sender: Any?, args: IgsChartSeriesEventArgs?) { + args!.series!.legendItemBadgeMode = IgsLegendItemBadgeMode.matchSeries + } + //end eventHandler + +} diff --git a/code-gen-library/TestsUpdateGroupsInSeriesAddedEvent/Android.kt b/code-gen-library/TestsUpdateGroupsInSeriesAddedEvent/Android.kt new file mode 100644 index 000000000..57c52c28b --- /dev/null +++ b/code-gen-library/TestsUpdateGroupsInSeriesAddedEvent/Android.kt @@ -0,0 +1,36 @@ +//begin imports +import com.infragistics.mobile.controls.IgaChartSeriesEventArgs +import com.infragistics.mobile.controls.JsonDictionaryObject +import com.infragistics.mobile.controls.JsonDictionaryValue +import com.infragistics.mobile.controls.JsonDictionaryArray +import com.infragistics.mobile.controls.JsonDictionaryParser +//end imports + +import com.infragistics.mobile.controls.CodeGenHelper + +public class TestsUpdateGroupsInSeriesAddedEvent { + + //begin eventHandler + var groupIndex = 0 + public fun testsUpdateGroupsInSeriesAddedEvent(sender: Any?, args: IgaChartSeriesEventArgs) { + val o = CodeGenHelper.findByName("SeriesAddedGroups") + var parser = JsonDictionaryParser(); + val obj = parser.parse(((o as JsonDictionaryValue).value as String)) as JsonDictionaryObject; + val updateAnnotations = (obj["includeAnnotations"] as JsonDictionaryValue).value as Boolean; + val seriesGroups = obj["names"] as JsonDictionaryArray; + val groups = mutableListOf() + for (i in 0 until seriesGroups.items!!.size) { + groups.add((seriesGroups.items!![i] as JsonDictionaryValue).value as String) + } + + if (args.series!!.isAnnotationLayer && !updateAnnotations) { + return; + } + + if (groupIndex >= groups.size) groupIndex = 0 + if (groups.contains(args.series!!.dataLegendGroup)) return + args.series!!.dataLegendGroup = groups[groupIndex++] + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsUpdateGroupsInSeriesAddedEvent/WPF.cs b/code-gen-library/TestsUpdateGroupsInSeriesAddedEvent/WPF.cs new file mode 100644 index 000000000..73ae1acde --- /dev/null +++ b/code-gen-library/TestsUpdateGroupsInSeriesAddedEvent/WPF.cs @@ -0,0 +1,26 @@ +//begin imports +using Infragistics.Controls.Charts; +using Newtonsoft.Json.Linq; +//end imports + +public class TestsUpdateGrpupsInSeriesAddedEvent +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.ChartSeriesEventHandler + int groupIndex = 0; + public void TestsUpdateGroupsInSeriesAddedEvent(object sender, ChartSeriesEventArgs args) + { + object o = CodeGenHelper.FindByName("SeriesAddedGroups"); + JObject obj = JObject.Parse(o.ToString()); + bool updateAnnotations = obj["includeAnnotations"].ToObject(); + var seriesGroups = (JArray) obj["names"]; + List groups = seriesGroups.ToObject>(); + + if (groupIndex >= groups.Count) + groupIndex = 0; + if (groups.Contains(args.Series.DataLegendGroup)) + return; // already set + args.Series.DataLegendGroup = groups[groupIndex++]; + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsUpdateGroupsInSeriesAddedEvent/Web.ts b/code-gen-library/TestsUpdateGroupsInSeriesAddedEvent/Web.ts new file mode 100644 index 000000000..794206685 --- /dev/null +++ b/code-gen-library/TestsUpdateGroupsInSeriesAddedEvent/Web.ts @@ -0,0 +1,32 @@ +//begin imports +import { IgcChartSeriesEventArgs } from 'igniteui-webcomponents-charts'; + +//end imports + +export class TestsUpdateGrpupsInSeriesAddedEvent +{ + //begin eventHandler + groupIndex: number = 0; + updateAnnotations: boolean = false; + groups: string[] = null; + public testsUpdateGroupsInSeriesAddedEvent(sender: any,args: IgrChartSeriesEventArgs): void + { + if (this.groups == null){ + const o = CodeGenHelper.findByName("SeriesAddedGroups"); + const obj = JSON.parse(o["value"]); + this.updateAnnotations = obj.includeAnnotations; + this.groups = obj.names; + } + + if (args.series.isAnnotationLayer && !this.updateAnnotations) { + return; + } + + if (this.groupIndex >= this.groups.length) + this.groupIndex = 0; + if (this.groups.includes(args.series.dataLegendGroup)) + return; // already set + args.series.dataLegendGroup = this.groups[this.groupIndex++]; + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsUpdateGroupsInSeriesAddedEvent/WindowsForms.cs b/code-gen-library/TestsUpdateGroupsInSeriesAddedEvent/WindowsForms.cs new file mode 100644 index 000000000..328947aae --- /dev/null +++ b/code-gen-library/TestsUpdateGroupsInSeriesAddedEvent/WindowsForms.cs @@ -0,0 +1,35 @@ +//begin imports +using Infragistics.Win.DataVisualization; +using Infragistics.Win.Description; +//end imports + +public class TestsUpdateGrpupsInSeriesAddedEvent +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.ChartSeriesEventHandler + int groupIndex = 0; + public void TestsUpdateGroupsInSeriesAddedEvent(object sender, ChartSeriesEventArgs args) + { + var parser = new JsonDictionaryParser(); + object o = CodeGenHelper.FindByName("SeriesAddedGroups"); + var obj = (JsonDictionaryObject)parser.Parse((string)((JsonDictionaryValue)o).Value); + var updateAnnotations = (bool)(obj["includeAnnotations"] as JsonDictionaryValue).Value; + var seriesGroups = (JsonDictionaryArray)obj["names"]; + List groups = new List(); + foreach (var item in seriesGroups.Items) + { + groups.Add(((JsonDictionaryValue)item).Value as String); + } + + if (args.Series.IsAnnotationLayer && !updateAnnotations) { + return; + } + + if (groupIndex >= groups.Count) + groupIndex = 0; + if (groups.Contains(args.Series.DataLegendGroup)) + return; // already set + args.Series.DataLegendGroup = groups[groupIndex++]; + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsUpdateGroupsInSeriesAddedEvent/iOS.swift b/code-gen-library/TestsUpdateGroupsInSeriesAddedEvent/iOS.swift new file mode 100644 index 000000000..52c611ea5 --- /dev/null +++ b/code-gen-library/TestsUpdateGroupsInSeriesAddedEvent/iOS.swift @@ -0,0 +1,30 @@ +//begin imports +//end imports + +public class TestsUpdateGroupsInSeriesAddedEvent { + + //begin eventHandler + var groupIndex = 0 + public func testsUpdateGroupsInSeriesAddedEvent(sender: Any?, args: IgsChartSeriesEventArgs?) { + let o = CodeGenHelper.findByName(Any.self, "SeriesAddedGroups") + let parser = JsonDictionaryParser() + let obj = parser.parse(json_: (o as! JsonDictionaryValue).value as! String) as! JsonDictionaryObject + let updateAnnotations = (obj["includeAnnotations"] as! JsonDictionaryValue).value as! Bool + let seriesGroups = obj["names"] as! JsonDictionaryArray + var groups: [String] = [] + for i in 0..= groups.count { groupIndex = 0 } + if args!.series!.dataLegendGroup != nil && groups.contains(args!.series!.dataLegendGroup!) { return } + args!.series!.dataLegendGroup = groups[groupIndex] + groupIndex += 1 + } + //end eventHandler + +} diff --git a/code-gen-library/TestsUpdateTitlesInSeriesAddedEvent/Android.kt b/code-gen-library/TestsUpdateTitlesInSeriesAddedEvent/Android.kt new file mode 100644 index 000000000..e253a53ea --- /dev/null +++ b/code-gen-library/TestsUpdateTitlesInSeriesAddedEvent/Android.kt @@ -0,0 +1,34 @@ +//begin imports +import com.infragistics.mobile.controls.IgaChartSeriesEventArgs +import com.infragistics.mobile.controls.JsonDictionaryObject +import com.infragistics.mobile.controls.JsonDictionaryValue +import com.infragistics.mobile.controls.JsonDictionaryArray +import com.infragistics.mobile.controls.JsonDictionaryParser +//end imports + +import com.infragistics.mobile.controls.CodeGenHelper + +public class TestsUpdateTitlesInSeriesAddedEvent { + + //begin eventHandler + var titleIndex = 0 + public fun testsUpdateTitlesInSeriesAddedEvent(sender: Any?, args: IgaChartSeriesEventArgs) { + val o = CodeGenHelper.findByName("SeriesAddedTitles") + var parser = JsonDictionaryParser(); + val obj = parser.parse(((o as JsonDictionaryValue).value as String)) as JsonDictionaryObject; + + val updateAnnotations = (obj["includeAnnotations"] as JsonDictionaryValue).value as Boolean; + val seriesTitles = obj["names"] as JsonDictionaryArray; + val names = mutableListOf() + for (i in 0 until seriesTitles.items!!.size) { + names.add((seriesTitles.items!![i] as JsonDictionaryValue).value as String); + } + + if (args.series!!.isAnnotationLayer && !updateAnnotations) return + if (titleIndex >= names.size) titleIndex = 0 + if (names.contains(args.series!!.title)) return + args.series!!.title = names[titleIndex++] + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsUpdateTitlesInSeriesAddedEvent/WPF.cs b/code-gen-library/TestsUpdateTitlesInSeriesAddedEvent/WPF.cs new file mode 100644 index 000000000..d3922f525 --- /dev/null +++ b/code-gen-library/TestsUpdateTitlesInSeriesAddedEvent/WPF.cs @@ -0,0 +1,28 @@ +//begin imports +using Infragistics.Controls.Charts; +using Newtonsoft.Json.Linq; +//end imports + +public class TestsUpdateTitlesInSeriesAddedEvent +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.ChartSeriesEventHandler + int titleIndex = 0; + public void TestsUpdateTitlesInSeriesAddedEvent(object sender, ChartSeriesEventArgs args) + { + object o = CodeGenHelper.FindByName("SeriesAddedTitles"); + JObject obj = JObject.Parse(o.ToString()); + bool updateAnnotations = obj["includeAnnotations"].ToObject(); + var seriesTitles = (JArray) obj["names"]; + List names = seriesTitles.ToObject>(); + + if (args.Series.IsAnnotationLayer && !updateAnnotations) + return; + if (titleIndex >= names.Count) + titleIndex = 0; + if (names.Contains(args.Series.Title)) + return; // already set + args.Series.Title = names[titleIndex++]; + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsUpdateTitlesInSeriesAddedEvent/Web.ts b/code-gen-library/TestsUpdateTitlesInSeriesAddedEvent/Web.ts new file mode 100644 index 000000000..664244f24 --- /dev/null +++ b/code-gen-library/TestsUpdateTitlesInSeriesAddedEvent/Web.ts @@ -0,0 +1,36 @@ +//begin imports +import { IgcChartSeriesEventArgs } from 'igniteui-webcomponents-charts'; + +//end imports + +export class TestsUpdateTitlesInSeriesAddedEvent { + //begin eventHandler + titleIndex:number = 0; + updateAnnotations: boolean = false; + names: string[] = null; + public testsUpdateTitlesInSeriesAddedEvent(sender: any,args: IgrChartSeriesEventArgs): void { + if (this.names == null){ + const o = CodeGenHelper.findByName("SeriesAddedTitles"); + const obj = JSON.parse(o["value"]); + + this.updateAnnotations = obj.includeAnnotations; + this.names = obj.names; + } + + if (args.series.isAnnotationLayer && !this.updateAnnotations) { + return; + } + + if (this.titleIndex >= this.names.length) { + this.titleIndex = 0; + } + + if (this.names.includes(args.series.title)) { + return; // already set + } + + args.series.title = this.names[this.titleIndex++]; + + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsUpdateTitlesInSeriesAddedEvent/WindowsForms.cs b/code-gen-library/TestsUpdateTitlesInSeriesAddedEvent/WindowsForms.cs new file mode 100644 index 000000000..56b1dbd9b --- /dev/null +++ b/code-gen-library/TestsUpdateTitlesInSeriesAddedEvent/WindowsForms.cs @@ -0,0 +1,34 @@ +//begin imports +using Infragistics.Controls.Charts; +using Newtonsoft.Json.Linq; +using Infragistics.Win.Description; +//end imports + +public class TestsUpdateTitlesInSeriesAddedEvent +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.ChartSeriesEventHandler + int titleIndex = 0; + public void TestsUpdateTitlesInSeriesAddedEvent(object sender, ChartSeriesEventArgs args) + { + var parser = new JsonDictionaryParser(); + object o = CodeGenHelper.FindByName("SeriesAddedTitles"); + var obj = (JsonDictionaryObject)parser.Parse((string)((JsonDictionaryValue)o).Value); + var updateAnnotations = (bool)(obj["includeAnnotations"] as JsonDictionaryValue).Value; + + var seriesTitles = (JsonDictionaryArray)obj["names"]; + List names = new List(); + foreach (var item in seriesTitles.Items) { + names.Add(((JsonDictionaryValue)item).Value as String); + } + + if (args.Series.IsAnnotationLayer && !updateAnnotations) + return; + if (titleIndex >= names.Count) + titleIndex = 0; + if (names.Contains(args.Series.Title)) + return; // already set + args.Series.Title = names[titleIndex++]; + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsUpdateTitlesInSeriesAddedEvent/iOS.swift b/code-gen-library/TestsUpdateTitlesInSeriesAddedEvent/iOS.swift new file mode 100644 index 000000000..9de7c3cec --- /dev/null +++ b/code-gen-library/TestsUpdateTitlesInSeriesAddedEvent/iOS.swift @@ -0,0 +1,28 @@ +//begin imports +//end imports + +public class TestsUpdateTitlesInSeriesAddedEvent { + + //begin eventHandler + var titleIndex = 0 + public func testsUpdateTitlesInSeriesAddedEvent(sender: Any?, args: IgsChartSeriesEventArgs?) { + let o = CodeGenHelper.findByName(Any.self, "SeriesAddedTitles") + let parser = JsonDictionaryParser() + let obj = parser.parse(json_: (o as! JsonDictionaryValue).value as! String) as! JsonDictionaryObject + + let updateAnnotations = (obj["includeAnnotations"] as! JsonDictionaryValue).value as! Bool + let seriesTitles = obj["names"] as! JsonDictionaryArray + var names: [String] = [] + for i in 0..= names.count { titleIndex = 0 } + if args!.series!.title != nil && names.contains(args!.series!.title as! String) { return } + args!.series!.title = names[titleIndex] + titleIndex += 1 + } + //end eventHandler + +} diff --git a/code-gen-library/TestsUpdateValueLayerPrecisionInSeriesAddedEvent/Android.kt b/code-gen-library/TestsUpdateValueLayerPrecisionInSeriesAddedEvent/Android.kt new file mode 100644 index 000000000..53a8a6294 --- /dev/null +++ b/code-gen-library/TestsUpdateValueLayerPrecisionInSeriesAddedEvent/Android.kt @@ -0,0 +1,26 @@ +//begin imports +import com.infragistics.mobile.controls.IgaChartSeriesEventArgs +import com.infragistics.mobile.controls.IgaValueLayer +import com.infragistics.mobile.controls.JsonDictionaryObject +import com.infragistics.mobile.controls.JsonDictionaryValue +import com.infragistics.mobile.controls.JsonDictionaryParser +//end imports + +import com.infragistics.controls.CodeGenHelper + +class TestsUpdateValueLayerPrecisionInSeriesAddedEvent { + + //begin eventHandler + fun testsUpdateValueLayerPrecisionInSeriesAddedEvent(sender: Any?, args: IgaChartSeriesEventArgs) { + val o = CodeGenHelper.findByName("SeriesAddedValueLayerPrecision") + var parser = JsonDictionaryParser(); + val obj = parser.parse(((o as JsonDictionaryValue).value as String)) as JsonDictionaryObject; + val precision = (obj["precision"] as JsonDictionaryValue).value as Int; + if (args.series is IgaValueLayer) { + val layer = args.series as IgaValueLayer + layer.yAxisAnnotationInterpolatedValuePrecision = precision + } + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/TestsUpdateValueLayerPrecisionInSeriesAddedEvent/WPF.cs b/code-gen-library/TestsUpdateValueLayerPrecisionInSeriesAddedEvent/WPF.cs new file mode 100644 index 000000000..7b5b7ff26 --- /dev/null +++ b/code-gen-library/TestsUpdateValueLayerPrecisionInSeriesAddedEvent/WPF.cs @@ -0,0 +1,23 @@ +//begin imports +using Infragistics.Controls.Charts; +using Newtonsoft.Json.Linq; +//end imports + +public class TestsUpdateValueLayerPrecisionInSeriesAddedEvent +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.ChartSeriesEventHandler + public void TestsUpdateValueLayerPrecisionInSeriesAddedEvent(object sender, ChartSeriesEventArgs args) + { + object o = CodeGenHelper.FindByName("SeriesAddedValueLayerPrecision"); + JObject obj = JObject.Parse(o.ToString()); + int precision = obj["precision"].ToObject(); + if (args.Series is ValueLayer) + { + ValueLayer layer = args.Series as ValueLayer; + layer.YAxisAnnotationInterpolatedValuePrecision = precision; + + } + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsUpdateValueLayerPrecisionInSeriesAddedEvent/Web.ts b/code-gen-library/TestsUpdateValueLayerPrecisionInSeriesAddedEvent/Web.ts new file mode 100644 index 000000000..9f679c981 --- /dev/null +++ b/code-gen-library/TestsUpdateValueLayerPrecisionInSeriesAddedEvent/Web.ts @@ -0,0 +1,24 @@ +//begin imports +import { IgcChartSeriesEventArgs, IgcValueLayerComponent } from 'igniteui-webcomponents-charts'; + +//end imports + +export class TestsUpdateValueLayerPrecisionInSeriesAddedEvent +{ + //begin eventHandler + public testsUpdateValueLayerPrecisionInSeriesAddedEvent(sender: any,args: IgcChartSeriesEventArgs): void + { + const o: any = CodeGenHelper.findByName("SeriesAddedValueLayerPrecision"); + const obj = JSON.parse(o.value.toString()); + + const precision: number = obj.precision; + + var valueLayer = args.series as IgcValueLayerComponent; + if (valueLayer) { + valueLayer.yAxisAnnotationInterpolatedValuePrecision = precision; + } + + } + + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsUpdateValueLayerPrecisionInSeriesAddedEvent/WindowsForms.cs b/code-gen-library/TestsUpdateValueLayerPrecisionInSeriesAddedEvent/WindowsForms.cs new file mode 100644 index 000000000..4136254dc --- /dev/null +++ b/code-gen-library/TestsUpdateValueLayerPrecisionInSeriesAddedEvent/WindowsForms.cs @@ -0,0 +1,25 @@ +//begin imports +using Infragistics.Controls.Charts; +using Newtonsoft.Json.Linq; +using Infragistics.Win.Description; +//end imports + +public class TestsUpdateValueLayerPrecisionInSeriesAddedEvent +{ + //begin eventHandler + //WPF: Infragistics.Controls.Charts.ChartSeriesEventHandler + public void TestsUpdateValueLayerPrecisionInSeriesAddedEvent(object sender, ChartSeriesEventArgs args) + { + JsonDictionaryParser parser = new JsonDictionaryParser(); + object o = CodeGenHelper.FindByName("SeriesAddedValueLayerPrecision"); + var obj = (JsonDictionaryObject)parser.Parse((string)((JsonDictionaryValue)o).Value); + int precision = (int)(double)(obj["precision"] as JsonDictionaryValue).Value; + if (args.Series is ValueLayer) + { + ValueLayer layer = args.Series as ValueLayer; + layer.YAxisAnnotationInterpolatedValuePrecision = precision; + + } + } + //end eventHandler +} \ No newline at end of file diff --git a/code-gen-library/TestsUpdateValueLayerPrecisionInSeriesAddedEvent/iOS.swift b/code-gen-library/TestsUpdateValueLayerPrecisionInSeriesAddedEvent/iOS.swift new file mode 100644 index 000000000..b6960366c --- /dev/null +++ b/code-gen-library/TestsUpdateValueLayerPrecisionInSeriesAddedEvent/iOS.swift @@ -0,0 +1,18 @@ +//begin imports +//end imports + +class TestsUpdateValueLayerPrecisionInSeriesAddedEvent { + + //begin eventHandler + func testsUpdateValueLayerPrecisionInSeriesAddedEvent(sender: Any?, args: IgsChartSeriesEventArgs?) { + let o = CodeGenHelper.findByName(Any.self, "SeriesAddedValueLayerPrecision") + let parser = JsonDictionaryParser() + let obj = parser.parse(json_: (o as! JsonDictionaryValue).value as! String) as! JsonDictionaryObject + let precision = (obj["precision"] as! JsonDictionaryValue).value as! Int + if let layer = args!.series as? IgsValueLayer { + layer.yAxisAnnotationInterpolatedValuePrecision = precision + } + } + //end eventHandler + +} diff --git a/code-gen-library/ToolbarCustomIconOnInit/Android.kt b/code-gen-library/ToolbarCustomIconOnInit/Android.kt new file mode 100644 index 000000000..4b510a890 --- /dev/null +++ b/code-gen-library/ToolbarCustomIconOnInit/Android.kt @@ -0,0 +1,23 @@ +//begin imports +import com.infragistics.mobile.controls.SvgIconRegistry +import com.infragistics.mobile.controls.IgaToolbar +//end imports + +import com.infragistics.mobile.controls.CodeGenHelper + +class ToolbarCustomIconOnInit { + + //begin eventHandler + //Kotlin: Action + fun toolbarCustomIconOnInit() { + val icon = """ + + """.trimIndent() + + SvgIconRegistry.instance.addSvgPathString("CustomCollection", "CustomIcon", icon) + val toolbar = CodeGenHelper.getDescription("aboveContentLeft") + toolbar.registerIconFromText("CustomCollection", "CustomIcon", icon) + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/ToolbarCustomIconOnInit/iOS.swift b/code-gen-library/ToolbarCustomIconOnInit/iOS.swift new file mode 100644 index 000000000..009cb4283 --- /dev/null +++ b/code-gen-library/ToolbarCustomIconOnInit/iOS.swift @@ -0,0 +1,19 @@ +//begin imports +//end imports + +class ToolbarCustomIconOnInit { + + //begin eventHandler + //Swift: Action + func toolbarCustomIconOnInit() { + let icon = """ + + """ + + SvgIconRegistry.instance.addSvgPathString("CustomCollection", "CustomIcon", icon) + let toolbar = CodeGenHelper.getDescription(IgsToolbar.self, "aboveContentLeft") + toolbar.registerIconFromText("CustomCollection", "CustomIcon", icon) + } + //end eventHandler + +} diff --git a/code-gen-library/ToolbarCustomIconOnViewInit/Android.kt b/code-gen-library/ToolbarCustomIconOnViewInit/Android.kt new file mode 100644 index 000000000..90c340573 --- /dev/null +++ b/code-gen-library/ToolbarCustomIconOnViewInit/Android.kt @@ -0,0 +1,22 @@ +//begin imports +import com.infragistics.mobile.controls.SvgIconRegistry +import com.infragistics.mobile.controls.IgaToolbar +//end imports + +class ToolbarCustomIconOnViewInit { + + //begin eventHandler + //Kotlin: Action + fun toolbarCustomIconOnViewInit() { + val icon = """ + + """.trimIndent() + + SvgIconRegistry.instance.addSvgPathString("CustomCollection", "CustomIcon", icon) + val toolbar = CodeGenHelper.getDescription("aboveContentLeft") + toolbar.registerIconFromText("CustomCollection", "CustomIcon", icon) + toolbar.registerIconFromDataURL("CustomCollection2", "CustomIcon2", "https://www.svgrepo.com/show/678/calculator.svg") + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/ToolbarCustomIconOnViewInit/iOS.swift b/code-gen-library/ToolbarCustomIconOnViewInit/iOS.swift new file mode 100644 index 000000000..41dad964a --- /dev/null +++ b/code-gen-library/ToolbarCustomIconOnViewInit/iOS.swift @@ -0,0 +1,20 @@ +//begin imports +//end imports + +class ToolbarCustomIconOnViewInit { + + //begin eventHandler + //Swift: Action + func toolbarCustomIconOnViewInit() { + let icon = """ + + """ + + SvgIconRegistry.instance.addSvgPathString("CustomCollection", "CustomIcon", icon) + let toolbar = CodeGenHelper.getDescription(IgsToolbar.self, "aboveContentLeft") + toolbar.registerIconFromText("CustomCollection", "CustomIcon", icon) + toolbar.registerIconFromDataURL("CustomCollection2", "CustomIcon2", "https://www.svgrepo.com/show/678/calculator.svg") + } + //end eventHandler + +} diff --git a/code-gen-library/ToolbarThemeChanged/Android.kt b/code-gen-library/ToolbarThemeChanged/Android.kt new file mode 100644 index 000000000..e4b844fe6 --- /dev/null +++ b/code-gen-library/ToolbarThemeChanged/Android.kt @@ -0,0 +1,35 @@ +//begin imports +import com.infragistics.mobile.controls.IgaToolCommandEventArgs +import com.infragistics.mobile.controls.IgaDataChart +import com.infragistics.mobile.controls.IgaSeries +import com.infragistics.mobile.controls.IgaDataToolTipLayer +//end imports + +import com.infragistics.mobile.controls.CodeGenHelper + +class ToolbarThemeChanged { + + //begin eventHandler + fun toolbarThemeChanged(sender: Any?, e: IgaToolCommandEventArgs) { + val target = CodeGenHelper.getDescription("content") + + when (e.command.commandId) { + "EnableTooltips" -> { + var toRemove: IgaSeries? = null + for (s in target.series) { + if (s is IgaDataToolTipLayer) { + toRemove = s + } + } + + if (toRemove == null) { + target.series.add(IgaDataToolTipLayer()) + } else { + target.series.remove(toRemove) + } + } + } + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/ToolbarThemeChanged/iOS.swift b/code-gen-library/ToolbarThemeChanged/iOS.swift new file mode 100644 index 000000000..5563db50f --- /dev/null +++ b/code-gen-library/ToolbarThemeChanged/iOS.swift @@ -0,0 +1,32 @@ +//begin imports +//end imports + +class ToolbarThemeChanged { + + //begin eventHandler + func toolbarThemeChanged(sender: Any?, e: IgsToolCommandEventArgs?) { + let target = CodeGenHelper.getDescription(IgsDataChart.self, "content") + + switch e!.command!.commandId { + case "EnableTooltips": + var toRemove: IgsSeries? = nil + for s in target.series { + if s is IgsDataToolTipLayer { + toRemove = s as? IgsSeries + } + } + + if toRemove == nil { + target.series.append(IgsDataToolTipLayer()) + } else { + if let index = target.series.firstIndex(where: { $0 === toRemove }) { + target.series.remove(at: index) + } + } + default: + break + } + } + //end eventHandler + +} diff --git a/code-gen-library/ToolbarToggleAnnotations/Android.kt b/code-gen-library/ToolbarToggleAnnotations/Android.kt new file mode 100644 index 000000000..872276aa6 --- /dev/null +++ b/code-gen-library/ToolbarToggleAnnotations/Android.kt @@ -0,0 +1,74 @@ +//begin imports +import com.infragistics.mobile.controls.IgaToolCommandEventArgs +import com.infragistics.mobile.controls.IgaToolbar +import com.infragistics.mobile.controls.IgaDataChart +import com.infragistics.mobile.controls.IgaSeries +import com.infragistics.mobile.controls.IgaDataToolTipLayer +import com.infragistics.mobile.controls.IgaCrosshairLayer +import com.infragistics.mobile.controls.IgaFinalValueLayer +//end imports + +import com.infragistics.mobile.controls.CodeGenHelper + +class ToolbarToggleAnnotations { + + //begin eventHandler + fun toolbarToggleAnnotations(sender: Any?, e: IgaToolCommandEventArgs) { + val toolbar = sender as IgaToolbar + val target = toolbar.target as IgaDataChart + var enable = false + + when (e.command.commandId) { + "EnableTooltips" -> { + enable = e.command.argumentsList[0].value as Boolean + if (enable) { + target.series.add(IgaDataToolTipLayer()) + } else { + var toRemove: IgaSeries? = null + for (s in target.series) { + if (s is IgaDataToolTipLayer) { + toRemove = s + } + } + if (toRemove != null) { + target.series.remove(toRemove) + } + } + } + "EnableCrosshairs" -> { + enable = e.command.argumentsList[0].value as Boolean + if (enable) { + target.series.add(IgaCrosshairLayer()) + } else { + var toRemove: IgaSeries? = null + for (s in target.series) { + if (s is IgaCrosshairLayer) { + toRemove = s + } + } + if (toRemove != null) { + target.series.remove(toRemove) + } + } + } + "EnableFinalValues" -> { + enable = e.command.argumentsList[0].value as Boolean + if (enable) { + target.series.add(IgaFinalValueLayer()) + } else { + var toRemove: IgaSeries? = null + for (s in target.series) { + if (s is IgaFinalValueLayer) { + toRemove = s + } + } + if (toRemove != null) { + target.series.remove(toRemove) + } + } + } + } + } + //end eventHandler + +} \ No newline at end of file diff --git a/code-gen-library/ToolbarToggleAnnotations/iOS.swift b/code-gen-library/ToolbarToggleAnnotations/iOS.swift new file mode 100644 index 000000000..43d633193 --- /dev/null +++ b/code-gen-library/ToolbarToggleAnnotations/iOS.swift @@ -0,0 +1,55 @@ +//begin imports +//end imports + +class ToolbarToggleAnnotations { + + //begin eventHandler + func toolbarToggleAnnotations(sender: Any?, e: IgsToolCommandEventArgs?) { + let toolbar = sender as! IgsToolbar + let target = toolbar.target as! IgsDataChart + var enable = false + + switch e.command.commandId { + case "EnableTooltips": + enable = e.command.argumentsList[0].value as! Bool + if enable { + target.series.append(IgsDataToolTipLayer()) + } else { + if let toRemove = target.series.first(where: { $0 is IgsDataToolTipLayer }) { + if let index = target.series.firstIndex(where: { $0 === toRemove }) { + target.series.remove(at: index) + } + } + } + + case "EnableCrosshairs": + enable = e.command.argumentsList[0].value as! Bool + if enable { + target.series.append(IgsCrosshairLayer()) + } else { + if let toRemove = target.series.first(where: { $0 is IgsCrosshairLayer }) { + if let index = target.series.firstIndex(where: { $0 === toRemove }) { + target.series.remove(at: index) + } + } + } + + case "EnableFinalValues": + enable = e.command.argumentsList[0].value as! Bool + if enable { + target.series.append(IgsFinalValueLayer()) + } else { + if let toRemove = target.series.first(where: { $0 is IgsFinalValueLayer }) { + if let index = target.series.firstIndex(where: { $0 === toRemove }) { + target.series.remove(at: index) + } + } + } + + default: + break + } + } + //end eventHandler + +} diff --git a/code-gen-library/WorldAustralianData/XPLAT-CONFIG.json b/code-gen-library/WorldAustralianData/XPLAT-CONFIG.json new file mode 100644 index 000000000..40727ac66 --- /dev/null +++ b/code-gen-library/WorldAustralianData/XPLAT-CONFIG.json @@ -0,0 +1,7 @@ +[{ + "platform": "Kotlin", + "location": "jsonFile" +},{ + "platform": "Swift", + "location": "jsonFile" +}] \ No newline at end of file diff --git a/code-gen-library/WorldCities/XPLAT-CONFIG.json b/code-gen-library/WorldCities/XPLAT-CONFIG.json new file mode 100644 index 000000000..40727ac66 --- /dev/null +++ b/code-gen-library/WorldCities/XPLAT-CONFIG.json @@ -0,0 +1,7 @@ +[{ + "platform": "Kotlin", + "location": "jsonFile" +},{ + "platform": "Swift", + "location": "jsonFile" +}] \ No newline at end of file diff --git a/code-gen-library/WorldCitiesAbove100K/XPLAT-CONFIG.json b/code-gen-library/WorldCitiesAbove100K/XPLAT-CONFIG.json new file mode 100644 index 000000000..40727ac66 --- /dev/null +++ b/code-gen-library/WorldCitiesAbove100K/XPLAT-CONFIG.json @@ -0,0 +1,7 @@ +[{ + "platform": "Kotlin", + "location": "jsonFile" +},{ + "platform": "Swift", + "location": "jsonFile" +}] \ No newline at end of file diff --git a/code-gen-library/WorldCitiesAbove15K/XPLAT-CONFIG.json b/code-gen-library/WorldCitiesAbove15K/XPLAT-CONFIG.json new file mode 100644 index 000000000..40727ac66 --- /dev/null +++ b/code-gen-library/WorldCitiesAbove15K/XPLAT-CONFIG.json @@ -0,0 +1,7 @@ +[{ + "platform": "Kotlin", + "location": "jsonFile" +},{ + "platform": "Swift", + "location": "jsonFile" +}] \ No newline at end of file diff --git a/code-gen-library/WorldCitiesAbove1M/XPLAT-CONFIG.json b/code-gen-library/WorldCitiesAbove1M/XPLAT-CONFIG.json new file mode 100644 index 000000000..40727ac66 --- /dev/null +++ b/code-gen-library/WorldCitiesAbove1M/XPLAT-CONFIG.json @@ -0,0 +1,7 @@ +[{ + "platform": "Kotlin", + "location": "jsonFile" +},{ + "platform": "Swift", + "location": "jsonFile" +}] \ No newline at end of file diff --git a/code-gen-library/WorldCitiesAbove500K/XPLAT-CONFIG.json b/code-gen-library/WorldCitiesAbove500K/XPLAT-CONFIG.json new file mode 100644 index 000000000..40727ac66 --- /dev/null +++ b/code-gen-library/WorldCitiesAbove500K/XPLAT-CONFIG.json @@ -0,0 +1,7 @@ +[{ + "platform": "Kotlin", + "location": "jsonFile" +},{ + "platform": "Swift", + "location": "jsonFile" +}] \ No newline at end of file diff --git a/code-gen-library/WorldCountries/XPLAT-CONFIG.json b/code-gen-library/WorldCountries/XPLAT-CONFIG.json new file mode 100644 index 000000000..40727ac66 --- /dev/null +++ b/code-gen-library/WorldCountries/XPLAT-CONFIG.json @@ -0,0 +1,7 @@ +[{ + "platform": "Kotlin", + "location": "jsonFile" +},{ + "platform": "Swift", + "location": "jsonFile" +}] \ No newline at end of file diff --git a/code-gen-library/WorldStats/XPLAT-CONFIG.json b/code-gen-library/WorldStats/XPLAT-CONFIG.json new file mode 100644 index 000000000..40727ac66 --- /dev/null +++ b/code-gen-library/WorldStats/XPLAT-CONFIG.json @@ -0,0 +1,7 @@ +[{ + "platform": "Kotlin", + "location": "jsonFile" +},{ + "platform": "Swift", + "location": "jsonFile" +}] \ No newline at end of file