HELP Pushing Data to End of Workflow

I have a workflow that takes data from a new table and compares it to data from an existing Monday Board and, based on a specific parameter, row by row functions determine whether it is duplicate data or new data.

If it is duplicate, I need to update an existing item in Monday. If its new, I need to add an item in Monday.

I FINALLY got the functions to work BUT I cannot create a new item because the GroupID (necessary for creating an item in a group) is not carrying to the end of the workflow. In fact, NO DATA other than the table data seems to be accessible. I can’t figure out how to make the data from earlier nodes accessible.

  • n8n version: 1.54.4
  • Database (default: SQLite): default
  • n8n EXECUTIONS_PROCESS setting (default: own, main): default
  • Running n8n via (Docker, npm, n8n cloud, desktop app): docker
  • Operating system: windows 11

I believe it has to do with the merge node.
You could try running both actions in series instead, without a merge node: Trigger → Create Group → Extract from File - referencing to Form Trigger like this: $('n8n Form Trigger').item.binary.file_upload

I tried that but for some reason when I put the Create Group node in front of the Extract from file node, the file_upload data shows red and is not available.

I have a lot of trouble passing data through n8n nodes actually.

Oh yeah, my bad. Try it the other way round. So like this:

I added one line at the top of the code node. Maybe you need to double check that. Also, consider replacing that node with the new “Code” node.

I do appreciate your efforts, but I’ve tried that and it doesn’t work either. Every row of the csv table is run individually so when the Create Group module is there it just creates a new Group for every row. I only need ONE Group for the entire table.
Also, yes I should convert to the new Code node, but I know that isn’t what is causing the problem because, again, no data makes it past the If node, except for the table data.

You can set the first monday.com node to “execute once” in the settings. Should solve that issue.

About the issue with the if node it is a bit difficult to debug to me. Would be great if you could bin the trigger and first two monday.com nodes and post the workflow here again. Maybe you have an example csv with 3 rows of dummy data for this.

Thanks for the tip on setting the node to execute once!
Ok, decided to take a completely different approach and reduce the code (I can’t code anyway, Claude wrote that).

I’m still having trouble passing data though.
I have everything merging BUT, it creates a situation where one object I need is at position [0] and the rest are [1] through [7] but whenever I set the first variable to json object [0] the second variable cannot be passed (as seen in screenshot) and therefore fails.

{
“meta”: {
“instanceId”: “18c77c2c4de677abc7d28b1b979f72c1d82426841bea8c1b8b2c1884d52d319a”
},
“nodes”: [
{
“parameters”: {
“path”: “4bd4b0d2-3d3b-4443-a655-12311d63be05”,
“formTitle”: “File Upload”,
“formFields”: {
“values”: [
{
“fieldLabel”: “File”,
“fieldType”: “file”,
“multipleFiles”: false
}
]
},
“options”: {}
},
“id”: “5e0208e8-a935-418e-933a-e066a1f58045”,
“name”: “n8n Form Trigger”,
“type”: “n8n-nodes-base.formTrigger”,
“typeVersion”: 2.1,
“position”: [
620,
300
],
“webhookId”: “4bd4b0d2-3d3b-4443-a655-12311d63be05”
},
{
“parameters”: {
“binaryPropertyName”: “=File”,
“options”: {}
},
“id”: “2fe3c53b-d6c4-4ef6-a623-c5b352f6479d”,
“name”: “Extract from File”,
“type”: “n8n-nodes-base.extractFromFile”,
“typeVersion”: 1,
“position”: [
1060,
220
]
},
{
“parameters”: {
“resource”: “boardItem”,
“operation”: “getAll”,
“boardId”: “7276630920”,
“groupId”: “us_ca___admin_hold_orders_csv67359__1”,
“returnAll”: true
},
“id”: “e9209411-d7b9-425e-8fe1-bf8307fab0c8”,
“name”: “Monday.com”,
“type”: “n8n-nodes-base.mondayCom”,
“typeVersion”: 1,
“position”: [
900,
360
],
“credentials”: {
“mondayComApi”: {
“id”: “1j8ABSvY8IIvsBEC”,
“name”: “Monday.com account”
}
}
},
{
“parameters”: {
“resource”: “boardItem”,
“operation”: “changeMultipleColumnValues”,
“boardId”: “7276630920”,
“itemId”: “={{ $json.id }}”,
“columnValues”: “={"text__1": "{{ $json.name }}", "date4": "2024-08-24"}”
},
“id”: “7c9a7bd9-ad28-472a-98f7-988f724cbd97”,
“name”: “Monday.com1”,
“type”: “n8n-nodes-base.mondayCom”,
“typeVersion”: 1,
“position”: [
1460,
360
],
“credentials”: {
“mondayComApi”: {
“id”: “1j8ABSvY8IIvsBEC”,
“name”: “Monday.com account”
}
}
},
{
“parameters”: {
“mode”: “combine”,
“advanced”: true,
“mergeByFields”: {
“values”: [
{
“field1”: “Ordnbr”,
“field2”: “column_values[5].text”
}
]
},
“options”: {}
},
“id”: “4c7cf547-6465-4b62-8760-f65816802c0d”,
“name”: “Merge”,
“type”: “n8n-nodes-base.merge”,
“typeVersion”: 3,
“position”: [
1240,
360
]
},
{
“parameters”: {
“mode”: “combine”,
“advanced”: true,
“mergeByFields”: {
“values”: [
{
“field1”: “Ordnbr”,
“field2”: “column_values[5].text”
}
]
},
“joinMode”: “keepNonMatches”,
“options”: {}
},
“id”: “3108fbbc-da38-4c7f-bda4-ee707094741f”,
“name”: “Merge1”,
“type”: “n8n-nodes-base.merge”,
“typeVersion”: 3,
“position”: [
1120,
560
]
},
{
“parameters”: {
“resource”: “boardGroup”,
“boardId”: “7276630920”,
“name”: “={{ $(‘n8n Form Trigger’).item.json.File.filename }}”
},
“id”: “c250be8f-1bf0-4220-a97b-fea6a11cc8ac”,
“name”: “Monday.com2”,
“type”: “n8n-nodes-base.mondayCom”,
“typeVersion”: 1,
“position”: [
1360,
500
],
“executeOnce”: true,
“credentials”: {
“mondayComApi”: {
“id”: “1j8ABSvY8IIvsBEC”,
“name”: “Monday.com account”
}
}
},
{
“parameters”: {
“resource”: “boardItem”,
“boardId”: “7276630920”,
“groupId”: “={{ $json.id }}”,
“name”: “={{ $json.Ordnbr[++] }}”,
“additionalFields”: {}
},
“id”: “e01d7a43-31af-4511-8d40-a99f560f4a34”,
“name”: “Monday.com4”,
“type”: “n8n-nodes-base.mondayCom”,
“typeVersion”: 1,
“position”: [
1760,
580
],
“credentials”: {
“mondayComApi”: {
“id”: “1j8ABSvY8IIvsBEC”,
“name”: “Monday.com account”
}
}
},
{
“parameters”: {
“assignments”: {
“assignments”: [
{
“id”: “4db3bcdf-4172-49ce-b755-1a5154e891f7”,
“name”: “CatalogID”,
“value”: “={{ $json.CatalogID }}”,
“type”: “string”
},
{
“id”: “c6563075-a344-4642-a571-9acdd6d3a282”,
“name”: “Order Date”,
“value”: “={{ $json["Order Date"] }}”,
“type”: “string”
},
{
“id”: “cb82c972-9874-4839-9477-a45e6f71e9a2”,
“name”: “Ordnbr”,
“value”: “={{ $json.Ordnbr }}”,
“type”: “string”
},
{
“id”: “d1e96dc1-75b5-489b-a338-6cbb48f92396”,
“name”: “SoTypeId”,
“value”: “={{ $json.SoTypeId }}”,
“type”: “string”
},
{
“id”: “7f145331-03df-4d91-8fee-0458c4fcc096”,
“name”: “Gift Card”,
“value”: “={{ $json["Gift Card"] }}”,
“type”: “string”
},
{
“id”: “58f376af-b967-4397-b77d-e6f9e32b29b1”,
“name”: “CuryTotMerch”,
“value”: “={{ $json.CuryTotMerch }}”,
“type”: “string”
},
{
“id”: “92dadb03-bf16-4f61-94a4-43b91bab2951”,
“name”: “CuryTotFrt”,
“value”: “={{ $json.CuryTotFrt }}”,
“type”: “string”
},
{
“id”: “88b1b1ec-4846-475d-8f9d-b97ecb0bee1d”,
“name”: “CuryTotPremFrt”,
“value”: “={{ $json.CuryTotPremFrt }}”,
“type”: “string”
},
{
“id”: “ee9f446e-0f46-4f5d-bfdc-b51e1c1d528f”,
“name”: “CuryTotTax”,
“value”: “={{ $json.CuryTotTax }}”,
“type”: “string”
},
{
“id”: “57e8da7d-0ea1-4a9c-ac1e-ec5be458454a”,
“name”: “CuryTotOrd”,
“value”: “={{ $json.CuryTotOrd }}”,
“type”: “string”
},
{
“id”: “845f3d5d-e5f0-4776-ac6c-fdc14d12375c”,
“name”: “ShipCountry”,
“value”: “={{ $json.ShipCountry }}”,
“type”: “string”
},
{
“id”: “18f68f3c-8588-4331-bd09-5d84c3605016”,
“name”: “BillCountry”,
“value”: “={{ $json.BillCountry }}”,
“type”: “string”
},
{
“id”: “0d59ba0d-47be-48b7-9cc3-975a6838f4d3”,
“name”: “billname”,
“value”: “={{ $json.billname }}”,
“type”: “string”
}
]
},
“options”: {}
},
“id”: “b91e7730-77c1-404d-a9bf-cfe604c1c669”,
“name”: “Edit Fields”,
“type”: “n8n-nodes-base.set”,
“typeVersion”: 3.4,
“position”: [
1340,
720
]
},
{
“parameters”: {},
“id”: “b97c3b10-80e1-4f71-ae40-f5742e510a52”,
“name”: “Merge2”,
“type”: “n8n-nodes-base.merge”,
“typeVersion”: 3,
“position”: [
1560,
600
]
}
],
“connections”: {
“n8n Form Trigger”: {
“main”: [
[
{
“node”: “Extract from File”,
“type”: “main”,
“index”: 0
},
{
“node”: “Monday.com”,
“type”: “main”,
“index”: 0
}
]
]
},
“Extract from File”: {
“main”: [
[
{
“node”: “Merge”,
“type”: “main”,
“index”: 0
},
{
“node”: “Merge1”,
“type”: “main”,
“index”: 0
}
]
]
},
Monday.com”: {
“main”: [
[
{
“node”: “Merge”,
“type”: “main”,
“index”: 1
},
{
“node”: “Merge1”,
“type”: “main”,
“index”: 1
}
]
]
},
“Merge”: {
“main”: [
[
{
“node”: “Monday.com1”,
“type”: “main”,
“index”: 0
}
]
]
},
“Merge1”: {
“main”: [
[
{
“node”: “Monday.com2”,
“type”: “main”,
“index”: 0
},
{
“node”: “Edit Fields”,
“type”: “main”,
“index”: 0
}
]
]
},
“Monday.com2”: {
“main”: [
[
{
“node”: “Merge2”,
“type”: “main”,
“index”: 0
}
]
]
},
“Edit Fields”: {
“main”: [
[
{
“node”: “Merge2”,
“type”: “main”,
“index”: 1
}
]
]
},
“Merge2”: {
“main”: [
[
{
“node”: “Monday.com4”,
“type”: “main”,
“index”: 0
}
]
]
}
},
“pinData”: {}
}

Figured it out with a function. Just added the groupID to each of the table items.

CHEERS

2 Likes

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.