โ05-22-2022 08:17 AM
Hi,
I have a scenario where I need to filter out json based on length of a particular element.
so in Source if json is like this:-
[
{
โSaleDatasโ: {
โDataIdโ: โโ,
โAmazonDataIdโ: โSale.purchase_4โ,
โAmazonDataNameโ: โโ,
โNameโ: โSale.purchase_4โ,
โDataTypeโ: โโ,
โValueโ: โWindows 11 Proโ,
โAmazonDataIdfโ: โโ
}
},
{
โSaleDatasโ: {
โDataIdโ: โโ,
โAmazonDataIdโ: โ2036โ,
โAmazonDataNameโ: โโ,
โNameโ: โcolour_nameโ,
โDataTypeโ: โโ,
โValueโ: โPlatinumโ,
โAmazonDataIdfโ: โโ
}
}
]
in target I need only :-
[
{
โSaleDatasโ: {
โDataIdโ: โโ,
โAmazonDataIdโ: โ2036โ,
โAmazonDataNameโ: โโ,
โNameโ: โsupplier_colour_nameโ,
โDataTypeโ: โโ,
โValueโ: โPlatinumโ,
โAmazonDataIdfโ: โโ
}
}
]
I need a filter snaps expession either using length or numeric of โAmazonDataIdโ. i.e if AmazonDataId.length==โ4โ then only pass through filter snaps.
โ05-22-2022 08:50 AM
Hi @Sahil,
Are you looking for something like this.
Expression for Mapper:
Array.filter(el => el.SaleDates.AmazonDataId.length == 4)
Expression for Filter:
$SaleDates.AmazonDataId.length == 4
Regards,
Viktor