Hi Community, this is my first Deluge script. I've pieced it together from reading various articles
I want to use it in a workflow to
1 Convert a lead to a contact
2. Create a record in a custom module
Below is what I have got so far but it does not fire in the workflow trigger.
I am not sure what I have to change but a little guidance would very much be appreciated
void automation.Convert_insurance_referral()
{
try
{
leadId = Lead_ID;
if(leadId == null)
{
info "Error: input.id is null.";
return;
}
// get lead record
lead = zoho.crm.getRecordById("Leads", leadId);
if(lead == null || lead.isEmpty())
{
info "Error: No Lead found for ID: " + leadId;
return;
}
// convert lead
convertMap = map();
convertMap.put("overwrite", true);
converted = zoho.crm.convertLead(leadId, convertMap);
if(converted == null || converted.isEmpty())
{
info "Error: Lead conversion returned no response for Lead ID: " + leadId;
return;
}
contactId = converted.get("Contacts");
if(contactId == null)
{
info "Error: Lead was converted, but no Contact ID was returned. Response: " + converted.toString();
return;
}
// create Initial Assessment record
assessmentMap = map();
contactLookup = map();
contactLookup.put("id", contactId);
assessmentMap.put("Contact", contactId);
assessmentMap.put("Contact", contactLookup);
assessmentMap.put("Insurance_Provider", lead.get("Insurance_Provider"));
assessmentMap.put("Case_ID", lead.get("Case_ID"));
assessmentMap.put("Case_Handler", lead.get("Case_Handler"));
assessmentMap.put("Approved_Treatments", lead.get("Approved_Treatments"));
assessmentMap.put("Venue", lead.get("Venue"));
assessmentMap.put("Assessment_Date", lead.get("Assessment_Date"));
assessmentMap.put("Assessment_Status", lead.get("Assessment_Status"));
assessmentMap.put("Assigned_Therapist", lead.get("Assigned_Therapist"));
// mandatory field
assignedTherapist = lead.get("Assigned_Therapist");
if(assignedTherapist != null)
{
assessmentMap.put("Record_Name", assigned_Therapist);
}
else
{
assessmentMap.put("Record_Name", "Assessment for Contact " + contactId);
}
createResp = zoho.crm.createRecord("Initial_Assessments", assessmentMap);
if(createResp == null || createResp.isEmpty())
{
info "Error: Initial_Assessments record creation returned no response.";
return;
}
if(createResp.get("id") != null)
{
info "Success: Initial Assessment created. Record ID: " + createResp.get("id");
}
else
{
info "Warning: Record creation response did not include an ID. Response: " + createResp.toString();
}
}
catch (e)
{
info "Exception occurred in Convert_insurance_referral: " + e.toString();
}
}