Aggregator not showing fields

I am trying to upload multiple attachments from one base to another in Airtable.

The Aggregator is not picking up the information from the iterator to add the array to the attachment field, and I am trying to figure out the reason for this.

The scenario worked perfectly fine with Integromat.

Is anyone else having this issue?

Hi @Jarryd_Williams ,

I could be you have to re-map the aggregator to make sure it’s picking up the data. Can you explain a bit more what you are missing, and show us some screenshots?

Thanks!

The aggregator’s source module is the Iterator:

It is not picking up the URL and File Name as it did in Integromat.

@Jarryd_Williams
Make sure you scroll down all the way to the bottom, to the module of the iterator.

If it’s not in there, try to run the modules once (so the airtable & the iterator) to make sure Make has example data. Hope this helps you.

@Bjorn.drivn This is exactly what I have been doing.

Yet it is not picking up the ID or URL.

In your iterator, does the array object have two fields you need?

Yes, I believe so.

Let’s back up.

You are trying to add something to an existing array? As in, you get a records data from Airtable and you want to update the record’s “Attachment” field with new data?

You need to use the add() function to take your existing array object and add your new data to it.

Airtable uses “Destructive overwrites” when using the “Update A Record” module as it’s a PUT API method.

By using the function in the “Attachments” field, you simply bring in the current array and add your data to it.

Suffice to say, your Iterator-Aggregator may be over-complicating it

What I am actually trying to do is add an attachment field (this could be one or multiple documents), and transfer those attachments to another Airtable Base.

Bare in mind that the Attachment field in some cases is a lookup from another table/base in Airtable.

@Jarryd_Williams Sometimes this aggregator can be pretty buggy, I believe Make is aware of the issue and would solve it (soon hopefully).
I just now also had an aggregator which didn’t show me the values again.

How you can solve this (pretty techy):

  1. Within the aggregator, add any of the values from the module you would like to map. (So if from module 23 you want to map “thumbnails” but this doesn’t show, add something else from module 23.
  2. Now save the scenario, and download the blueprint
  3. Open the blueprint JSON in some kind of file editor like notepad++ (windows) or brackets (mac)
  4. Now manually add the variable you would like to add in the mapping of the aggregator. This would look like the following:

Before edit:

                        {
                            "id": 43,
                            "module": "builtin:BasicAggregator",
                            "version": 1,
                            "parameters": {
                                "feeder": 22
                            },
                            "mapper": {
                                "__IMTINDEX__": "{{22.`__IMTINDEX__`}}",
                            },
                            "metadata": {
                                "designer": {
                                    "x": 1800,
                                    "y": 450
                                },
                                "restore": {
                                    "feeder": {
                                        "label": "Iterator [22]"
                                    },
                                    "target": {
                                        "label": "Custom"
                                    },
                                    "mapper": {
                                        "label": [
                                            null
                                        ]
                                    }
                                }
                            }
                        },

After the edit, adding my variable I want:

                        {
                            "id": 43,
                            "module": "builtin:BasicAggregator",
                            "version": 1,
                            "parameters": {
                                "feeder": 22
                            },
                            "mapper": {
                                "__IMTINDEX__": "{{22.`__IMTINDEX__`}}",
                                "BankEntryLineDate": "{{22.BankEntryLines.results[1].Date}}"
                            },
                            "metadata": {
                                "designer": {
                                    "x": 1800,
                                    "y": 450
                                },
                                "restore": {
                                    "feeder": {
                                        "label": "Iterator [22]"
                                    },
                                    "target": {
                                        "label": "Custom"
                                    },
                                    "mapper": {
                                        "label": [
                                            null
                                        ]
                                    }
                                }
                            }
                        },

You can see I added the item BankEntryLines.
5. Now you can remove the other value you don’t want in the mapping. Such as this IMTINDEX.
6. Save the JSON and upload this into your scenario as blueprint.

This trick however does not allow you to actually see the value in the GUI. So you would see the data in the output of the aggregator, but it will still not be visible in the interface of the aggregator mapping.
Changing this value within the UI of Make would overwrite the manual data you inputted in the JSON.

It is a pretty hacky approach to fix this, but I hope this helps you.
If you have any other questions please feel free to comment them below.

4 Likes

@Bjorn.drivn Apologies for the late response. It was the weekend this side.

Let me look into this a little more. It is of semi-important priority now. But I really do appreciate the detailed description/solve.

Thanks again.

1 Like