Vega Lite - can I anchor a horizontal line with only values of 0 to the bottom of the chart instead of the middle? - vega-lite

I'm trying to get a chart to look nicer in Vega-Lite. If I have multiple points all at a value of 0 the line is centered in the chart.
{
"$schema": "https://vega.github.io/schema/vega-lite/v5.json",
"data": {
"values": [
{ "date": "2022-07-27 4:20", "value": 0 },
{ "date": "2022-07-27 4:21", "value": 0 },
{ "date": "2022-07-27 4:22", "value": 0 },
{ "date": "2022-07-27 4:23", "value": 0 },
{ "date": "2022-07-27 4:24", "value": 0 },
{ "date": "2022-07-27 4:25", "value": 0 },
{ "date": "2022-07-27 4:26", "value": 0 },
{ "date": "2022-07-27 4:27", "value": 0 },
{ "date": "2022-07-27 4:28", "value": 0 },
{ "date": "2022-07-27 4:29", "value": 0 },
{ "date": "2022-07-27 4:30", "value": 0 },
{ "date": "2022-07-27 4:31", "value": 0 },
{ "date": "2022-07-27 4:32", "value": 0 },
{ "date": "2022-07-27 4:33", "value": 0 },
{ "date": "2022-07-27 4:34", "value": 0 },
{ "date": "2022-07-27 4:35", "value": 0 },
{ "date": "2022-07-27 4:36", "value": 0 },
{ "date": "2022-07-27 4:37", "value": 0 },
{ "date": "2022-07-27 4:38", "value": 0 },
{ "date": "2022-07-27 4:39", "value": 0 }
]
},
"encoding": {
"x": {
"field": "date",
"type": "temporal"
},
"y": {
"field": "value",
"type": "quantitative"
}
},
"mark": {
"type": "line"
}
}
Is there a way to get the line to be anchored to the bottom instead?

Set a domain.
{
"$schema": "https://vega.github.io/schema/vega-lite/v5.json",
"data": {
"values": [
{ "date": "2022-07-27 4:20", "value": 0 },
{ "date": "2022-07-27 4:21", "value": 0 },
{ "date": "2022-07-27 4:22", "value": 0 },
{ "date": "2022-07-27 4:23", "value": 0 },
{ "date": "2022-07-27 4:24", "value": 0 },
{ "date": "2022-07-27 4:25", "value": 0 },
{ "date": "2022-07-27 4:26", "value": 0 },
{ "date": "2022-07-27 4:27", "value": 0 },
{ "date": "2022-07-27 4:28", "value": 0 },
{ "date": "2022-07-27 4:29", "value": 0 },
{ "date": "2022-07-27 4:30", "value": 0 },
{ "date": "2022-07-27 4:31", "value": 0 },
{ "date": "2022-07-27 4:32", "value": 0 },
{ "date": "2022-07-27 4:33", "value": 0 },
{ "date": "2022-07-27 4:34", "value": 0 },
{ "date": "2022-07-27 4:35", "value": 0 },
{ "date": "2022-07-27 4:36", "value": 0 },
{ "date": "2022-07-27 4:37", "value": 0 },
{ "date": "2022-07-27 4:38", "value": 0 },
{ "date": "2022-07-27 4:39", "value": 0 }
]
},
"encoding": {
"x": {
"field": "date",
"type": "temporal"
},
"y": {
"field": "value", "scale":{"domain":[0,1]},
"type": "quantitative"
}
},
"mark": {
"type": "line"
}
}

Related

Can't create correct formula to draw line chart with rules in vega-lite?

Working on project with vega-lite and can't overcome with some visualization. Stuck on this task
I would like to get this result , but getting this.
This is my code I tried:
`
{
"$schema": "https://vega.github.io/schema/vega-lite/v5.json",
"params": [
{
"name": "chart_title",
"value": " Weekly Distribution"
},
{
"name": "titleAxisXname",
"value": "Weekly Min "
},
{
"name": "tick_Count_X",
"value": 8
}
],
"width": 425,
"height": 135,
"padding": 20,
"title": {
"text": {
"expr": "chart_title"
},
"fontSize": 16,
"color": "white",
"fontWeight": 700,
"font": "Google Sans",
"align": "left",
"dx": 40,
"dy": -10
},
"data": {
"name": "vis",
"values":[
{
"customer": "Customer",
"type": "monthly",
"metrics": {
"partitions": [
{
"a": {
"mean": 135,
"distribution": {
"min": [ 0,10,20,30,40,50,60,70,80,90,100,110,120,130,140,150,160,170,180,190,200,210,220,230,240,250,260,270,280,300],
"data": [
0.01,
0.01,
0.02,
0.03,
0.05,
0.08,
0.13,
0.21,
0.28,
0.31,
0.33,
0.3,
0.28,
0.26,
0.24,
0.22,
0.21,
0.2,
0.19,
0.18,
0.17,
0.16,
0.15,
0.14,
0.13,
0.12,
0.11,
0.1,
0.09,
0.08
]
}
}
}
]
}
}]
},
"transform": [
{"calculate": "datum.metrics.partitions", "as": "P"},
{"flatten": ["P"]},
{"calculate": "datum.P.a.distribution.min", "as": "x"},
{"flatten": ["x"]},
{"calculate": "datum.P.a.distribution.data", "as": "y"},
{"flatten": ["y"]}
],
"layer": [
{
"mark": "line",
"encoding": {
"x": { "field": "x",
"type": "quantitative"
},
"y": {
"field": "y",
"type": "quantitative"
}
}
},
{
"data": {
"values": [
{}
]
},
"encoding": {
"x": {
"datum": 65
}
},
"layer": [
{
"mark": {
"type": "rule"
}
},
{
"mark": {
"type": "text",
"text": [
"25th",
"Percentile"
]
}
}
]
},
{
"encoding": {
"x": {
"datum": 130
}
},
"layer": [
{
"mark": {
"type": "rule",
"color": "#594CB8"
}
},
{
"mark": {
"type": "text",
"text": [
"50th",
"Percentile"
],
"color": "#594CB8"
}
}
]
},
{
"encoding": {
"x": {
"datum": 200
}
},
"layer": [
{
"mark": {
"type": "rule",
"color": "#B4539E"
}
},
{
"mark": {
"type": "text",
"text": [
"75th",
"Percentile"
],
"color": "#B4539E"
}
}
]
}
],
"config": {
"background": "white",
"axisX": {
"title": {
"expr": "titleAxisXname"
},
"tickCount": {
"expr": "tick_Count_X"
},
"titlePadding": 20,
"titleFont": "Google Sans",
"titleColor": "black",
"titleFontSize": 12,
"titleFontWeight": 700,
"labelFontSize": 12,
"labelColor": "#56615F",
"labelFontWeight": 400
},
"axisY": {
"orient": "right",
"tickCount": 3,
"format": "%",
"title": null,
"labelFontSize": 12,
"labelColor": "#56615F",
"labelFontWeight": 400,
"labelPadding": 10
},
"line": {
"point": false,
"interpolate": "cardinal",
"color": "#006A62"
},
"text": {
"font": "Google Sans",
"fontSize": 12,
"color": "#001D33",
"fontWeight": 700,
"dx": 15,
"dy": -105
},
"rule": {
"strokeWidth": 5,
"strokeDash": [
0.5,
16
],
"strokeCap": "round"
}
}
}
`
Can't come up with correct calculations which reads x and y fields.
It should be way but I can't find in documentations
Thank you in advance
Your flatten created a Cartesian product and needed to be done in a single step.
{
"$schema": "https://vega.github.io/schema/vega-lite/v5.json",
"params": [
{
"name": "chart_title",
"value": " Weekly A Distribution"
},
{
"name": "titleAxisXname",
"value": "Weekly A Minutes "
},
{
"name": "tick_Count_X",
"value": 8
}
],
"width": 425,
"height": 135,
"padding": 20,
"title": {
"text": {
"expr": "chart_title"
},
"fontSize": 16,
"color": "#56615F",
"fontWeight": 700,
"font": "Google Sans",
"align": "right",
"dx": 40,
"dy": -10
},
"data": {
"name": "report",
"values":[
{
"customer": "Customer",
"type": "monthly",
"period": "2022-10",
"schema": "1.0.0",
"metrics": {
"filters": {
"age": [
"all",
"18-39",
"40-64",
"65+"
],
"gender": [
"all",
"male",
"female"
]
},
"partitions": [
{
"segment": {
"age": "*",
"gender": "*"
},
"count": 10000,
"a": {
"mean": 135,
"p10": 10,
"p25": 60,
"p50": 130,
"p75": 198,
"p90": 255,
"goal": {
"value": 150,
"p": 0.37
},
"distribution": {
"min": [ 0,10,20,30,40,50,60,70,80,90,100,110,120,130,140,150,160,170,180,190,200,210,220,230,240,250,260,270,280,300],
"max": 300,
"step": 10,
"data": [
0.01,
0.01,
0.02,
0.03,
0.05,
0.08,
0.13,
0.21,
0.28,
0.31,
0.33,
0.3,
0.28,
0.26,
0.24,
0.22,
0.21,
0.2,
0.19,
0.18,
0.17,
0.16,
0.15,
0.14,
0.13,
0.12,
0.11,
0.1,
0.09,
0.08
]
}
}
}
]
}
}]
},
"transform": [
{"calculate": "datum.metrics.partitions", "as": "P"},
{"flatten": ["P"]},
{"calculate": "datum.P.a.distribution.min", "as": "x"},
{"calculate": "datum.P.a.distribution.data", "as": "y"},
{"flatten": ["x","y"]}
],
"layer": [
{
"mark": "line",
"encoding": {
"x": { "field": "x",
"type": "quantitative"
},
"y": {
"field": "y",
"type": "quantitative"
}
}
},
{
"data": {
"values": [
{}
]
},
"encoding": {
"x": {
"datum": 65
}
},
"layer": [
{
"mark": {
"type": "rule"
}
},
{
"mark": {
"type": "text",
"text": [
"25th",
"Percentile"
]
}
}
]
},
{
"encoding": {
"x": {
"datum": 130
}
},
"layer": [
{
"mark": {
"type": "rule",
"color": "#594CB8"
}
},
{
"mark": {
"type": "text",
"text": [
"50th",
"Percentile"
],
"color": "#594CB8"
}
}
]
},
{
"encoding": {
"x": {
"datum": 200
}
},
"layer": [
{
"mark": {
"type": "rule",
"color": "#B4539E"
}
},
{
"mark": {
"type": "text",
"text": [
"75th",
"Percentile"
],
"color": "#B4539E"
}
}
]
}
],
"config": {
"background": "#eff1ef",
"axisX": {
"title": {
"expr": "titleAxisXname"
},
"tickCount": {
"expr": "tick_Count_X"
},
"titlePadding": 20,
"titleFont": "Google Sans",
"titleColor": "#56615F",
"titleFontSize": 12,
"titleFontWeight": 700,
"labelFontSize": 12,
"labelColor": "#56615F",
"labelFontWeight": 400
},
"axisY": {
"orient": "right",
"tickCount": 3,
"format": "%",
"title": null,
"labelFontSize": 12,
"labelColor": "#56615F",
"labelFontWeight": 400,
"labelPadding": 10
},
"line": {
"point": false,
"interpolate": "cardinal",
"color": "#006A62"
},
"text": {
"font": "Google Sans",
"fontSize": 12,
"color": "#001D33",
"fontWeight": 700,
"dx": 15,
"dy": -105
},
"rule": {
"strokeWidth": 5,
"strokeDash": [
0.5,
16
],
"strokeCap": "round"
}
}
}

Reformat JSON in JOLT

I want to restructure json. I want an array inside a object.
Left side is the desired ouput. Right side is the current output.
I have tried the below solution but it created an extra "{,}' which I didn't wanted. Any idea on what changes I can make to my JOLT spec to get the above right side output?
After trying the above solution I got the below-
I don't want the yellow highlighted part.
My JSON Input-
{
"PURCHASE_ORDER_DISPATCH": {
"MsgData": {
"Transaction": {
"PO_POD_HDR_EVW1": {
"WG_ADDR_SEQ_NUM": 1,
"WG_PO_CNTCT_EMAIL": "PeggyMeincke#westfieldgrp.com",
"WG_REQUESTOR_EMAIL": "ZacharyEngels#westfieldgrp.com",
"WG_REQ_FIRST_NAME": "Zachary",
"WG_REQ_LAST_NAME": "Engels",
"WG_DELIVER_TO": "ZacharyEngels#westfieldgrp.com",
"BUSINESS_UNIT": "OFIC",
"PO_ID": 25052,
"VENDOR_SETID": "WCOS",
"VENDOR_ID": 35958,
"VNDR_LOC": 1,
"PO_POD_LN_EVW1": {
"WG_REQ_ID": 25694,
"WG_CATEGORY_CD": "FSSUP",
"WG_ITEM_TYPE": 0,
"WG_ACCOUNT": 641100,
"WG_DEPT_ID": 30400,
"WG_PRODUCT": "",
"BUSINESS_UNIT": "OFIC",
"PO_ID": 25052,
"WG_ASSET_GROUP": "",
"WG_CAPITALIZE": "NO",
"WG_PROFILE_ID": "",
"WG_SPLIT_TYPE": 1,
"WG_ASSET_LOC": "HOME",
"WG_PROJECT": "",
"VENDOR_SETID": "WCOS",
"VENDOR_ID": 35958,
"VNDR_LOC": 1,
"LINE_NBR": 1,
"INV_ITEM_ID": "",
"DESCR254_MIXED": "147-1518156-3620845,1GreenMountainCoffeeRoastersCaramelVanillaCreamKeurigSingle-ServeK-CupPods,LightRoastCoffee,32Count",
"UNIT_OF_MEASURE": "EA",
"ITM_ID_VNDR": "B0798CX2Q9",
"INV_ITEM_WEIGHT": 0,
"INV_ITEM_HEIGHT": 0,
"INV_ITEM_VOLUME": 0,
"INV_ITEM_LENGTH": 0,
"INV_ITEM_WIDTH": 0,
"VNDR_CATALOG_ID": "",
"MFG_ID": "",
"MFG_ITM_ID": 5000196305,
"CNTRCT_ID": "",
"VERSION_NBR": 0,
"CNTRCT_LINE_NBR": 0,
"CAT_LINE_NBR": 0,
"RELEASE_NBR": 0,
"CANCEL_STATUS": "A",
"UPN_ID": "",
"PO_POD_SHP_EVW1": {
"WG_SHIP_ADDR_TYPE": 0,
"WG_CUST_ADDR_CODE": "OFIC",
"BUSINESS_UNIT": "OFIC",
"PO_ID": 25052,
"VENDOR_SETID": "WCOS",
"VENDOR_ID": 35958,
"VNDR_LOC": 1,
"LINE_NBR": 1,
"SCHED_NBR": 1,
"DUE_DT": "2020-01-29",
"SHIPTO_ID": "OFIC",
"DESCR_SHIPTO": "OHIOFARMERSINSURANCECOMPANY",
"ADDRESS1_SHIPTO": "OHIOFARMERSINSURANCECOMPANY",
"ADDRESS2_SHIPTO": "1PARKCIRCLE",
"ADDRESS3_SHIPTO": "POBOX5001",
"ADDRESS4_SHIPTO": "",
"CITY_SHIPTO": "WESTFIELDCENTER",
"STATE_SHIPTO": "OH",
"POSTAL_SHIPTO": "44251-5001",
"COUNTRY_SHIPTO": "USA",
"PRICE_PO": 14.99,
"FREIGHT_TERMS": "FOBDEST",
"QTY_PO": 1,
"SHIP_TYPE_ID": "BEST_WAY",
"CANCEL_STATUS": "A",
"ATTN_TO": "",
"STD_ID_NUM_SHIPTO": ""
},
"PSCAMA": {
"AUDIT_ACTN": "A"
}
},
"PSCAMA": {
"AUDIT_ACTN": "A"
}
},
"PSCAMA": {
"LANGUAGE_CD": "ENG",
"AUDIT_ACTN": "A",
"BASE_LANGUAGE_CD": "ENG",
"MSG_SEQ_FLG": "",
"PROCESS_INSTANCE": 1199010,
"PUBLISH_RULE_ID": "WG_MAIN_RULE",
"MSGNODENAME": ""
}
}
}
}
}
JOLT SPEC-
[
{
"operation": "modify-overwrite-beta",
"spec": {
"*": {
"*": {
"*": {
"*": {
"requestorDetails": "=concat(#(1,WG_REQ_FIRST_NAME),' ',#(1,WG_REQ_LAST_NAME))"
}
}
}
}
}
},
{
"operation": "shift",
"spec": {
"#integrationTrackingNumber": "IntegrationEntities.integrationEntity.integrationEntityHeader.integrationTrackingNumber",
"#referenceCodeForEntity": "IntegrationEntities.integrationEntity.integrationEntityHeader.referenceCodeForEntity",
"#additionalInfo": "IntegrationEntities.integrationEntity.integrationEntityHeader.additionalInfo",
"*": {
"*": {
"*": {
"*": {
"PO_ID": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.externalId",
"#APPROVED": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.status",
"PO_AMT_TTL": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.grossTotalAmount",
"#test.test\\#test.com": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.checkoutBuyer.userEmailId",
"requestorDetails": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.requesterDetails",
"FREIGHT_TERMS": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.deliveryTermCode",
"WG_REQUESTOR_EMAIL": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.requesterDetails.userEmailId",
"WG_DELIVER_TO": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.deliveryTo.userEmailId",
"#OFIC": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.company.companyCode",
"BUSINESS_UNIT": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.businessUnit.buCode",
"PYMNT_TERMS_CD": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.paymentTermId",
"#1": [
"IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.costingSplitLevel",
"IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.costingSplitType"
],
"WG_ADDR_SEQ_NUM": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.supplierAddress.addressERPID",
"CURRENCY_CD": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.supplierCurrencyCode",
"#WG_ADDR_SEQ_NUM": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.supplierAddressERPID",
"VENDOR_ID": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.supplierERPID",
"WG_PO_CNTCT_EMAIL": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.suppPOContactEmail",
"#2": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.supplierPOContactType",
"WG_REQ_FIRST_NAME": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.requesterDetails.userFirstName",
"WG_REQ_LAST_NAME": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.requesterDetails.userLastName",
"#CURRENCY_CD": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.currency",
"#WG_DELIVER_TO": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.deliverToUser.userEmailId",
"*": {
"WG_REQ_ID": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.poDescription",
"#STANDARD": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.poType",
"LINE_NBR": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.lineNumber",
"WG_CATEGORY_CD": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.categoryCode",
"WG_ITEM_TYPE": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.itemType",
"MFG_ITM_ID": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.manufacturerPartID",
"ITM_ID_VNDR": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.supplierPartID",
"WG_ACCOUNT": {
"#": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[0].value",
"#name4": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[0].id",
"#AUTO_COMPLETE": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[0].type",
"#GL_ACCOUNT": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[0].name"
},
"WG_DEPT_ID": {
"#": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[1].value",
"#name3": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[1].id",
"#AUTO_COMPLETE": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[1].type",
"#Westfield Department": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[1].name"
},
"WG_PRODUCT": {
"#": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[2].value",
"#name6": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[2].id",
"#AUTO_COMPLETE": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[2].type",
"#Product/Parcel": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[2].name"
},
"WG_PROJECT": {
"#": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[3].value",
"#name5": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[3].id",
"#AUTO_COMPLETE": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[3].type",
"#Project Code": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[3].name"
},
"WG_ASSET_GROUP": {
"#": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[4].value",
"#name10": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[4].id",
"#AUTO_COMPLETE": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[4].type",
"#Asset Group": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[4].name"
},
"WG_CAPITALIZE": {
"#": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[5].value",
"#name9": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[5].id",
"#AUTO_COMPLETE": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[5].type",
"#Capitalize": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[5].name"
},
"WG_PROFILE_ID": {
"#": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[6].value",
"#name9": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[6].id",
"#AUTO_COMPLETE": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[6].type",
"#Profile Id": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[6].name"
},
"WG_ASSET_LOC": {
"#": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[7].value",
"#name2": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[7].id",
"#AUTO_COMPLETE": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[7].type",
"#Business Unit": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[7].name"
},
"BUSINESS_UNIT": {
"#": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[8].value",
"#name7": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[8].id",
"#AUTO_COMPLETE": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[8].type",
"#GL_ACCOUNT": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[8].name"
},
"*": {
"#WG_SHIP_ADDR_TYPE": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.shipToAddressType",
"WG_SHIP_ADDR_TYPE": {
"2": {
"#(2,DESCR_SHIPTO)": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.shipToAddress.addressName",
"#(2,ADDRESS1_SHIPTO)": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.shipToAddress.addressLine1",
"#(2,ADDRESS2_SHIPTO)": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.shipToAddress.addressLine2",
"#(2,ADDRESS3_SHIPTO)": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.shipToAddress.addressLine3",
"#(2,ADDRESS4_SHIPTO)": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.shipToAddress.addressLine4",
"#(2,CITY_SHIPTO)": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.shipToAddress.city",
"#(2,POSTAL_SHIPTO)": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.shipToAddress.zip",
"#(2,STATE_SHIPTO)": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.shipToAddress.state",
"#(2,COUNTRY_SHIPTO)": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.shipToAddress.country"
}
},
"WG_CUST_ADDR_CODE": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.shipToAddress.addressCode",
"FREIGHT_TERMS": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.deliveryTermCode",
"SHIPTO_ID": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.locationCode.location.locationCode",
"DUE_DT": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.deliverOn",
"#DUE_DT": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.deliveryOn",
"PRICE_PO": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.marketPrice",
"QTY_PO": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.itemQuantity",
"#WG_CUST_ADDR_CODE": {
"2": {
"#(2,DESCR_SHIPTO)": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.shipToAddress.addressName",
"#(2,ADDRESS1_SHIPTO)": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.shipToAddress.addressLine1",
"#(2,ADDRESS2_SHIPTO)": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.shipToAddress.addressLine2",
"#(2,ADDRESS3_SHIPTO)": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.shipToAddress.addressLine3",
"#(2,ADDRESS4_SHIPTO)": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.shipToAddress.addressLine4",
"#(2,CITY_SHIPTO)": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.shipToAddress.city",
"#(2,POSTAL_SHIPTO)": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.shipToAddress.zip",
"#(2,STATE_SHIPTO)": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.shipToAddress.state",
"#(2,COUNTRY_SHIPTO)": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.shipToAddress.country"
}
},
"#1": "IntegrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.costingSplitType"
}
}
}
}
}
}
}
},
{
"operation": "modify-overwrite-beta",
"spec": {
"*": {
"*": {
"*": {
"*": {
"*": {
"*": {
"product": "=divide(1,#(1,itemQuantity))",
"itemTotalAmount": "=divide(#(1,marketPrice),#(1,product))",
"distributedAmount": "=divide(#(1,marketPrice),#(1,product))"
}
}
}
}
}
}
}
},
{
"operation": "shift",
"spec": {
"*": {
"*": {
"integrationEntityHeader": "&2.&1.&",
"integrationEntityDetails": {
"*": {
"externalId": "&4.&3.&2.&1.&",
"status": "&4.&3.&2.&1.&",
"poHeader": {
"poDescription": "&5.&4.&3.&2.&1.&",
"poType": "&5.&4.&3.&2.&1.&",
"grossTotalAmount": "&5.&4.&3.&2.&1.&",
"checkoutBuyer": {
"userEmailId": "&6.&5.&4.&3.&2.&1.&"
},
"requesterDetails": "&5.&4.&3.&2.&1.&",
"userEmailId": "&5.&4.&3.&2.&1.&",
"deliveryTo": {
"userEmailId": "&6.&5.&4.&3.&2.&1.&"
},
"deliveryTermCode": "&5.&4.&3.&2.&1.&",
"shipToAddressType": "&5.&4.&3.&2.&1.&",
"shipToAddress": "&5.&4.&3.&2.&1.&",
"company": "&5.&4.&3.&2.&1.&",
"businessUnit": "&5.&4.&3.&2.&1.&",
"locationCode": "&5.&4.&3.&2.&1.&",
"deliverOn": "&5.&4.&3.&2.&1.&",
"paymentTermId": "&5.&4.&3.&2.&1.&",
"costingSplitLevel": "&5.&4.&3.&2.&1.&",
"costingSplitType": "&5.&4.&3.&2.&1.&",
"supplierAddress": "&5.&4.&3.&2.&1.&",
"supplierAddressERPID": "&5.&4.&3.&2.&1.&",
"supplierCurrencyCode": "&5.&4.&3.&2.&1.&",
"supplierERPID": "&5.&4.&3.&2.&1.&",
"suppPOContactEmail": "&5.&4.&3.&2.&1.&",
"supplierPOContactType": "&5.&4.&3.&2.&1.&"
},
"items": {
"item": {
"lineNumber": "&6.&5.&4.&3.&2.&1.&",
"requesterDetails": "&6.&5.&4.&3.&2.&1.&",
"categoryCode": "&6.&5.&4.&3.&2.&1.&",
"currency": "&6.&5.&4.&3.&2.&1.&",
"deliverToUser": {
"userEmailId": "&7.&6.&5.&4.&3.&2.&1.&"
},
"deliveryOn": "&6.&5.&4.&3.&2.&1.&",
"itemTotalAmount": "&6.&5.&4.&3.&2.&1.&",
"itemType": "&6.&5.&4.&3.&2.&1.&",
"manufacturerPartID": "&6.&5.&4.&3.&2.&1.&",
"marketPrice": "&6.&5.&4.&3.&2.&1.&",
"itemQuantity": "&6.&5.&4.&3.&2.&1.&",
"shipToAddressCode": "&6.&5.&4.&3.&2.&1.&",
"shipToAddressType": "&6.&5.&4.&3.&2.&1.&",
"costingSplitType": "&6.&5.&4.&3.&2.&1.&",
"supplierPartID": "&6.&5.&4.&3.&2.&1.&",
"validCombinations": {
"itemDetails": {
"#(2,distributedAmount)": "&8.&7.&6.&5.&4.&3.&2.&1.distributedAmount",
"validRules": {
"field": {
"*": {
"id": "&11.&10.&9.&8.&7.&6.&5.&4.&3.&2.[&1].&",
"type": "&11.&10.&9.&8.&7.&6.&5.&4.&3.&2.[&1].&",
"name": "&11.&10.&9.&8.&7.&6.&5.&4.&3.&2.[&1].&",
"value": "&11.&10.&9.&8.&7.&6.&5.&4.&3.&2.[&1].&"
}
}
}
}
}
}
}
}
}
}
}
}
},
{
"operation": "cardinality",
"spec": {
"*": {
"*": {
"*": {
"*": {
"status": "ONE",
"poHeader": {
"*": "ONE",
"checkoutBuyer": {
"userEmailId": "ONE"
},
"company": {
"*": "ONE"
}
},
"items": {
"item": {
"costingSplitType": "ONE",
"validCombinations": {
"itemDetails": {
"validRules": {
"field": {
"id": "ONE",
"type": "ONE",
"name": "ONE",
"value": "ONE"
}
}
}
}
}
}
}
}
}
}
}
},
{
"operation": "modify-overwrite-beta",
"spec": {
"*": {
"*": {
"*": {
"*": {
"poHeader": {
"costingSplitLevel": "=toInteger",
"costingSplitType": "=toInteger",
"supplierPOContactType": "=toInteger"
},
"items": {
"item": {
"costingSplitType": "=toInteger"
}
}
}
}
}
}
}
}
]
You can add an extra shift transformation to the end containing a # wildcard at the right-hand-side such as
{
"operation": "shift",
"spec": {
"*": {
"*": {
"*": "&2.&1[#2].&"
}
}
}
}

How to map array fields in JOLT

I am trying to map an array of fields in JOLT. There a four fields which I want to repeat in the array.
I tried the below spec but I am getting "Failed to transform" error in output.
Any idea on what changes I need to make in JOLT spec to get the desired output?
What I tried in JOLT Spec-
Desired Output -
Input data-
{
"PURCHASE_ORDER_DISPATCH": {
"MsgData": {
"Transaction": {
"PO_POD_HDR_EVW1": {
"WG_ADDR_SEQ_NUM": 1,
"WG_PO_CNTCT_EMAIL": "PeggyMeincke#westfieldgrp.com",
"WG_REQUESTOR_EMAIL": "ZacharyEngels#westfieldgrp.com",
"WG_REQ_FIRST_NAME": "Zachary",
"WG_REQ_LAST_NAME": "Engels",
"WG_DELIVER_TO": "ZacharyEngels#westfieldgrp.com",
"BUSINESS_UNIT": "OFIC",
"PO_ID": 25052,
"VENDOR_SETID": "WCOS",
"VENDOR_ID": 35958,
"VNDR_LOC": 1,
"PO_DT": "2020-01-24",
"DB_NUMBER_BU": "",
"DESCR_BU": "OhioFarmersInsuranceCo",
"ADDRESS1_BU": "WESTFIELDCOMPANIES",
"ADDRESS2_BU": "HOMEOFFICE",
"ADDRESS3_BU": "1PARKCIRCLE",
"ADDRESS4_BU": "",
"CITY_BU": "WESTFIELDCENTER",
"STATE_BU": "OH",
"POSTAL_BU": "44251-5001",
"COUNTRY_BU": "USA",
"ADDRESS1_BILL": "",
"ADDRESS2_BILL": "",
"ADDRESS3_BILL": "",
"ADDRESS4_BILL": "",
"CITY_BILL": "",
"STATE_BILL": "",
"POSTAL_BILL": "",
"COUNTRY_BILL": "",
"CURRENCY_CD": "USD",
"TAX_EXEMPT_ID": "",
"STD_ID_NUM_VNDR": "",
"NAME1_VNDR": "AMAZONCAPITALSERVICESINC",
"ADDRESS1_VNDR": "410TERRYAVEN",
"ADDRESS2_VNDR": "",
"ADDRESS3_VNDR": "",
"ADDRESS4_VNDR": "",
"CITY_VNDR": "SEATTLE",
"STATE_VNDR": "WA",
"POSTAL_VNDR": 98109,
"COUNTRY_VNDR": "USA",
"PYMNT_TERMS_CD": "NET30",
"DESCR50_PAY": "Net30",
"BUYER_ID": 1083,
"PO_AMT_TTL": 14.99,
"TEXT254_CC1": "",
"TEXT254_CC2": "",
"VNDR_UPN_FLG": "N",
"STD_ID_NUM_VNDRGLN": "",
"STD_ID_NUM_BILLTO": "",
"ATTN_TO": "ZacharyEngels",
"PO_POD_LN_EVW1": {
"WG_REQ_ID": 25694,
"WG_CATEGORY_CD": "FSSUP",
"WG_ITEM_TYPE": 0,
"WG_ACCOUNT": 641100,
"WG_DEPT_ID": 30400,
"WG_PRODUCT": "",
"BUSINESS_UNIT": "OFIC",
"PO_ID": 25052,
"WG_ASSET_GROUP": "",
"WG_CAPITALIZE": "NO",
"WG_PROFILE_ID": "",
"WG_SPLIT_TYPE": 1,
"WG_ASSET_LOC": "HOME",
"WG_PROJECT": "",
"VENDOR_SETID": "WCOS",
"VENDOR_ID": 35958,
"VNDR_LOC": 1,
"LINE_NBR": 1,
"INV_ITEM_ID": "",
"DESCR254_MIXED": "147-1518156-3620845,1GreenMountainCoffeeRoastersCaramelVanillaCreamKeurigSingle-ServeK-CupPods,LightRoastCoffee,32Count",
"UNIT_OF_MEASURE": "EA",
"ITM_ID_VNDR": "B0798CX2Q9",
"INV_ITEM_WEIGHT": 0,
"INV_ITEM_HEIGHT": 0,
"INV_ITEM_VOLUME": 0,
"INV_ITEM_LENGTH": 0,
"INV_ITEM_WIDTH": 0,
"VNDR_CATALOG_ID": "",
"MFG_ID": "",
"MFG_ITM_ID": 5000196305,
"CNTRCT_ID": "",
"VERSION_NBR": 0,
"CNTRCT_LINE_NBR": 0,
"CAT_LINE_NBR": 0,
"RELEASE_NBR": 0,
"CANCEL_STATUS": "A",
"UPN_ID": "",
"PO_POD_SHP_EVW1": {
"WG_SHIP_ADDR_TYPE": 2,
"WG_CUST_ADDR_CODE": 2,
"BUSINESS_UNIT": "OFIC",
"PO_ID": 25052,
"VENDOR_SETID": "WCOS",
"VENDOR_ID": 35958,
"VNDR_LOC": 1,
"LINE_NBR": 1,
"SCHED_NBR": 1,
"DUE_DT": "2020-01-29",
"SHIPTO_ID": "OFIC",
"DESCR_SHIPTO": "OHIOFARMERSINSURANCECOMPANY",
"ADDRESS1_SHIPTO": "OHIOFARMERSINSURANCECOMPANY",
"ADDRESS2_SHIPTO": "1PARKCIRCLE",
"ADDRESS3_SHIPTO": "POBOX5001",
"ADDRESS4_SHIPTO": "",
"CITY_SHIPTO": "WESTFIELDCENTER",
"STATE_SHIPTO": "OH",
"POSTAL_SHIPTO": "44251-5001",
"COUNTRY_SHIPTO": "USA",
"PRICE_PO": 14.99,
"FREIGHT_TERMS": "FOBDEST",
"QTY_PO": 1,
"SHIP_TYPE_ID": "BEST_WAY",
"CANCEL_STATUS": "A",
"ATTN_TO": "",
"STD_ID_NUM_SHIPTO": ""
},
"PSCAMA": {
"AUDIT_ACTN": "A"
}
},
"PSCAMA": {
"AUDIT_ACTN": "A"
}
},
"PSCAMA": {
"LANGUAGE_CD": "ENG",
"AUDIT_ACTN": "A",
"BASE_LANGUAGE_CD": "ENG",
"MSG_SEQ_FLG": "",
"PROCESS_INSTANCE": 1199010,
"PUBLISH_RULE_ID": "WG_MAIN_RULE",
"MSGNODENAME": ""
}
}
}
}
}
JOLT Spec-
[
{
"operation": "shift",
"spec": {
"#UPSERT": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityHeader.action",
"*": {
"*": {
"*": {
"*": {
"PO_ID": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.externalId",
"#APPROVED": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.status",
"PO_AMT_TTL": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.grossTotalAmount",
"FREIGHT_TERMS": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.deliveryTermCode",
"WG_REQUESTOR_EMAIL": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.requesterDetails.userEmailId",
"WG_DELIVER_TO": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.deliverTo.userEmailId",
"#OFIC": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.company.companyCode",
"BUSINESS_UNIT": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.businessUnit.buCode",
"PYMNT_TERMS_CD": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.paymentTermId",
"#1": [
"integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.costingSplitLevel",
"integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.costingSplitType"
],
"WG_ADDR_SEQ_NUM": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.supplierAddress.addressERPID",
"CURRENCY_CD": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.supplierCurrencyCode",
"#WG_ADDR_SEQ_NUM": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.supplierAddressERPID",
"VENDOR_ID": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.supplierERPID",
"WG_PO_CNTCT_EMAIL": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.suppPOContactEmail",
"#2": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.supplierPOContactType",
"WG_REQ_FIRST_NAME": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.requesterDetails.userFirstName",
"WG_REQ_LAST_NAME": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.requesterDetails.userLastName",
"#CURRENCY_CD": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.currency",
"#WG_DELIVER_TO": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.deliverToUser.userEmailId",
"#name4": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field.id",
"#AUTO_COMPLETE": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field.type",
"#GL_ACCOUNT": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field.name",
"*": {
"WG_REQ_ID": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.poDescription",
"#STANDARD": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.poType",
"LINE_NBR": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.lineNumber",
"WG_CATEGORY_CD": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.categoryCode",
"WG_ITEM_TYPE": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.itemType",
"MFG_ITM_ID": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.manufacturerPartID",
"ITM_ID_VNDR": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.supplierPartID",
"WG_ACCOUNT": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field.value",
"BUSINESS_UNIT": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field.value",
"*": {
"#WG_SHIP_ADDR_TYPE": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.shipToAddressType",
"WG_SHIP_ADDR_TYPE": {
"2": {
"#(2,DESCR_SHIPTO)": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.shipToAddress.addressName",
"#(2,ADDRESS1_SHIPTO)": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.shipToAddress.addressLine1",
"#(2,ADDRESS2_SHIPTO)": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.shipToAddress.addressLine2",
"#(2,ADDRESS3_SHIPTO)": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.shipToAddress.addressLine3",
"#(2,ADDRESS4_SHIPTO)": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.shipToAddress.addressLine4",
"#(2,CITY_SHIPTO)": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.shipToAddress.city",
"#(2,POSTAL_SHIPTO)": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.shipToAddress.zip",
"#(2,STATE_SHIPTO)": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.shipToAddress.state",
"#(2,COUNTRY_SHIPTO)": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.shipToAddress.country"
}
},
"WG_CUST_ADDR_CODE": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.shipToAddress.addressCode",
"FREIGHT_TERMS": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.deliveryTermCode",
"SHIPTO_ID": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.locationCode.location.locationCode",
"DUE_DT": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.deliverOn",
"#DUE_DT": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.deliveryOn",
"PRICE_PO": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.marketPrice",
"QTY_PO": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.itemQuantity",
"#WG_CUST_ADDR_CODE": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.shipToAddressCode",
"#WG_SHIP_ADDR_TYPE": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.shipToAddressType",
"#1": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.costingSplitType",
"#WG_CUST_ADDR_CODE": {
"2": {
"#(2,DESCR_SHIPTO)": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.shipToAddress.addressName",
"#(2,ADDRESS1_SHIPTO)": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.shipToAddress.addressLine1",
"#(2,ADDRESS2_SHIPTO)": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.shipToAddress.addressLine2",
"#(2,ADDRESS3_SHIPTO)": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.shipToAddress.addressLine3",
"#(2,ADDRESS4_SHIPTO)": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.shipToAddress.addressLine4",
"#(2,CITY_SHIPTO)": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.shipToAddress.city",
"#(2,POSTAL_SHIPTO)": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.shipToAddress.zip",
"#(2,STATE_SHIPTO)": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.shipToAddress.state",
"#(2,COUNTRY_SHIPTO)": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.shipToAddress.country"
}
}
}
}
}
}
}
}
}
},
{
"operation": "shift",
"spec": {
"*": {
"*": {
"*": {
"integrationEntityHeader": "&3.&2.&1.&",
"integrationEntityDetails": {
"*": {
"externalId": "&5.&4.&3.&2.&1.&",
"status": "&5.&4.&3.&2.&1.&",
"poHeader": {
"poDescription": "&6.&5.&4.&3.&2.&1.&",
"poType": "&6.&5.&4.&3.&2.&1.&",
"grossTotalAmount": "&6.&5.&4.&3.&2.&1.&",
"deliveryTermCode": "&6.&5.&4.&3.&2.&1.&",
"shipToAddressType": "&6.&5.&4.&3.&2.&1.&",
"shipToAddress": "&6.&5.&4.&3.&2.&1.&",
"company": "&6.&5.&4.&3.&2.&1.&",
"businessUnit": "&6.&5.&4.&3.&2.&1.&",
"locationCode": "&6.&5.&4.&3.&2.&1.&",
"deliverOn": "&6.&5.&4.&3.&2.&1.&",
"paymentTermId": "&6.&5.&4.&3.&2.&1.&",
"costingSplitLevel": "&6.&5.&4.&3.&2.&1.&",
"costingSplitType": "&6.&5.&4.&3.&2.&1.&",
"supplierAddress": "&6.&5.&4.&3.&2.&1.&",
"supplierAddressERPID": "&6.&5.&4.&3.&2.&1.&",
"supplierCurrencyCode": "&6.&5.&4.&3.&2.&1.&",
"supplierERPID": "&6.&5.&4.&3.&2.&1.&",
"suppPOContactEmail": "&6.&5.&4.&3.&2.&1.&",
"supplierPOContactType": "&6.&5.&4.&3.&2.&1.&"
},
"items": {
"item": {
"lineNumber": "&7.&6.&5.&4.&3.&2.&1.&",
"requesterDetails": "&7.&6.&5.&4.&3.&2.&1.&",
"categoryCode": "&7.&6.&5.&4.&3.&2.&1.&",
"currency": "&7.&6.&5.&4.&3.&2.&1.&",
"deliverToUser": {
"userEmailId": "&8.&7.&6.&5.&4.&3.&2.&1.&"
},
"deliverOn": "&7.&6.&5.&4.&3.&2.&1.&",
"itemType": "&7.&6.&5.&4.&3.&2.&1.&",
"manufacturerPartID": "&7.&6.&5.&4.&3.&2.&1.&",
"marketPrice": "&7.&6.&5.&4.&3.&2.&1.&",
"itemQuantity": "&7.&6.&5.&4.&3.&2.&1.&",
"shipToAddressCode": "&7.&6.&5.&4.&3.&2.&1.&",
"shipToAddressType": "&7.&6.&5.&4.&3.&2.&1.&",
"costingSplitType": "&7.&6.&5.&4.&3.&2.&1.&",
"supplierPartID": "&7.&6.&5.&4.&3.&2.&1.&",
"validCombinations": {
"itemDetails": {
"validRules": {
"field": {
"id": "&11.&10.&9.&8.&7.&6.&5.&4.&3.&2.&1.&",
"type": "&11.&10.&9.&8.&7.&6.&5.&4.&3.&2.&1.&",
"name": "&11.&10.&9.&8.&7.&6.&5.&4.&3.&2.&1.&",
"value": "&11.&10.&9.&8.&7.&6.&5.&4.&3.&2.&1.&"
}
}
}
}
}
}
}
}
}
}
}
}
},
{
"operation": "cardinality",
"spec": {
"*": {
"*": {
"*": {
"*": {
"*": {
"status": "ONE",
"poHeader": {
"*": "ONE",
"company": {
"*": "ONE"
}
},
"items": {
"item": {
"costingSplitType": "ONE",
"validCombinations": {
"itemDetails": {
"validRules": {
"field": {
"id": "ONE",
"type": "ONE",
"name": "ONE",
"value": "ONE"
}
}
}
}
}
}
}
}
}
}
}
}
},
{
"operation": "modify-overwrite-beta",
"spec": {
"*": {
"*": {
"*": {
"*": {
"*": {
"poHeader": {
"costingSplitLevel": "=toInteger",
"costingSplitType": "=toInteger",
"supplierPOContactType": "=toInteger"
},
"items": {
"item": {
"costingSplitType": "=toInteger"
}
}
}
}
}
}
}
}
},
{
"operation": "modify-overwrite-beta",
"spec": {
"*": {
"*": {
"*": {
"*": {
"*": {
"*": {
"*": {
"product": "=divide(1,#(1,itemQuantity))",
"itemTotalAmount": "=divide(#(1,marketPrice),#(1,product))"
}
}
}
}
}
}
}
}
}
]
You can use this spec:
[
{
"operation": "shift",
"spec": {
"#UPSERT": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityHeader.action",
"*": {
"*": {
"*": {
"*": {
"PO_ID": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.externalId",
"#APPROVED": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.status",
"PO_AMT_TTL": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.grossTotalAmount",
"FREIGHT_TERMS": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.deliveryTermCode",
"WG_REQUESTOR_EMAIL": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.requesterDetails.userEmailId",
"WG_DELIVER_TO": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.deliverTo.userEmailId",
"#OFIC": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.company.companyCode",
"BUSINESS_UNIT": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.businessUnit.buCode",
"PYMNT_TERMS_CD": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.paymentTermId",
"#1": [
"integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.costingSplitLevel",
"integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.costingSplitType"
],
"WG_ADDR_SEQ_NUM": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.supplierAddress.addressERPID",
"CURRENCY_CD": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.supplierCurrencyCode",
"#WG_ADDR_SEQ_NUM": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.supplierAddressERPID",
"VENDOR_ID": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.supplierERPID",
"WG_PO_CNTCT_EMAIL": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.suppPOContactEmail",
"#2": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.supplierPOContactType",
"WG_REQ_FIRST_NAME": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.requesterDetails.userFirstName",
"WG_REQ_LAST_NAME": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.requesterDetails.userLastName",
"#CURRENCY_CD": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.currency",
"#WG_DELIVER_TO": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.deliverToUser.userEmailId",
"*": {
"WG_REQ_ID": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.poDescription",
"#STANDARD": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.poType",
"LINE_NBR": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.lineNumber",
"WG_CATEGORY_CD": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.categoryCode",
"WG_ITEM_TYPE": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.itemType",
"MFG_ITM_ID": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.manufacturerPartID",
"ITM_ID_VNDR": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.supplierPartID",
"WG_ACCOUNT": {
"#": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[0].value",
"#name4": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[0].id",
"#AUTO_COMPLETE": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[0].type",
"#GL_ACCOUNT": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[0].name"
},
"BUSINESS_UNIT": {
"#": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[1].value",
"#name4": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[1].id",
"#AUTO_COMPLETE": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[1].type",
"#GL_ACCOUNT": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[1].name"
},
"*": {
"#WG_SHIP_ADDR_TYPE": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.shipToAddressType",
"WG_SHIP_ADDR_TYPE": {
"2": {
"#(2,DESCR_SHIPTO)": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.shipToAddress.addressName",
"#(2,ADDRESS1_SHIPTO)": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.shipToAddress.addressLine1",
"#(2,ADDRESS2_SHIPTO)": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.shipToAddress.addressLine2",
"#(2,ADDRESS3_SHIPTO)": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.shipToAddress.addressLine3",
"#(2,ADDRESS4_SHIPTO)": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.shipToAddress.addressLine4",
"#(2,CITY_SHIPTO)": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.shipToAddress.city",
"#(2,POSTAL_SHIPTO)": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.shipToAddress.zip",
"#(2,STATE_SHIPTO)": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.shipToAddress.state",
"#(2,COUNTRY_SHIPTO)": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.shipToAddress.country"
}
},
"WG_CUST_ADDR_CODE": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.shipToAddress.addressCode",
"FREIGHT_TERMS": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.deliveryTermCode",
"SHIPTO_ID": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.locationCode.location.locationCode",
"DUE_DT": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.poHeader.deliverOn",
"#DUE_DT": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.deliveryOn",
"PRICE_PO": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.marketPrice",
"QTY_PO": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.itemQuantity",
"#WG_CUST_ADDR_CODE": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.shipToAddressCode",
"#WG_SHIP_ADDR_TYPE": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.shipToAddressType",
"#1": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.costingSplitType",
"#WG_CUST_ADDR_CODE": {
"2": {
"#(2,DESCR_SHIPTO)": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.shipToAddress.addressName",
"#(2,ADDRESS1_SHIPTO)": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.shipToAddress.addressLine1",
"#(2,ADDRESS2_SHIPTO)": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.shipToAddress.addressLine2",
"#(2,ADDRESS3_SHIPTO)": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.shipToAddress.addressLine3",
"#(2,ADDRESS4_SHIPTO)": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.shipToAddress.addressLine4",
"#(2,CITY_SHIPTO)": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.shipToAddress.city",
"#(2,POSTAL_SHIPTO)": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.shipToAddress.zip",
"#(2,STATE_SHIPTO)": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.shipToAddress.state",
"#(2,COUNTRY_SHIPTO)": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.shipToAddress.country"
}
}
}
}
}
}
}
}
}
},
{
"operation": "shift",
"spec": {
"*": {
"*": {
"*": {
"integrationEntityHeader": "&3.&2.&1.&",
"integrationEntityDetails": {
"*": {
"externalId": "&5.&4.&3.&2.&1.&",
"status": "&5.&4.&3.&2.&1.&",
"poHeader": {
"poDescription": "&6.&5.&4.&3.&2.&1.&",
"poType": "&6.&5.&4.&3.&2.&1.&",
"grossTotalAmount": "&6.&5.&4.&3.&2.&1.&",
"deliveryTermCode": "&6.&5.&4.&3.&2.&1.&",
"shipToAddressType": "&6.&5.&4.&3.&2.&1.&",
"shipToAddress": "&6.&5.&4.&3.&2.&1.&",
"company": "&6.&5.&4.&3.&2.&1.&",
"businessUnit": "&6.&5.&4.&3.&2.&1.&",
"locationCode": "&6.&5.&4.&3.&2.&1.&",
"deliverOn": "&6.&5.&4.&3.&2.&1.&",
"paymentTermId": "&6.&5.&4.&3.&2.&1.&",
"costingSplitLevel": "&6.&5.&4.&3.&2.&1.&",
"costingSplitType": "&6.&5.&4.&3.&2.&1.&",
"supplierAddress": "&6.&5.&4.&3.&2.&1.&",
"supplierAddressERPID": "&6.&5.&4.&3.&2.&1.&",
"supplierCurrencyCode": "&6.&5.&4.&3.&2.&1.&",
"supplierERPID": "&6.&5.&4.&3.&2.&1.&",
"suppPOContactEmail": "&6.&5.&4.&3.&2.&1.&",
"supplierPOContactType": "&6.&5.&4.&3.&2.&1.&"
},
"items": {
"item": {
"lineNumber": "&7.&6.&5.&4.&3.&2.&1.&",
"requesterDetails": "&7.&6.&5.&4.&3.&2.&1.&",
"categoryCode": "&7.&6.&5.&4.&3.&2.&1.&",
"currency": "&7.&6.&5.&4.&3.&2.&1.&",
"deliverToUser": {
"userEmailId": "&8.&7.&6.&5.&4.&3.&2.&1.&"
},
"deliverOn": "&7.&6.&5.&4.&3.&2.&1.&",
"itemType": "&7.&6.&5.&4.&3.&2.&1.&",
"manufacturerPartID": "&7.&6.&5.&4.&3.&2.&1.&",
"marketPrice": "&7.&6.&5.&4.&3.&2.&1.&",
"itemQuantity": "&7.&6.&5.&4.&3.&2.&1.&",
"shipToAddressCode": "&7.&6.&5.&4.&3.&2.&1.&",
"shipToAddressType": "&7.&6.&5.&4.&3.&2.&1.&",
"costingSplitType": "&7.&6.&5.&4.&3.&2.&1.&",
"supplierPartID": "&7.&6.&5.&4.&3.&2.&1.&",
"validCombinations": {
"itemDetails": {
"validRules": {
"field": {
"*": {
"id": "&12.&11.&10.&9.&8.&7.&6.&5.&4.&3.&2.[&1].&",
"type": "&12.&11.&10.&9.&8.&7.&6.&5.&4.&3.&2.[&1].&",
"name": "&12.&11.&10.&9.&8.&7.&6.&5.&4.&3.&2.[&1].&",
"value": "&12.&11.&10.&9.&8.&7.&6.&5.&4.&3.&2.[&1].&"
}
}
}
}
}
}
}
}
}
}
}
}
}
},
{
"operation": "cardinality",
"spec": {
"*": {
"*": {
"*": {
"*": {
"*": {
"status": "ONE",
"poHeader": {
"*": "ONE",
"company": {
"*": "ONE"
}
},
"items": {
"item": {
"costingSplitType": "ONE",
"validCombinations": {
"itemDetails": {
"validRules": {
"field": {
"id": "ONE",
"type": "ONE",
"name": "ONE",
"value": "ONE"
}
}
}
}
}
}
}
}
}
}
}
}
},
{
"operation": "modify-overwrite-beta",
"spec": {
"*": {
"*": {
"*": {
"*": {
"*": {
"poHeader": {
"costingSplitLevel": "=toInteger",
"costingSplitType": "=toInteger",
"supplierPOContactType": "=toInteger"
},
"items": {
"item": {
"costingSplitType": "=toInteger"
}
}
}
}
}
}
}
}
},
{
"operation": "modify-overwrite-beta",
"spec": {
"*": {
"*": {
"*": {
"*": {
"*": {
"*": {
"*": {
"product": "=divide(1,#(1,itemQuantity))",
"itemTotalAmount": "=divide(#(1,marketPrice),#(1,product))"
}
}
}
}
}
}
}
}
}
]
You can add your keys that you want create object from it like the below code snippet in the spec:
{
"WG_ACCOUNT": {
"#": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[0].value",
"#name4": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[0].id",
"#AUTO_COMPLETE": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[0].type",
"#GL_ACCOUNT": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[0].name"
},
"BUSINESS_UNIT": {
"#": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[1].value",
"#name4": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[1].id",
"#AUTO_COMPLETE": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[1].type",
"#GL_ACCOUNT": "integration-inbound:IntegrationDetails.integrationEntities.integrationEntity.integrationEntityDetails.poDetails.items.item.validCombinations.itemDetails.validRules.field[1].name"
}
}
output:
{
"field": [
{
"id": "name4",
"type": "AUTO_COMPLETE",
"name": "GL_ACCOUNT",
"value": 641100
},
{
"id": "name4",
"type": "AUTO_COMPLETE",
"name": "GL_ACCOUNT",
"value": "OFIC"
}
]
}

Is it possible to set the background of a new tab page to a HTML file?

I was wondering if it was possible to set HTML code as a background for chrome.
Here is a edited example: Example (Replace green with HTML output)
I was going to insert this HTML code into the background:
particlesJS('particles-js',
{
"particles": {
"number": {
"value": 80,
"density": {
"enable": true,
"value_area": 800
}
},
"color": {
"value": "#ffffff"
},
"shape": {
"type": "circle",
"stroke": {
"width": 0,
"color": "#000000"
},
"polygon": {
"nb_sides": 5
},
"image": {
"src": "img/github.svg",
"width": 100,
"height": 100
}
},
"opacity": {
"value": 0.5,
"random": false,
"anim": {
"enable": false,
"speed": 1,
"opacity_min": 0.1,
"sync": false
}
},
"size": {
"value": 3,
"random": true,
"anim": {
"enable": false,
"speed": 40,
"size_min": 0.1,
"sync": false
}
},
"line_linked": {
"enable": true,
"distance": 150,
"color": "#ffffff",
"opacity": 0.4,
"width": 1
},
"move": {
"enable": true,
"speed": 3,
"direction": "none",
"random": false,
"straight": false,
"out_mode": "bounce",
"bounce": false,
"attract": {
"enable": false,
"rotateX": 600,
"rotateY": 1200
}
}
},
"interactivity": {
"detect_on": "canvas",
"events": {
"onhover": {
"enable": true,
"mode": "grab"
},
"onclick": {
"enable": true,
"mode": "push"
},
"resize": true
},
"modes": {
"grab": {
"distance": 100,
"line_linked": {
"opacity": 1
}
},
"bubble": {
"distance": 400,
"size": 40,
"duration": 2,
"opacity": 8,
"speed": 3
},
"repulse": {
"distance": 200,
"duration": 0.4
},
"push": {
"particles_nb": 4
},
"remove": {
"particles_nb": 2
}
}
},
"retina_detect": true
});
window.onscroll = function(){
var navbar = document.querySelector('.navbar')
if (window.pageYOffset > 49){
if (navbar.classList.contains('transparent')){
navbar.classList.remove('transparent')
navbar.classList.add('opaque')
}
}else{
if (navbar.classList.contains('opaque')){
navbar.classList.remove('opaque')
navbar.classList.add('transparent')
}
}
};
<!DOCTYPE html>
<html >
<head>
<meta charset="UTF-8">
<title>JS particles example</title>
<style>
#particles-js {
width: 100%;
height: 100%;
background-color: #49A8EB;
background-size: cover;
background-position: 50% 50%;
background-repeat: no-repeat;
z-index: -1;
position: fixed;
left: 0;
top: 0;
}
</style>
<script src="https://cdnjs.cloudflare.com/ajax/libs/prefixfree/1.0.7/prefixfree.min.js"></script>
</head>
<body>
<div id="particles-js"></div>
<script src="https://cdn.jsdelivr.net/particles.js/2.0.0/particles.min.js"></script>
<!-- <script src="https://cdn.jsdelivr.net/svginjector/1.1.3/svg-injector.min.js"></script> -->
<script src="js/app.js"></script>
<script src='https://cdnjs.cloudflare.com/ajax/libs/particles.js/2.0.0/particles.min.js'></script>
<script src="js/index.js"></script>
</body>
</html>
Is there any way possible to do this? If so, I would love to know!
P.S. I've already tried looking this up and trying things out.

How to Parse Json to get value from "sub-column"?

The column and sub-column are different for each set.
I need to read column "24". Then read sub-column "11" (but not "6" or any other) and get "value": 1.66". I can't get AutoIt to read it.
My Json file:
"24": {
"alt_defindex": {
"0": 210
},
"11": {
"0": {
"value": 1.66,
"last_change": -0.17,
"last_update": 1390231504
}
},
"6": {
"0": {
"value": 1,
"last_change": -0.17,
"last_update": 1382770803
}
}
},
"30": {
"alt_defindex": {
"0": 212
},
"11": {
"0": {
"value": 22.75,
"last_change": 1.75,
"last_update": 1389765935
}
},
"6": {
"0": {
"value": 0.94,
"last_change": 0.28,
"last_update": 1367126509
}
}
},
"35": {
"11": {
"0": {
"value": 346.5,
"last_change": 59.5,
"last_update": 1390149299
}
},
"3": {
"0": {
"value": 0.33,
"last_change": -0.11,
"last_update": 1379423777
}
},
"6": {
"0": {
"value": 0.05,
"last_change": 0,
"last_update": 1336410088
}
},
"600": {
"0": {
"value": 0.05,
"last_change": 0.03,
"last_update": 1362791812
}
}
},
"36": {
"11": {
"0": {
"value": 2.33,
"last_change": 0.17,
"last_update": 1386034870
}
},
"14": {
"0": {
"value": 73.5,
"last_change": 73.5,
"last_update": 1389414784
}
},
"3": {
"0": {
"value": 0.22,
"last_change": -0.06,
"last_update": 1376609090
}
},
"6": {
"0": {
"value": 0.05,
"last_change": 0,
"last_update": 1336410089
}
},
"600": {
"0": {
"value": 0.04,
"last_change": -0.01,
"last_update": 1381960202
}
}
},
Your JSON string is wrong.
Parse error on line 1:
"24": { "alt_def
^
Expecting '{', '['
Use this site to check your JSON.
http://jsonlint.com/