I do have problem how to set up filter.
I have data from Livespace in an array. I used iterator to create bundle from them. I need to compare them with data in airtable. Data from airtable also comes out as bundle. Each bundle has value and aspect. I need to compare values from all bundles from airtable with those from livespace and extract aspects matching them. Output from Livespace is dynamic, depending on the lead, there may be 4 values, or maybe 1. Therefore, I need to compare all these values with the database in airtable and extract aspects matching them. Everything has to happen within one scenario run. Scenario cannot run several times to compare all bundles. The purpose of extracting all aspects matching values from LS is to add them to one google slides.
Hello @Ola
I understand your challenge with setting up a filter to compare data from Livespace and Airtable, and then extract matching aspects to add to Google Slides. Let’s break down the problem and create a solution that can handle this in a single scenario run.
Here’s a step-by-step approach to solve your problem:
Retrieve Livespace Data: Use the Livespace module to fetch your data. This will give you an array of bundles, each containing one or more values.
Retrieve Airtable Data: Use the Airtable module to fetch your data. This will give you bundles with values and aspects.
Iterator for Livespace Data: Use an Iterator module to process each bundle from the Livespace array.
Array Aggregator for Airtable Data: Inside the Livespace Iterator, use an Array Aggregator to collect all Airtable bundles. This step ensures you have all Airtable data available for each Livespace item.
Filter/Comparison: After the Array Aggregator, add a Filter module. This is where the main comparison logic will happen:
Set up the filter to compare the current Livespace value(s) with each Airtable value.
Use a formula that checks if any of the Livespace values match the Airtable value.
If there’s a match, output the corresponding Airtable aspect.
Array Aggregator for Matching Aspects: After the Filter, use another Array Aggregator to collect all matching aspects for the current Livespace item.
Prepare Data for Google Slides: After the Livespace Iterator completes, you’ll have all the matching aspects. Use a Text Aggregator or JSON Aggregate to format this data as needed for Google Slides.
Add to Google Slides: Use the Google Slides module to add the collected and formatted data to your presentation.
By using this approach, you can process all Livespace values against all Airtable entries in a single scenario run, extracting matching aspects efficiently.
If this not works then come back with screenshots. Which makes it easy to understand.
Hello @Ola,
I think we did something wrong here.
Can you share your blueprint of the scenario and also share some of the sample input with the expected output?
If you don’t know how to export blueprints then check this.
Don’t worry exporting the blueprint doesn’t affect your connection with different APIs/services.
In Airtable in the first column “Aspekt” I have same data like those from Livespace (and few more that is possible to use I livespace in other cases in future), in the second I have “Dodatkowo”. What i need, to compare data from LS with those from Airtable in column “Aspekt” and get correct “Dodatkowo” to use in google slides in this format:
To test this properly in your Make.
Just remove the first JSON module then use your livespace module.
Then Set Multiple Variable(2nd) Module set variable which gets that specific Array from livespace data.
Note: In that 2nd module I’ve used the direct key from the 1st JSON module. But if your livespace data returns a different(Array/collection) structure then use Make’s array functions to set specific data.
All other things are also explained in the scenario explanation at the top.
Let me know if this works for you.