Parse has to populate an array, need to be fixed.
I'm mapping a 940 and attempting to account for multiple ST-SE segments. I'm using the documentation on how to do so but when I do, on the last part of the detail segments, I'm getting an error where it's telling me that there's something to parse into an array when I haven't set it to parse an array. It only happens when I add this last segment though. Below are my rules and the segment in question is the W20 segment at the end. I didn't put real field names in because I'd have to delete it later anyway.
{
"resourcePath": "",
"fileDefinition": {
"_id": "662fe5b876bf4040546ffd24",
"lastModified": "2024-04-29T18:53:39.217Z",
"name": "Generic EDI 940",
"sandbox": true,
"description": "Warehouse Shipping Order",
"version": "1",
"format": "delimited",
"delimited": {
"rowSuffix": "~",
"rowDelimiter": "~",
"colDelimiter": "*"
},
"rules": [
{
"maxOccurrence": 1,
"required": false,
"skipRowSuffix": true,
"elements": [
{
"name": "ISA",
"value": "ISA"
},
{
"name": "Authorization Information Qualifier",
"value": "ISA01"
},
{
"name": "Authorization Information",
"value": "ISA02"
},
{
"name": "Security Information Qualifier",
"value": "ISA03"
},
{
"name": "Security Information",
"value": "ISA04"
},
{
"name": "Interchange ID Qualifier(ISA05)",
"value": "ISA05"
},
{
"name": "Interchange Sender ID",
"value": "ISA06"
},
{
"name": "Interchange ID Qualifier(ISA07)",
"value": "ISA07"
},
{
"name": "Interchange Receiver ID",
"value": "ISA08"
},
{
"name": "Interchange Date",
"value": "ISA09"
},
{
"name": "Interchange Time",
"value": "ISA10"
},
{
"name": "Interchange Control Standards Identifier",
"value": "ISA11"
},
{
"name": "Interchange Control Version Number",
"value": "ISA12"
},
{
"name": "Interchange Control Number",
"value": "ISA13"
},
{
"name": "Acknowledgment Requested",
"value": "ISA14"
},
{
"name": "Usage Indicator",
"value": "ISA15"
},
{
"name": "Component Element Separator",
"value": "ISA16"
}
],
"children": [
{
"maxOccurrence": 1,
"required": false,
"skipRowSuffix": true,
"elements": [
{
"name": "GS",
"value": "GS"
},
{
"name": "Functional Identifier Code",
"value": "GS01"
},
{
"name": "Application Sender's Code",
"value": "GS02"
},
{
"name": "Application Receiver's Code",
"value": "GS03"
},
{
"name": "Date",
"value": "GS04"
},
{
"name": "Time",
"value": "GS05"
},
{
"name": "Group Control Number",
"value": "GS06"
},
{
"name": "Responsible Agency Code",
"value": "GS07"
},
{
"name": "Version / Release / Industry Identifier",
"value": "GS08"
}
],
"children": [
{
"name": "ST",
"maxOccurrence": 10,
"container": true,
"children": [
{
"required": false,
"skipRowSuffix": true,
"elements": [
{
"name": "ST",
"value": "ST"
},
{
"name": "Transaction Set Identifier Code",
"value": "ST01"
},
{
"name": "Transaction Set Control Number",
"value": "ST02"
},
{
"name": "Implementation Convention Reference",
"value": "ST03"
}
],
"children": [
{
"skipRowSuffix": true,
"maxOccurrence": 1,
"required": true,
"elements": [
{
"name": "W05",
"value": "W05"
},
{
"name": "Order Status Code",
"value": "W0501"
},
{
"name": "Depositor Order Number",
"value": "W0502"
},
{
"name": "Purchase Order Number",
"value": "W0503"
},
{
"name": "Link Sequence Number",
"value": "W0504"
},
{
"name": "Master Reference (Link) Number",
"value": "W0505"
},
{
"name": "Transaction Type Code",
"value": "W0506"
},
{
"name": "Action Code",
"value": "W0507"
},
{
"name": " Purchase Order Type Code",
"value": "W0508"
}
],
"children": [
{
"name": "N1",
"maxOccurrence": 10,
"container": true,
"children": [
{
"skipRowSuffix": true,
"required": false,
"elements": [
{
"name": "N1",
"value": "N1"
},
{
"name": "Entity Identifier Code",
"value": "N101"
},
{
"name": "Name(N102)",
"value": "N102"
},
{
"name": "Identification Code Qualifier",
"value": "N103"
},
{
"name": "Identification Code",
"value": "N104"
},
{
"name": "Entity Relationship Code",
"value": "N105"
},
{
"name": "Entity Identifier Code(N106)",
"value": "N106"
}
]
},
{
"name": "N2",
"maxOccurrence": 2,
"container": true,
"children": [
{
"skipRowSuffix": true,
"required": false,
"elements": [
{
"name": "N2",
"value": "N2"
},
{
"name": "Name",
"value": "N201"
},
{
"name": "Name(N202)",
"value": "N202"
}
]
}
]
},
{
"name": "N3",
"maxOccurrence": 2,
"container": true,
"children": [
{
"skipRowSuffix": true,
"required": false,
"elements": [
{
"name": "N3",
"value": "N3"
},
{
"name": "Address Information",
"value": "N301"
},
{
"name": "Address Information(N302)",
"value": "N302"
}
]
}
]
},
{
"skipRowSuffix": true,
"required": false,
"elements": [
{
"name": "N4",
"value": "N4"
},
{
"name": "City Name",
"value": "N401"
},
{
"name": "State or Province Code",
"value": "N402"
},
{
"name": "Postal Code",
"value": "N403"
},
{
"name": "Country Code(N404)",
"value": "N404"
},
{
"name": "Location Qualifier",
"value": "N405"
},
{
"name": "Location Identifier(N406)",
"value": "N406"
},
{
"name": "Country Subdivision Code",
"value": "N407"
},
{
"name": "Postal Code-Formatted",
"value": "N408"
}
]
}
]
},
{
"name": "N9",
"maxOccurrence": 10,
"container": true,
"children": [
{
"skipRowSuffix": true,
"required": false,
"elements": [
{
"name": "N9",
"value": "N9"
},
{
"name": "Reference Identification Qualifier",
"value": "N901"
},
{
"name": "Reference Identification",
"value": "N902"
},
{
"name": "Free-form Description",
"value": "N903"
},
{
"name": "Date",
"value": "N904"
},
{
"name": "Time",
"value": "N905"
},
{
"name": "Time Code",
"value": "N906"
},
{
"name": "Reference Identifier",
"value": "N907"
}
]
}
]
},
{
"name": "G61",
"maxOccurrence": 3,
"container": true,
"children": [
{
"skipRowSuffix": true,
"required": false,
"elements": [
{
"name": "G61",
"value": "G61"
},
{
"name": "Contact Function Code",
"value": "G6101"
},
{
"name": "Name",
"value": "G6102"
},
{
"name": "Communication Number Qualifier",
"value": "G6103"
},
{
"name": "Communication Number",
"value": "G6104"
},
{
"name": "Contact Inquiry Reference",
"value": "G6105"
}
]
}
]
},
{
"name": "G62",
"maxOccurrence": 10,
"container": true,
"children": [
{
"skipRowSuffix": true,
"required": false,
"elements": [
{
"name": "G62",
"value": "G62"
},
{
"name": "Date Qualifier",
"value": "G6201"
},
{
"name": "Date",
"value": "G6202"
},
{
"name": "Time Qualifier",
"value": "G6203"
},
{
"name": "Time",
"value": "G6204"
},
{
"name": "Time Code",
"value": "G6205"
}
]
}
]
},
{
"name": "NTE",
"maxOccurrence": 1000,
"container": true,
"children": [
{
"skipRowSuffix": true,
"required": false,
"elements": [
{
"name": "NTE",
"value": "NTE"
},
{
"name": "Note Reference Code",
"value": "NTE01"
},
{
"name": "Description",
"value": "NTE02"
}
]
}
]
},
{
"skipRowSuffix": true,
"required": false,
"elements": [
{
"name": "W09",
"value": "W09"
},
{
"name": "Equipment Description Code",
"value": "W0901"
},
{
"name": "Temperature",
"value": "W0902"
},
{
"name": "Unit or Basis for Measurement Code",
"value": "W0903"
},
{
"name": "Temperature(W0904)",
"value": "W0904"
},
{
"name": "Unit or Basis for Measurement Code(W0905)",
"value": "W0905"
},
{
"name": "Free-form Message",
"value": "W0906"
},
{
"name": "Vent Setting Code",
"value": "W0907"
},
{
"name": "Percent, Integer Format",
"value": "W0908"
},
{
"name": "Quantity(W0909)",
"value": "W0909"
}
]
},
{
"skipRowSuffix": true,
"required": false,
"elements": [
{
"name": "W66",
"value": "W66"
},
{
"name": "Shipment Method of Payment Code",
"value": "W6601"
},
{
"name": "Transportation Method/Type Code",
"value": "W6602"
},
{
"name": "Pallet Exchange Code(W6603)",
"value": "W6603"
},
{
"name": "Unit Load Option Code",
"value": "W6604"
},
{
"name": "Routing",
"value": "W6605"
},
{
"name": "FOB Point Code",
"value": "W6606"
},
{
"name": "FOB Point",
"value": "W6607"
},
{
"name": "COD Method of Payment Code",
"value": "W6608"
},
{
"name": "Amount",
"value": "W6609"
},
{
"name": "Standard Carrier Alpha Code",
"value": "W6610"
}
]
},
{
"name": "LX",
"maxOccurrence": 1000,
"container": true,
"children": [
{
"skipRowSuffix": true,
"maxOccurrence": 1,
"required": false,
"elements": [
{
"name": "LX",
"value": "LX"
},
{
"name": "Assigned Number",
"value": "LX01"
}
]
},
{
"skipRowSuffix": true,
"required": false,
"elements": [
{
"name": "W01",
"value": "W01"
},
{
"name": "Quantity",
"value": "W0101"
},
{
"name": "Unit or Basis for Measurement Code",
"value": "W0102"
},
{
"name": "UPC Case Code",
"value": "W0103"
},
{
"name": "Product/Service ID Qualifier",
"value": "W0104"
},
{
"name": "Product/Service ID",
"value": "W0105"
},
{
"name": "Product/Service ID Qualifier(W0106)",
"value": "W0106"
},
{
"name": "Product/Service ID(W0107)",
"value": "W0107"
},
{
"name": "Freight Class Code",
"value": "W0108"
},
{
"name": "Rate Class Code",
"value": "W0109"
},
{
"name": "Commodity Code Qualifier",
"value": "W0110"
},
{
"name": "Commodity Code",
"value": "W0111"
},
{
"name": " Pallet Block and Tiers",
"value": "W0112"
},
{
"name": "Warehouse Lot Number",
"value": "W0113"
},
{
"name": "Product/Service Condition Code",
"value": "W0114"
}
]
},
{
"name": "G69",
"skipRowSuffix": true,
"required": false,
"elements": [
{
"name": "G69",
"value": "G69"
},
{
"name": "Free-form Description",
"value": "G6901"
}
]
},
{
"name": "N9",
"skipRowSuffix": true,
"required": false,
"elements": [
{
"name": "N9",
"value": "N9"
},
{
"name": "Reference Identification Qualifier",
"value": "N901"
},
{
"name": "Reference Identification",
"value": "N902"
}
]
},
{
"name":"W20",
"skipRowSuffix":true,
"required":false,
"elements":[
{
"name":"W20",
"value":"W20"
},
{
"name":"W2001",
"value":"W2001"
},
{
"name":"W2002",
"value":"W2002"
},
{
"name":"W2003",
"value":"W2003"
},
{
"name":"W2004",
"value":"W2004"
},
{
"name":"W2005",
"value":"W2005"
},
{
"name":"W2006",
"value":"W2006"
},
{
"name":"W2007",
"value":"W2007"
}
]
}
]
}
],
"closeRule": {
"description": "Total Shipping Order",
"required": false,
"skipRowSuffix": true,
"maxOccurrence": 1,
"elements": [
{
"name": "W76",
"value": "W76"
},
{
"name": "Quantity",
"value": "W7601"
},
{
"name": "Weight",
"value": "W7602"
},
{
"name": "Unit or Basis for Measurement Code",
"value": "W7603"
},
{
"name": "Volume",
"value": "W7604"
},
{
"name": "Unit or Basis for Measurement Code(W7605)",
"value": "W7605"
},
{
"name": "Order Sizing Factor",
"value": "W7606"
}
]
}
}
],
"closeRule": {
"maxOccurrence": 1,
"required": false,
"elements": [
{
"name": "SE",
"value": "SE"
},
{
"name": "Number of Included Segments",
"value": "SE01"
},
{
"name": "Transaction Set Control Number(SE02)",
"value": "SE02"
}
]
}
}
],
"closeRule": {
"maxOccurence": 1,
"required": false,
"skipRowSuffix": true,
"elements": [
{
"name": "GE",
"value": "GE"
},
{
"name": "Number of Transaction Sets Included",
"value": "GE01"
},
{
"name": "Group Control Number(GE02)",
"value": "GE02"
}
]
}
}
],
"closeRule": {
"maxOccurrence": 1,
"required": false,
"skipRowSuffix": true,
"elements": [
{
"name": "IEA",
"value": "IEA"
},
{
"name": "Number of Included Functional Groups",
"value": "IEA01"
},
{
"name": "Interchange Control Number(IEA02)",
"value": "IEA02"
}
]
}
}
]
}
]
}
}
Here's my sample data:
ISA*00* *00* *01*006127708 *12*7045875587 *240417*0845*U*00501*000012732*0*P*>~GS*OW*4144979345*7045875587*20240417*0845*3011*X*005010~ST*940*3342~W05*R*0007228238***0085764381*TS~N1*SF*Name*54*1615~N1*ST*Name*9*0000001610~N3*Address1*street~N4*city*ST*28086-9225*US~N9*PIN*DEFAULT~G62*10*20240418~G62*02*20240419~W66*PP*M~LX*10~W01*42*CA*004182005820***VN*09615171170*******01~G69*1/5 REF KSHR SPR 215 265CT -BYVAL~N9*LI*10~W20****48.272*G*L*2027.424~LX*20~W01*168*CA*004182005818***VN*09647611170*******01~G69*1/5 REF KOSH DILL SL 5/16-BYVAL~N9*LI*20~W20****48.327*G*L*8118.936~LX*30~W01*20*CA*000044627002***VN*29257010756*******01~G69*1/2 REF KSH DLL SPR 145 175 -SCHWZ~N9*LI*30~W20****19.974*G*L*399.48~LX*40~W01*84*CA*000044655002***VN*29655010756*******01~G69*1/5 REF KSH DLL SPR 375 425 -SCHWZ~N9*LI*40~W20****48.27*G*L*4054.68~LX*50~W01*585*CA*003430000135***VN*71818464328*******01~G69*12/2 REF DELI STYLE SAUERKRAUT-DELEX~N9*LI*50~W20****26*G*L*15210~LX*60~W01*28*CA*002160010079***VN*09615340377*******01~G69*1/5 RF KSHDL SLC 1/4CC1400 - SMBUR~N9*LI*60~W20****48.29*G*L*1352.12~LX*70~W01*154*CA*000044658280***VN*29658280756*******01~G69*1/5 RFKSHHMBSL1/4CC1400 -SCHWZ~N9*LI*70~W20****48.315*G*L*7440.51~W76*1081*38603.15*LB~SE*47*3342~GE*1*3011~IEA*1*000012732~
Any ideas?
0
Comments
The issue seems to be with CloseRules. When I took the following out, it worked but didn't pull up anything after such as the SE, GE, and IEA.
Please try this
That doesn't error, but it still doesn't see the SE, GE, and IEA segments. It doesn't populate them and errors when I make them required
This should help
That worked! Can you explain what changes you made for it to work?
I tried it with this sample data and I'm still getting errors.
I've tried the sample data you've shared and it's working. Screenshot for your reference.
Please let me know if you need anything.
Please sign in to leave a comment.