@@ -214,6 +214,44 @@ vars.task ++ { Attendances: [] }]]></ee:set-payload>
214214 </otherwise >
215215 </choice >
216216 </flow >
217+ <flow name =" get:\tasks\(coachId)\stats" doc : id =" 7460545c-3cf6-4ead-b850-398c204fe06b" >
218+ <set-variable value =" #[attributes.uriParams.'coachId']" doc : name =' Save "coachId"' doc : id =" 3694e194-ef36-4f13-942b-a4c0c3f4e32e" variableName =" coachId" />
219+ <salesforce : query doc : name =' Query to gather stats based on "coachId"' doc : id =" eb46a43b-fa44-4334-9db5-187bc74f87b1" config-ref =" Salesforce_Config" target =" availableStats" >
220+ <salesforce : salesforce-query ><![CDATA[ SELECT Task_Status__c, COUNT(Id)
221+ FROM SCORES_Task__c
222+ WHERE Assigned_To__c = ':coachId'
223+ GROUP BY Task_Status__c]]> </salesforce : salesforce-query >
224+ <salesforce : parameters ><![CDATA[ #[output application/java
225+ ---
226+ {
227+ coachId: vars.coachId,
228+ }]]]> </salesforce : parameters >
229+ </salesforce : query >
230+ <salesforce : describe-sobject type =" SCORES_Task__c" doc : name =" Get SCORES_Task__c properties (Describe sobject)" doc : id =" c1c6e3fb-40db-47d4-a353-7e53fb41197a" config-ref =" Salesforce_Config" />
231+ <ee : transform doc : name =' Filter "Task_Status__c" values' doc : id =" 1ef0835c-8476-4229-9f92-069900bfcbd7" >
232+ <ee : message >
233+ <ee : set-payload ><![CDATA[ %dw 2.0
234+ output application/json
235+ ---
236+ (
237+ payload.fields
238+ filter (field) -> field.name == "Task_Status__c"
239+ )[0].picklistValues
240+ map (item) -> item.value]]> </ee : set-payload >
241+ </ee : message >
242+ </ee : transform >
243+ <ee : transform doc : name =" Prepare Stats" doc : id =" 5fcb5f09-d407-4c3c-ae4e-8b09c757672d" >
244+ <ee : message >
245+ <ee : set-payload ><![CDATA[ %dw 2.0
246+ output application/json
247+ var memo = vars.availableStats reduce (item, acc = {}) ->
248+ acc ++ {(item.Task_Status__c): item.expr0}
249+ var result = payload map ((item, index) -> {(item): memo[item] default 0})
250+ ---
251+ result reduce ((item, acc = {}) -> acc ++ item)]]> </ee : set-payload >
252+ </ee : message >
253+ </ee : transform >
254+ </flow >
217255 <flow name =" get:\tasks\(taskId)\tags:salesforce-data-api-config" >
218256 <logger level =" INFO" message =" get:\tasks\(taskId)\tags:salesforce-data-api-config" ></logger >
219257 <ee : transform doc : id =" 7e56aada-f163-47f0-8ffc-213f1acd09a8" doc : name =" Store Query parameters" >
0 commit comments