I'm trying to fetch records from PostgreSQL DB by applying filters (where condition with IN operator). However Something wrong while converting string to iterable element. suggestions will be appreciated.
List<dynamic> detailedPositions = [];
Future<List<dynamic>> fetchDetailedPositions(String custID) async {
try {
print(custID); //output: ABC123, LP8338
print(custID.runtimeType); //output: string
await connection!.open();
await connection!.transaction((fetchDataConn) async {
_fetchMasterPositionData = await fetchDataConn.query(
"select cust_id, array_agg((cust_id, cust_name, quantity, item_nme, average_price)) from orders
where cust_id in (select cust_id from string_to_array(@cust_id,',')) and status='OPEN'"
substitutionValues: {'cust_id': custID, 'status': status},
timeoutInSeconds: 30,);
});
} catch (exc) {
print('Exception in fetchDetailedPositions');
print(exc.toString());
detailedPositions = [];
}