Written by:Kbase QB6/16/2009 10:26 AM
Microsoft CRM provides an easy and simple way to customize renewal entity to track domain name registration and other recurring renewal payments managed on your customer’s behalf. Follow these step by step instructions to create renewal entity and workflows:Step1: Create new entityClick: Settings>Customization>Customized Entities>NewIn section: “Entity definition”Display name: RenewalPlural Name: RenewalsName: ask_renewalIn section: “Relationship” make sure that Notes (including attachments) & Activities are tagged (enabled) In section: “Areas that display this entity” tag the modules where you wish the renewal entity to be displayed.Click: Save. Do not close
Step2: Add attributesAttributes are the fields storing data for each renewal record. Take extra care when creating attributes as changes to the attributes at later stage is limited.
For domain registration renewal we used the following new attributes as an example:Renewal Date: Type=datetime / Format=Date Only / Requirement Level=Business required (to ensure the renewal date field must be enteredTop Level Domain: Type=picklist. Using the Add button add the options available for selection from the pick list. You can set the mostly in use pick list option as default value. Registry Key: Type=nvarchar / Format=text /Maximum Length= 100Invoice No: Type=nvarchar / Format=text /Maximum Length= 100Payment Date: Type=datetime / Format=Date Only
Step3: Create relationships between Account & Renewal entitiesEach Account has one or more renewal entities. To establish this type of relationships Click: "N:1 Relationships" from the menu item and then click: New N:1 Relationship button to create it.
Primary Entity = select AccountDisplay Name=Company Type of Behavior= ParentalClick: Save & Close
Step 4: Form designSelect Forms & Views from the side menu and open Form. Using Add Fields and Add a Section from "Common Task" create a form similar to this one:
Click: Save & Close
To select the columns to display renewal records in list view
Click: View: Active Renewals - Default Public View. Add and arrange columns similar to this arrangement:
Step 5: Workflows5.1 Workflow: Email notification to customerThis workflow sends Email to customer to notify on upcoming renewal date.Click: Settings>Workflows>NewWorkflow Name= Renewal – Email NotificationEntity= RenewalClick: OKStart when= Record is CreatedAdd Step: Wait Condition. Click to configure wait condition as: “Workflow” “Time Out” “Equal” “Days:30 Before Renewal Date” (use the Form Assistant to set the date field for time out).Click: Save & CloseAdd Step: Check Condition. Click to configure condition as: “Renewal “ “Status” “Equals” “Active”Click: Save & CloseAdd Step: Send Email. Click: Set Properties to design an Email:
Click: Save & CloseClick: Publish to activate the workflow
5.2 Workflow: Create new renewal recordThis workflow is activated when renewal has been paid and it creates new renewal record and set the current record to Inactive status.Click: Settings>Workflows>NewWorkflow Name= Create new renewal recordEntity= RenewalClick: OKStart when Record Attribute Change. Click Select: Tag the fields: Payment Date & Invoice No.Add Step: Wait Condition. "Renewal" "Invoice No" "Contains Data" and "Renewal" "Payment Date" "Contains Data"Click: Save & closeAdd Step: Create Record. Using Form assistant add the following dynamic values:
Add Step: Change Status. Change Record Status "Renewal" "Inactive"
Tip:The renewal workflow is activated when both fields Invoice No & Payment Date are not null. To ensure both fields are used add the following script in the renewal form properties.Click: Forms & Views>Form>Form Properties>On Save>EditTag Event is enabled to enable the scriptCopy & paste this script:if((crmForm.all.ask_invoiceno.DataValue != null) && (crmForm.all.ask_paymentdate.DataValue ==null)) { alert('Please enter payment date');event.returnValue = false; } if((crmForm.all.ask_invoiceno.DataValue == null) && (crmForm.all.ask_paymentdate.DataValue !=null)) { alert('Please enter invoice number');event.returnValue = false; }
0 comment(s) so far...
Call to Learn More: 1300-50-68-48 All trademarks are property of their respective owners.