Sales Onboarding Process

Statement of Work




PROJECT BACKGROUND



CURRENT SITUATION (OF THE PROCESS)


The Sales Onboarding process helps the Sales Executive to introduce new customers to the company (even if they have been clients in the past), aligning them with the right department which will maintain a direct communication with them. These departments will help the new client to find their way within the service acquired. It can also define the relationship your customer has with your product/service.

The Sales Onboarding process starts with the Register Sales task, which is performed by a Sales Executive. In this task the Sales Executive will select the Account and opportunities that he wants to onboard and that has been previously registered in the SUGARCRM, then the Sales Executive will complete the required service and billing information as described in the opportunity selected and will send it to the corresponding department for processing.

After this first task is completed the process can be divided in parallel to perform the following tasks: Generate the Invoice for customer, Submit the Professional Services Welcome and/or to perform the Support Registration. Each of these tasks has a conditional for being activated from the Register Sales task. To activate the Professional Services Welcome task, the Sales Executive must select one of the services that the customer has ordered as a “Professional Services” service type. To activate the Support Registration task, the Sales Executive must select one of the services that the customer has ordered as a “Support Services” service type. The Invoice Customer task will be activated for all the onboarding cases after the Register Sales task is submitted.

If the Professional Services Welcome task is activated, this task will be assigned to the PS(?), in this task the PS(?) will be able to review the opportunity information, add new contacts for the opportunity, review and complete the checklist designated for this like confirming the registration of the new opportunity on Basecamp, sending the welcome email, and submitting additional comments. The items in listed in the checklist will be performed by the PS(?) manually and the results must be registered in this Task. After this task has been completed, the process will go to the “Sales Follow Up” task.

If the Support Registration task is activated, this task will be assigned to the Support Team(?). They will be able to review the new client's contact information as well to review the service requested information. They will be registering the checklist designated for this step as is to create the new client on Mantis, sending a welcome email and the recorded video training credentials, checking if the support customer spreadsheet is updated and adding some comments if required. The listed steps will be performed manually by the Support Team(?) and the results of those actions must be registered in this Task. After this task has been completed, the process will go to the “Sales Follow Up” task.

If the Invoice Customer task is activated, this task will be assigned to the Finance(?), in this task the Finance(?) will register and submit all the information related to invoicing specific services, like the number of invoice, service execution period, invoice sent and date and other comments that will allow the finance to keep track on the submitted or pending invoices for a service.

Once all the activated tasks are completed, the flow will merge and activate a final step called “Sales Follow Up”, where the Sales Executive can register if the Customer was satisfied with the way he was onboarded and register any kind of recommendations.



DESIRED SITUATION (AUTOMATED PROCESS)


The current situation of the process described in the previous section is going to be our base to define the desired situation. The first thing that we have to keep in mind is that the current process is automated in an old version of ProcessMaker (v2.5), and the idea of this project is to migrate this automated process to ProcessMaker version 3.1, which will allow the current users to suggest improvements (Desired Situation), for the new version of this process. That being said, the new desired situation with the improvements suggested by the current users will be described in parts by the involved departments as described below:


  • Sales Department: 
    • When a "New Contact" is created on ProcessMaker, ProcessMaker should push this "New Contact" information to the CRM, so both can have synchronized information.
    • The field "Service Type" is out of date.


  • Finance Department:
    • Task - Invoice Customer
      • Situation: There are cases where the "Customer PO Number" field is empty or wrong.
        • Improvement: Define the "Customer PO Number" field as editable, so then Finance will to type it or correct it.
      • Situation: Finance is creating the invoice and send it through email (manually) to the Sales Manager to get his/her approval, after this approval Finance is able to send the approved invoice to the customer.
        • Improvement: Create a new Step in the process that allows Finance to attach the Invoice and request this approval to the Sales Manager through ProcessMaker. This will required to create a new gateway that redirects the flow to a new "Review Invoice" task, which will be performed by the Sales Manager, and will loop between the Finance and the Sales Manager until the invoice is approved. After the Invoice is approved, Finance will have a to confirm that they sent the Approved Invoice to the Customer in the Collections Task.
      • Situation: In some cases, Finance doesn't know if the user's contact information displayed in the "Customer Invoicing Information", is related to the person who needs to be invoiced or not.
        • Improvement: Add the "Contacts Information" grid, so Finance can easily identify the right person to Invoice in the Customer's company.
      • Situation: The payment plan is showed in a different step after Finance created the customer's invoice, which can leads to re-generated the invoice with changes regarding the proposed payment plan. Or in many cases, the Sales Managers are detailing the Payment Plan in the Internal comments, duplicating effort in submitting this information.
        • Improvement: Delete the second step in this task that shows the Payment Plan form, and move the content into the Invoice Information form, so Finance is aware of that plan allowing them to generate accurate invoices. As well we are going to redesign the Payment Plan, allowing the Finance person to upload the invoice regarding each Payment Plan defined by the Sales Manager. The new Payment Plan grid will hold the following information:
          • Invoice Date 
          • Payment Due Date
          • Invoice Currency
          • Invoice Amount
          • Invoice Number
          • Invoice Sent to the customer (a field to confirm that the Invoice has been sent)
          • Invoice File (Invoice document - Attachment)
          • Additional Comments
    • Task - Collection
      • Situation: When an invoice needs to be credited and cancel the case, there's not an option that allows Finance to attach the Credit document for the Sales Manager to Review in the Follow Up task.
        • Improvement: Create a new Document Field in Collections that will be shown only when Finance selects Yes in the "Do you wish to Cancel this case and credit this invoice?" field, and add a "Credit Comments" Field, where Finance will add the reasons of why the invoice was credited. This will result in deleting the task "Credit Invoice" as well, since its functionality will be part of the Collection task.
      • Situation: When a payment has not been received, and it is marked that way in the field "Has payment been received?", after this task is submitted the process opens the same task, and it only continues the flow until it is marked as "Yes" in the field "Has payment been received? ". Which is unnecessary and it is not providing further functionality to the process.
        • Improvement: Change the flow of the process by deleting the sequence flow that redirects the process to the same task after "Collections", and do not allow to submit this task until the payment for all the invoices / Payment Plans generated has been received or the invoice has been credited.
        • Additional Improvement: Collection will show the New Payment Plan grid adding a two new columns in this grid so the Finance Person can register if the Payment has been received for an specific Invoice and special comments about the payment collected.


  • Support Department:
    • Situation: The Support Follow Up is a task where the support team only confirms that they performed a manual task. As a result they fill out this check list and manually send a Support Welcome Email to the customer.
      • Improvement: This form will allow to capture all the variable information that is submitted in the Support Welcome Email. ProcessMaker is going to define a Support Welcome Email template, that is going to be populated with the info obtained in this task  and it is going to be sent automatically to the customer for their use.
        • User First Name

        • Mantis Support Project Name

        • Mantis Username 

        • Mantis User Email 

        • Workspace URL 

        • Workspace Username 

        • Workspace Password 

        • Sandbox URL 

        • Sandbox Username

        • Sandbox Password

        • University Username 

        • University Password

    • Situation: The gateway after this task is redirecting the flow to the same task every iteration while the Support Registration is not fully completed. Which is unnecessary and it is not providing further functionality to the process.
      • Improvement: Change the flow of the process by deleting gateway that redirects the flow to the same "Support Registration " task, and do not allow to submit this task until the registration has been completed.


  • Professional Services Department: 
    • Situation: The task "Professional Service Welcome" doesn't provide to the Project Manager with all the necessary information, resulting in investing some extra time to find this basic information about the customer and the project.
      • Improvement 1: Add the following information to the "New Professional Services Customer" Section:
        • Customer Address (Source: SUGARCRM)
        • Customer City (Source: SUGARCRM)
        • Customer State (Source: SUGARCRM)
        • Customer Website (Source: SUGARCRM)
        • Move the "Contract End Date" field and "Contract Start Date" after Internal Remarks field.
        • The field "Contract Start Date" must be mandatory.
        • Create a new field called "Desired Project Start Date", that must be submitted by the Sales Manager in the Register Sale task.
      • Improvement 2: Add a new column in the Contacts grids, that allows the Sales Manager and the Project Manager to register in a Text field to register the Contact's Role in the project.
      • Improvement 3: Add a new File field that allows the Sales Manager to attach and submit the Professional Services Quotation that was used to create this Service request. The name of the field will be "Professional Services Quotation".
      • Improvement 4: Add a new CheckGroup field called "Information forwarded to PS" with the following options
        • Customer Reqeuirements
        • RFI
        • RFE
        • Technical Documentation
        • Others
      • Improvement 5: Add a new Dropdown called "Recurrent PS Client or Change Order?" with yes/no options. This new field will be part of the "Check List" Section.
      • Improvement 6: The selected value for the field "Welcome Email Sent?", should not be considered as part of the logic to submit this task.


Process Flow Diagram

Current Process Diagram Flow (redesigned for easier readability)


Process Diagram Flow Proposed




General Process Configuration

Process NameSales Onboarding
Start UserSales Executive
Case IdentifierOnboarding of @#Cust_Company_Name
(e.g. Onboarding of Colorado University)
DynaformsMain ( ? )
Input Documents

(question)

Finance: Credit document - Case support document.

Output Documents

(question)

Support: Welcome Support Email Template.

External Data Base ConnectionsAccount and Opportunity information from SUGARCRM database
Plug ins and Programming Development(question)


Case Trigger / Process Launching

A Sales Onboarding Process will be launched manually by a Sales Executive.

Process Tasks Definitions

Sales - Task 1.1: Register Sales

Task 1.1. Register Sales
UsersSales Executive Group
Assignment Rule

Value Based Assignment

Variable = @@salesExecutiveId
Duration1 DayCount Days By = Work Days
Data Base ConnectionsSUGARCRM


Step 1.

  • Name: Sugar Connect
  • Type: Trigger



Step 1Name: Sugar ConnectType: Trigger

Creates the connection to SugarCRM



Step 2.

  • Name: Sugar Login
  • Type: Dynaform
  • It opens a form for the credentials to log in the SUGARCRM (User and Password)

Field NameLabelData TypeRead OnlyDescriptionSource
1@@SugarUserNameUser NameTextFalse
User
2@@SugarPasswordPasswordTextFalseMask ***** (Password)User

Step 3.

  • Name: Sugar User Opportunities
  • Type: Dynaform
  • After the user has logged in, PM will show a form with 2 sections

Field NameLabelData TypeDescriptionSource
1@@sugarUserNameUser NameText [xxx]Non-Editable / Section 1User
2@@sugarAccountAccountDropdownSection 2 - Dependent to @#sugarUserName

From SUGARCRM

"SELECT ACCOUNT_NAME, ACCOUNT_NAME FROM PM_SUGAR_OPPORTUNITIES WHERE ASSIGNED_USER_NAME='@#sugarUserName' GROUP BY ACCOUNT_NAME ORDER BY ACCOUNT_NAME"

3@@sugarOpportunitiesOpportunitiesGrid (?)Section 2 - Dependent to @#sugarAccount

From SUGARCRM

SELECT ID_OPPORTUNITY, CONCAT(OPPORTUNITY_NAME," (",OPPORTUNITY_DESCRIPTION,")") FROM PM_SUGAR_OPPORTUNITIES WHERE ACCOUNT_NAME="@#sugarAccount"

Step 4.

  • Name: Sugar CRM Final Selection
  • Type: Dynaform

Field NameLabelData TypeRead OnlyDescriptionSource
1@@SUGARCRM_ACCOUNT_NAMEAccount nameTextTrue

Non-Editable / Section 1 -

Dependent to @#sugarAccount

SUGARCRM
2@@SUGARCRM_ACCOUNT_DESCRIPTIONDescriptionTextTrueNon-Editable / Section 1SUGARCRM
3@@SUGARCRM_ACCOUNT_TYPETypeTextTrueNon-Editable / Section 1SUGARCRM
4@@SUGARCRM_ACCOUNT_INDUSTRYIndustryTextTrueNon-Editable / Section 1SUGARCRM
5@@SUGARCRM_ACCOUNT_PHONEFAXPhone/FaxTextTrueNon-Editable / Section 1SUGARCRM
6@@SUGARCRM_ACCOUNT_BILLING_ADDRESS_STREETBilling Address StreetTextTrueNon-Editable / Section 1SUGARCRM
7SUGARCRM_ACCOUNT_BILLING_ADDRESS_CITYBilling Address CityTextTrueNon-Editable / Section 1SUGARCRM
8@@SUGARCRM_ACCOUNT_BILLING_ADDRESS_STATEBilling Address StateTextTrueNon-Editable / Section 1SUGARCRM
9@@SUGARCRM_ACCOUNT_BILLING_ADDRESS_POSTALCODEBilling Address POTextTrueNon-Editable / Section 1SUGARCRM
10@@SUGARCRM_ACCOUNT_BILLING_ADDRESS_COUNTRYBilling Address CountryTextTrueNon-Editable / Section 1SUGARCRM
11

@@SUGARCRM_ACCOUNT_EMAIL

EmailTextTrueNon-Editable / Section 1SUGARCRM
12@@SUGARCRM_ACCOUNT_PHONE_OFFICEPhone OfficeTextTrueNon-Editable / Section 1SUGARCRM
13@@SUGARCRM_ACCOUNT_WEBSITEWebsiteTextTrueNon-Editable / Section 1SUGARCRM
14@@SUGARCRM_SELECTED_OPPORTUNITIESServices SelectedGridTrue

No add Rows

No Delete Rows

SUGARCRM
15Grid Field - SUGARCRM_OPPORTUNITY_ID
hidden

SUGARCRM
16Grid Field - SUGARCRM_OPPORTUNITY_NAMEOpportunity NameTextTrueNon-Editable / Section 2SUGARCRM
17Grid Field - SUGARCRM_OPPORTUNITY_TYPETypeDropdownTrueNon-Editable / Section 2SUGARCRM
18Grid Field - SUGARCRM_OPPORTUNITY_AMOUNTAmountTextTrueNon-Editable / Section 2SUGARCRM
19Grid Field - SUGARCRM_OPPORTUNITY_DESCRIPTIONDescriptionText BoxTrueNon-Editable / Section 2SUGARCRM
20@@SUGARCRM_ACCOUNT_CONTACTSContacts SugarCRMgridTrue

Allow to Delete Rows

No add rows

SUGARCRM
21Grid Field - SUGARCRM_ACCOUNT_CONTACT_IDhidden

hidden
22Grid Field - SUGARCRM_ACCOUNT_CONTACT_FIRST_NAMEFirst NameTextFalse
User
23Grid Field - SUGARCRM_ACCOUNT_CONTACT_LAST_NAMELast NameTextFalse
User
24Grid Field - SUGARCRM_ACCOUNT_CONTACT_PHONE_MOBILEMobileTextFalse
User
25Grid Field - SUGARCRM_ACCOUNT_CONTACT_PHONE_WORKWork phone TextFalseMask XXX-XXX-XXXXUser
26Grid Field - SUGARCRM_ACCOUNT_CONTACT_EMAIL1EmailTextFalse
User
27Grid Field - SUGARCRM_ACCOUNT_CONTACT_TYPEType DropdownFalse
  • Technical
  • Financial (Financal ?) validate Sugar (?)
  • Business
  • Other
User
28Grid Field - SUGARCRM_ACCOUNT_CONTACT_NOTESNotesText BoxFalse
User
29Grid Field - NoneDeleteButtonFalseAllows to delete the contact rowUser
30@@ADDITIONAL_CONTACTSAdditional ContactsGridFalseAdd and Delete is permited (?)User
31Grid Field - ADDITIONAL_CONTACT_FIRST_NAMEFirst NameTextFalse
User
32Grid Field - ADDITIONAL_CONTACT_LAST_NAMELast NameTextFalse
User
33Grid Field - ADDITIONAL_CONTACT_PHONE_MOBILEMobileTextFalse
User
34Grid Field - ADDITIONAL_CONTACT_PHONE_WORKWork PhoneTextFalse
User
35Grid Field - ADDITIONAL_CONTACT_EMAIL1EmailTextFalse
User
36Grid Field - ADDITIONAL_CONTACT_TYPETypeDropdownFalse
  • Technical
  • Financial (Financal ?) validate Sugar (?)
  • Business
  • Other
User
37Grid Field - ADDITIONAL_CONTACT_NOTESNotesTextFalse
User
38@@BILLING_ADDRESS_TO_USEBilling Address to UseRadio GroupFalse

Required

SELECT CONTACT_ID,CONCAT(LAST_NAME," ",FIRST_NAME, " (",PRIMARY_ADDRESS_STREET,", ",PRIMARY_ADDRESS_CITY,", ",PRIMARY_ADDRESS_STATE,", ",PRIMARY_ADDRESS_POSTAL_CODE,", ",PRIMARY_ADDRESS_COUNTRY,")") FROM PMT_PM_SUGAR_CONTACTS WHERE ACCOUNT_NAME=@@sugarAccount

User
39
Subtitle InformationSubtitle
Please review carefully the information in this form. If there is something to chenge you may access SugarCRM and then restart the case
40
Submit ButtonSubmit Button
Validate Sugar Info (See JavaScript)


JavaScript Validations

ValidationCode
Validate Sugar Information On Submit
var dynaformOnload function(){
validateSugarInfo(false);
}

function validateSugarInfo(sw_submit){
errorMessage="";

fieldsToValidate new Array('SUGARCRM_ACCOUNT_NAME','SUGARCRM_ACCOUNT_BILLING_ADDRESS_STREET','SUGARCRM_ACCOUNT_BILLING_ADDRESS_CITY','SUGARCRM_ACCOUNT_BILLING_ADDRESS_STATE','SUGARCRM_ACCOUNT_BILLING_ADDRESS_COUNTRY');
//fieldsToValidate = new Array('SUGARCRM_ACCOUNT_NAME');
for(in fieldsToValidate){

fieldName=fieldsToValidate[i];

fieldObj=getField(fieldName);
if(fieldObj){
//console.log(fieldObj);
//console.log(fieldObj.parentNode);
//console.log(fieldObj.parentNode.previousSibling.previousSibling);
//console.log(fieldObj.parentNode.previousSibling.previousSibling.className);
//console.log(fieldObj.parentNode.previousSibling.previousSibling.innerText);


if(fieldObj.value == ""){
errorMessage+="<li>"+fieldObj.parentNode.previousSibling.previousSibling.innerText+"</li>";
}
}

}

if(errorMessage!=""){
title="<font color='red'>ERROR!</font><b> Some required fields were not filled in Sugar</b><br /><br />";
bottom "<hr><i>Please complete it in SugarCRM</i>"
//msgBox(title+errorMessage, 'info', false);
msg=title+errorMessage+bottom;
new leimnud.module.app.info().make({
         labelmsg,
           width450,
           height250,
          
      });
}else{
if(sw_submit){
//alert("submitForm");
submitForm();
}else{
//alert("nothing");
}
}
}



Step 5.

  • Name: Service Information
  • Type: Dynaform

Field NameLabelData TypeRead OnlyDescriptionSource
1@@Account_ExecAccount ExecutiveTextTrueDisable / Sales Manager who started the processRegister Sale Task
2
Customer Invoicing InformationSubtitle
New Section
3@@Cust_Company_NameCompany NameTextTrueDisable / Customer Invoicing InformationSUGARCRM
4@@Cust_First_NameFirst NameTextTrueDisable / Customer Invoicing InformationSUGARCRM
5@@Cust_Last_NameLast NameTextTrueDisable / Customer Invoicing InformationSUGARCRM
6@@Cust_EmailEmail AddressTextTrueDisable / Customer Invoicing InformationSUGARCRM
7@@CustomerAddress1Address Line 1TextTrueDisable / Customer Invoicing InformationSUGARCRM
8@@CustomerAddress2Address Line 2TextTrueDisable / Customer Invoicing InformationSUGARCRM
9@@CustomerCityCityTextTrueDisable / Customer Invoicing InformationSUGARCRM
10@@CustomerStateStateTextTrueDisable / Customer Invoicing InformationSUGARCRM
11@@CustomerPostCodeZip / Postal CodeTextTrueDisable / Customer Invoicing InformationSUGARCRM
12@@Cust_CountryCountryTextTrueDisable / Customer Invoicing InformationSUGARCRM
13@@Cust_Work_PhoneWork Phone NumberTextTrueDisable / Customer Invoicing InformationSUGARCRM
14@@CustomerCellphoneCellphone NumberTextTrueDisable / Customer Invoicing InformationSUGARCRM
15@@CustomerFaxFaxTextTrueDisable / Customer Invoicing InformationSUGARCRM
16
Invoicee InformationSubtitleNew Section

17@@invoiceeInvoiceeTextFalseInvoicee Information - Hint: Please edit and insert correct name and address ONLY if invoicee information is different from account information in SugarCRMCurrent Task
18
Additional Customer InformationSubtitleNew Section

19@@ACCOUNT_REGIONCustomerRegionDropdownFalsePending - SELECT REGION_ID, REGION_NAME FROM PMT_CUSTOMER_REGIONCurrent Task
20@@Cust_TimeZoneCustomer TimezoneDropdownFalsePending - SELECT GMT,NAME FROM PMT_TIMEZONESCurrent Task
21@@Cust_PO_NumberCustomer PO Number (If given)TextFalseEditable / Additional InformationCurrent Task
22@@Cust_Extra_InformationAdditional Information / Special RequestsText BoxFalseAdditional InformationCurrent Task
23@@Upload_Customer_OrderCustomer Order FormFileFalseAdditional Information - Required - Hint: You MUST upload the completed order form from the customerCurrent Task
24@@Upload_Customer_Doc_1Additional Customer DocumentationMultiple FileTrueView / Additional Information - Hint: Please attach here any additional required customer digital documentation.Current Task
25@@PSQuotationDocumentPS Quotation DocumentFileFalseAdditional Information - [New Field]Current Task
26
Selected Opportunities InformationSubtitle
New Section
27@@SUGARCRM_SELECTED_OPPORTUNITIESSelected OpportunitiesGridTrue
Previous Step
28
Contacts InformationSubtitle
New Section
29@@SUGARCRM_ACCOUNT_CONTACTSSUGARCRMGridTrueDisable / Contacts InformationCurrent Task
30
Select The Services The Customer Has Ordered
Subtitle
New Section
31@@Select_ServicesServices to be InvoicedGridFalseEditable - Allows to add new rows and delete themCurrent Task
32
Payment Plan / Invoice InformationSubtitle
New Section
33@@PaymentPlanGridPayment Plan / Invoice Information [new Field]GridFlaseEditable / Allow Adding or Deleting RowsCurrent Task
34
Invoice ByDatetimeFlasePayment Plan / Invoice Information Grid FieldCurrent Task
35
Payment Due DateDatetimeFlasePayment Plan / Invoice Information Grid FieldCurrent Task
36
Invoice CurrencyDropdownFlasePayment Plan / Invoice Information Grid FieldCurrent Task
37
Invoice AmountTextFlasePayment Plan / Invoice Information Grid FieldCurrent Task
38
Invoice NumberTextFlasePayment Plan / Invoice Information Grid FieldCurrent Task
39
Invoice DateDatetimeFlasePayment Plan / Invoice Information Grid FieldCurrent Task
40
Invoice Sent to the customer?DropdownFlasePayment Plan / Invoice Information Grid FieldCurrent Task
41
Invoice FileFileFalsePayment Plan / Invoice Information Grid FieldCurrent Task
42
Invoicing CommentsTextboxFalsePayment Plan / Invoice Information Grid FieldCurrent Task
43
Remarks / CommentsSubtitle
New Section
44@@Services_Internal_RemarksInternal Remarks / NotesText BoxFalseRemarks / CommentsCurrent Task
45@@Service_Start_DateContract Start DateDatetimeFalseRemarks / Comments - Hint: Enter the date that the customer would like to begin their servicesCurrent Task
46@@Service_End_DateContract End DateDatetimeFalseRemarks / Comments - Hint: In most cases, the end date should be 1 year from todayCurrent Task
47@@Signed_Contract_sent_checkCheckboxFalseRemarks / CommentsCurrent Task
48 DropdownFalse

Shows the users from Finance Group Remarks / Comments -

SELECT USR_UID, USR_FULLNAME FROM INVOICE_USERS

Current Task
49
IMPORTANT: Begin services before collecting payment?Label


50@@Invoiced_NowBegin services before collecting payment?DropdownFalseYes/No Options Remarks / Comments -
51
SubmitSubmit Button


ValidationCode
ONLOAD_JSvar dynaformOnload function(){
  
  pluginschk=document.getElementsByName('form[''CHK_PLUGIN' +'][]');
  for(in pluginschk){
    //console.log(pluginschk[j]);
    leimnud.event.add(pluginschk[j]'click'function(){if(this.checkedthis.checked=false;else this.checked=true;alert("Can't select a plugin directly");});
  }
  
  hideRowById("titlePg");
  hideRowById("CHK_PLUGIN");
  hideRowById("titleWorkflowbundle");
  hideRowById("workflowBundle");
  hideRowById("workflowBundleProcesses");
  
  hideRowById("titlePMSE");
  hideRowById("PMSE_MAX_ADMINS");
  hideRowById("PMSE_MAX_USERS");
  hideRowById("PMSE_TOTAL_USERS");
  hideRowById("PMSE_MAX_CASES");
  hideRowById("PMSE_BUSINESS_RULE");
  
  //contractSubtitle("titlePg");
  //contractSubtitle("workflowBundleProcesses");
  iRows Number_Rows_Grid('Select_Services','Service');
  for(var i=1i<=iRowsi++){
    addOnchangeService(i);
  }
  //console.log(getObject("Select_Services"));
  //console.log(getObject("Select_Services").countRows());
  getObject("Select_Services").onaddrow function(iRow){
    addOnchangeService(iRow);
  }
  function doNothing(){
    alert("don't click!");
  }
  function addOnchangeService(iRow){
    oAux=getGridField('Select_Services'iRow'Service');
    oAux.iRow=iRow;
    oAux1=getGridField('Select_Services'iRow'Service_Type');
    //console.log(oAux1);
    leimnud.event.add(oAux'change'function(){
      
      basedServiceAction();
      if(this.options[this.options.selectedIndex].value==&& 1==0){
        //alert("plugins dropdown "+ this.iRow);
        oAux1=getGridField('Select_Services'this.iRow'Service_Type');
        while oAux1.hasChildNodes(){
          oAux1.removeChild(oAux1.childNodes[0]);
        }
        pluginschk=document.getElementsByName('form[''CHK_PLUGIN' +'][]');
        oAux1.optionsoAux1.lengthnew Option(" -- Select a Plugin --",""  );
        for(in pluginschk){
          //console.log(pluginschk[j]);
          if(pluginschk[j].value){
            //alert(pluginschk[j].value);
            //alert(pluginschk[j].nextSibling.innerText);
            
            oAux1.optionsoAux1.lengthnew Option(pluginschk[j].nextSibling.innerText,pluginschk[j].value  );
            
          }
        }
        
        
      }
    });
    leimnud.event.add(oAux1'change'basedServiceTypeAction);
    basedServiceAction();
  }
  function basedServiceAction(){
    //alert("service asasasas");
    iRows Number_Rows_Grid('Select_Services','Service');
    sw_showOptions=false;
    sw_showOptionsPMSE=false;
    for(var i=1i<=iRowsi++){
      oAux=getGridField('Select_Services'i'Service');
      oAux1=getGridField('Select_Services'i'Service_Type');
      //console.log(oAux.options[oAux.options.selectedIndex].value);
      selectedOption oAux.options[oAux.options.selectedIndex].value;
      selectedOption1 oAux1.options[oAux1.options.selectedIndex].value;
      if((selectedOption == 1)||(selectedOption == 5)||(selectedOption == 6)||(selectedOption == 7)||(selectedOption == 9)){
        sw_showOptions=true;
      }
      if(sw_showOptions){
        showRowById("titlePg");
        showRowById("CHK_PLUGIN");
        showRowById("titleWorkflowbundle");
        showRowById("workflowBundle");
        showRowById("workflowBundleProcesses");
        //contractSubtitle("titlePg");
        //contractSubtitle("workflowBundleProcesses");
        }else{
        hideRowById("titlePg");
        hideRowById("CHK_PLUGIN");
        hideRowById("titleWorkflowbundle");
        hideRowById("workflowBundle");
        hideRowById("workflowBundleProcesses");
        //contractSubtitle("titlePg");
        //contractSubtitle("workflowBundleProcesses");
      }
      
      
      
      if((selectedOption == 10)||(selectedOption == 11)){
        sw_showOptionsPMSE=true;
      }
      
      if(sw_showOptionsPMSE){
        //showRowById("titlePMSE");
        //showRowById("PMSE_MAX_ADMINS");
        //showRowById("PMSE_MAX_USERS");
        //showRowById("PMSE_TOTAL_USERS");
        //showRowById("PMSE_MAX_CASES");
        //showRowById("PMSE_BUSINESS_RULE");
        }else{
        hideRowById("titlePMSE");
        hideRowById("PMSE_MAX_ADMINS");
        hideRowById("PMSE_MAX_USERS");
        hideRowById("PMSE_TOTAL_USERS");
        hideRowById("PMSE_MAX_CASES");
        hideRowById("PMSE_BUSINESS_RULE");
      }
      
      
    }
    
    
    
  }
  function basedServiceTypeAction(){
    //alert("type asasasas");
    iRows Number_Rows_Grid('Select_Services','Service');
    sw_showOptions=false;
    sw_showOptionsPMSE=false;
    for(var i=1i<=iRowsi++){
      oAux=getGridField('Select_Services'i'Service');
      oAux1=getGridField('Select_Services'i'Service_Type');
      selectedOption oAux.options[oAux.options.selectedIndex].value;
      selectedOptionType oAux1.options[oAux1.options.selectedIndex].value;
      if((selectedOption == 1)||(selectedOption == 5)||(selectedOption == 6)||(selectedOption == 9)){
        //alert("autocheck plan plugins");
        autoCheckPlugins(selectedOptionType);
      }
      if(selectedOption == 7){
        //alert("chekc plugin");
        //console.log(pluginsToCheck[h].PLUGIN_ID);
        pluginOption=getField("CHK_PLUGIN]["+selectedOptionType);
        //console.log(pluginOption);
        if(pluginOption){
          if(pluginOption.checked==true){
            alert("Selected plugin is alredy checked!");
            }else{
            pluginOption.checked=true;
          }
        }
      }
      //alert(selectedOptionType);
      
      // 37 = User Based
      // 38 = Case based
      // 39 = Partner
      // 40 = Rules Engine
      
      if(selectedOptionType == 37){
        showRowById("titlePMSE");
        showRowById("PMSE_MAX_ADMINS");
        showRowById("PMSE_MAX_USERS");
        showRowById("PMSE_TOTAL_USERS");
        hideRowById("PMSE_MAX_CASES");
        
        getField('PMSE_MAX_CASES').value=999000;
        //showRowById("PMSE_BUSINESS_RULE");
        
        getField('PMSE_MAX_ADMINS').readOnly false;
        getField('PMSE_MAX_USERS').readOnly false;
        
        getField("PMSE_MAX_ADMINS").style.backgroundColor "white";
        getField("PMSE_MAX_USERS").style.backgroundColor "white";
        
        //enableRequiredById('PMSE_MAX_ADMINS');
        //enableRequiredById('PMSE_MAX_USERS');
        
      }
      
      if(selectedOptionType == 38){
        showRowById("titlePMSE");
        hideRowById("PMSE_MAX_ADMINS");
        hideRowById("PMSE_MAX_USERS");
        hideRowById("PMSE_TOTAL_USERS");
        showRowById("PMSE_MAX_CASES");
        //showRowById("PMSE_BUSINESS_RULE");
        
        getField('PMSE_MAX_ADMINS').value=10;
        getField('PMSE_MAX_USERS').value=999000;
        
        
        getField('PMSE_MAX_CASES').readOnly false;
        getField("PMSE_MAX_CASES").style.backgroundColor "white";
        
      }
      
      if(selectedOptionType == 40){
        //showRowById("titlePMSE");
        //showRowById("PMSE_MAX_ADMINS");
        //showRowById("PMSE_MAX_USERS");
        //showRowById("PMSE_TOTAL_USERS");
        //showRowById("PMSE_MAX_CASES");
        showRowById("PMSE_BUSINESS_RULE");
        getField('PMSE_BUSINESS_RULE').value=1;
        
        }else{
        hideRowById("PMSE_BUSINESS_RULE");
        getField('PMSE_BUSINESS_RULE').value=0;
      }
      
      if(selectedOptionType == 39){
        showRowById("titlePMSE");
        showRowById("PMSE_MAX_ADMINS");
        showRowById("PMSE_MAX_USERS");
        showRowById("PMSE_TOTAL_USERS");
        showRowById("PMSE_MAX_CASES");
        showRowById("PMSE_BUSINESS_RULE");
        
        toReadOnly(getField('PMSE_MAX_ADMINS'));
        toReadOnly(getField('PMSE_MAX_USERS'));
        toReadOnly(getField('PMSE_TOTAL_USERS'));
        toReadOnly(getField('PMSE_MAX_CASES'));
        toReadOnly(getField('PMSE_BUSINESS_RULE'));
        
        getField('PMSE_MAX_ADMINS').value=1;
        getField('PMSE_MAX_USERS').value=4;
        getField('PMSE_TOTAL_USERS').value=5;
        getField('PMSE_MAX_CASES').value=1000;
        getField('PMSE_BUSINESS_RULE').value=1;
        
        
      }
      
      
      
      
    }
  }
  
  function autoCheckPlugins(serviceTypeId){
    //alert(serviceTypeId);
    var oRPC new leimnud.module.rpc.xmlhttp({
      urlbaseURLFunction()+'enterpriseCP/onboardingAjax.php',
      async:false,
      method:'POST',
      args:'action=getServiceTypePlugins&serviceType='+serviceTypeId
    });
    oRPC.make();
    //alert(oRPC.xmlhttp.responseText);
    pluginsToCheck=oRPC.xmlhttp.responseText.parseJSON();
    pluginschk=document.getElementsByName('form[''CHK_PLUGIN' +'][]');
    for(in pluginschk){
      //console.log(pluginschk[j]);
      pluginschk[j].checked=false;
    }
    //console.log(pluginsToCheck);
    for(in pluginsToCheck){
      //console.log(pluginsToCheck[h].PLUGIN_ID);
      pluginOption=getField("CHK_PLUGIN]["+pluginsToCheck[h].PLUGIN_ID);
      //console.log(pluginOption);
      if(pluginOptionpluginOption.checked=true;
    }
  }
  function baseURLFunction(){
    currentUrlArray=window.location.href.split("/");
    newURL="";
    if((currentUrlArray[0]=="http:")||(currentUrlArray[0]=="https:")){
      newURL=newURL+currentUrlArray[0]+"//";
      delete currentUrlArray[0];
      delete currentUrlArray[1];
    }
    countA=0;
    for(i=0;i<currentUrlArray.length;i++){
      if(currentUrlArray[i]){
        countA++;
        if(countA<5){
          newURL=newURL+currentUrlArray[i]+"/";
          //alert(currentUrlArray[i]);
        }
      }
      
    }
    
    return newURL;
  }
  
  
  
  
  //****************************************************
  function fnEnableOpportunity(mFiled){
    
    var newField mFiled.name;
    var nf newField.split("[");
    nf nf[2];
    nf nf.split("]");
    var nRow nf[0];
    
    
    if(getGridField("Select_Services"nRow"Renewal").value == '2' || getGridField("Select_Services"nRow"Renewal").value == '3' || getGridField("Select_Services"nRow"Renewal").value == '4'){
      getGridField("Select_Services"nRow"renewalOpportunities").disabled   false;
    }
    else{
      getGridField("Select_Services"nRow"renewalOpportunities").disabled   true;
      getGridField("Select_Services"nRow"renewalOpportunities").value "";
    }
    
    
  }
  
  function fnEnableExpected(mField){
    

    var newField mField.name;
    var nf newField.split("[");
    nf nf[2];
    nf nf.split("]");
    var nRow nf[0];
    
    if(getGridField("Select_Services"nRow"Service").value == '1' 
    || getGridField("Select_Services"nRow"Service").value == '5'
    || getGridField("Select_Services"nRow"Service").value == '6'
    || getGridField("Select_Services"nRow"Service").value == '7'
    || getGridField("Select_Services"nRow"Service").value == '9'){
      
      getGridField("Select_Services"nRow"SERVICE_RENEWAL_AMOUNT").disabled   false;
      getGridField("Select_Services"nRow"SERVICE_RENEWAL_AMOUNT").value getGridField("Select_Services"nRow"Service_SubTotal").value;
    }
    else{
      getGridField("Select_Services"nRow"SERVICE_RENEWAL_AMOUNT").disabled   true;
      getGridField("Select_Services"nRow"SERVICE_RENEWAL_AMOUNT").value "";
    }
  }
  
  
  
  
  var totalRows Number_Rows_Grid("Select_Services""Renewal");
  for(var i=1i<=totalRowsi++){
    
    getGridField("Select_Services"i"Service").addEventListener("change"function()fnEnableExpected(this)});
    
    getGridField("Select_Services"i"Renewal").addEventListener("change"function()fnEnableOpportunity(this)});
    getGridField("Select_Services"i"renewalOpportunities").disabled   true;
  }
  
  function validateDate(field){
    //alert(field);
    var date1 document.getElementById(field).value;
    date1 date1.split("-");
    
    var sDate new Date(date1[0]+"/"+date1[1]+"/"+date1[2]);
    var sDay sDate.toString().split(" ");
    sDay sDay[0];
    
    if(sDay == 'Sat' || sDay == 'Sun'){
      alert("Weekends are not allowed for selection");
      document.getElementById(field).value "";
    }
  };
  
    document.getElementById("form[Service_Start_Date]").addEventListener("change"function(){validateDate("form[Service_Start_Date]")});
  document.getElementById("form[Service_End_Date]").addEventListener("change"function(){validateDate("form[Service_End_Date]")});
  
  /*var rows = Number_Rows_Grid("Select_Services", "SERVICE_REAL_START_DATE");
  for(var i=1; i<=rows; i++){

    window["fieldStart" + i] = "form[Select_Services][" + i + "][SERVICE_REAL_START_DATE]";
    window["fieldEnd"+i] = "form[Select_Services][" + i + "][SERVICE_REAL_END_DATE]";
    document.getElementById(this["fieldStart"+i]).addEventListener("change", function(){validateDate(this["fieldStart"+i])});
    document.getElementById(this["fieldEnd"+i]).addEventListener("change", function(){validateDate(this["fieldEnd"+i])});
  }*/
  
}


Step RoutingNext TaskRouting RuleConditionsNotes

Invoice CustomerAlways goes to Invoice Customer as long as the user is authenticated (question)(1==1) && (@@sw_user_sugar==true)

Professional Services WelcomeThe Sales Executive selected a service as a “Professional Services”.(@@sw_professional_services==true) && (@@sw_user_sugar==true)

Support RegistrationThe Sales Executive selected a service as a “Support Services”. (@@sw_support==true) && (@@sw_user_sugar==true)


Task 2.1. Create Invoice
UsersFinance Group
Assignment RuleValue Base Assignment: User selected in the variable @@FinanceUsertoAssign
DurationPENDING


Step 1.

  • Name: Create Invoice
  • Type: Dynaform

Field NameLabelData TypeRead OnlyDescriptionSource
1@@AccountExecutiveAccount ExecutiveTextTrueDisable / Sales Manager who started the processRegister Sale Task
2
Customer Invoicing InformationSubtitle
New Section
3@@CustomerCompanyNameCompany NameTextTrueDisable / Customer Invoicing InformationSUGARCRM
4@@CustomerFirstNameFirst NameTextTrueDisable / Customer Invoicing InformationSUGARCRM
5@@CustomerLastNameLast NameTextTrueDisable / Customer Invoicing InformationSUGARCRM
6@@CustomerEmailEmail AddressTextTrueDisable / Customer Invoicing InformationSUGARCRM
7@@CustomerAddress1Address Line 1TextTrueDisable / Customer Invoicing InformationSUGARCRM
8@@CustomerAddress2Address Line 2TextTrueDisable / Customer Invoicing InformationSUGARCRM
9@@CustomerCityCityTextTrueDisable / Customer Invoicing InformationSUGARCRM
10@@CustomerStateStateTextTrueDisable / Customer Invoicing InformationSUGARCRM
11@@CustomerPostCodeZip / Postal CodeTextTrueDisable / Customer Invoicing InformationSUGARCRM
12@@CustomerCountryCountryTextTrueDisable / Customer Invoicing InformationSUGARCRM
13@@CustomerWorkPhoneWork Phone NumberTextTrueDisable / Customer Invoicing InformationSUGARCRM
14@@CustomerCellphoneCellphone NumberTextTrueDisable / Customer Invoicing InformationSUGARCRM
15@@CustomerFaxFaxTextTrueDisable / Customer Invoicing InformationSUGARCRM
16@@SalesInternalRemarksInternal Remarks / NotesText BoxTrueDisable / Customer Invoicing InformationRegister Sale Task
17
Contacts InformationSubtitle
New Section
18@@ContactsGridSUGARCRMGridTrueDisable / Contacts InformationRegister Sale Task
19
Invoicee InformationSubtitle
New Section
20@@InvoiceeInvoiceeTextTrueDisable / Invoicee InformationRegister Sale Task
21
Services to be InvoicedSubtitle
New Section
22@@ServicesGridServices to be InvoicedGridTrueDisableRegister Sale Task
23
Payment Plan / Invoice InformationSubtitle
New Section
24@@PaymentPlanGridPayment Plan / Invoice InformationGridFlaseEditable / Do not allow Adding or Deleting RowsRegister Sale Task
25
Invoice ByDatetimeTruePayment Plan / Invoice Information Grid FieldRegister Sale Task
26
Payment Due DateDatetimeTruePayment Plan / Invoice Information Grid FieldRegister Sale Task
27
Invoice CurrencyDropdownTruePayment Plan / Invoice Information Grid FieldRegister Sale Task
28
Invoice AmountTextTruePayment Plan / Invoice Information Grid FieldRegister Sale Task
29
Invoice NumberTextFlasePayment Plan / Invoice Information Grid FieldCurrent Task
30
Invoice DateDatetimeFlasePayment Plan / Invoice Information Grid FieldCurrent Task
31
Invoice Sent to the customer?DropdownFlasePayment Plan / Invoice Information Grid FieldCurrent Task
32
Invoice FileFileFalsePayment Plan / Invoice Information Grid FieldCurrent Task
33
Invoicing CommentsTextboxFalsePayment Plan / Invoice Information Grid FieldCurrent Task
34
Additional Information / NotesSubtitle
New Section
35@@CustomerOrderFileCustomer Order FormFileTrueView / Additional InformationRegister Sale Task
36@@CustomerSupportFilesAdditional Customer DocumentationMultiple FileTrueView / Additional InformationRegister Sale Task
37@@SpecialRequestAdditional Information / Special RequestsText BoxTrueDisable / Additional InformationRegister Sale Task
38@@CustomerPONumberCustomer PO Number (If given)TextFalseEditable / Additional InformationRegister Sale Task
39@@ServiceStartDateService Start DateDatetimeTrueDisable / Additional InformationRegister Sale Task
40@@ServiceEndDateService End DateDatetimeTrueDisable / Additional InformationRegister Sale Task
41
ActionsSubtitle
New Section
42@@SalesApproveInvoiceApprove Invoice?DropdownFalseYes / No - optionsCurrent Task
43@@SalesApproveCommentsApproval / Rejection CommentsTextboxFalse
Current Task
44
SubmitSubmit Button



Step RoutingNext TaskRouting RuleConditionsNotes

Send and Collect InvoiceInvoice Approved?@@SalesApproveInvoice == "Yes"

Create InvoiceInvoice Approved?@@SalesApproveInvoice == "No"


Finance - Task 2.1: Create Invoice

Task 2.1. Create Invoice
UsersFinance Group
Assignment RuleValue Base Assignment: User selected in the variable @@FinanceUsertoAssign
DurationPENDING


Step 1.

  • Name: Create Invoice
  • Type: Dynaform

Field NameLabelData TypeRead OnlyDescriptionSource
1@@AccountExecutiveAccount ExecutiveTextTrueDisable / Sales Manager who started the processRegister Sale Task
2
Customer Invoicing InformationSubtitle
New Section
3@@CustomerCompanyNameCompany NameTextTrueDisable / Customer Invoicing InformationSUGARCRM
4@@CustomerFirstNameFirst NameTextTrueDisable / Customer Invoicing InformationSUGARCRM
5@@CustomerLastNameLast NameTextTrueDisable / Customer Invoicing InformationSUGARCRM
6@@CustomerEmailEmail AddressTextTrueDisable / Customer Invoicing InformationSUGARCRM
7@@CustomerAddress1Address Line 1TextTrueDisable / Customer Invoicing InformationSUGARCRM
8@@CustomerAddress2Address Line 2TextTrueDisable / Customer Invoicing InformationSUGARCRM
9@@CustomerCityCityTextTrueDisable / Customer Invoicing InformationSUGARCRM
10@@CustomerStateStateTextTrueDisable / Customer Invoicing InformationSUGARCRM
11@@CustomerPostCodeZip / Postal CodeTextTrueDisable / Customer Invoicing InformationSUGARCRM
12@@CustomerCountryCountryTextTrueDisable / Customer Invoicing InformationSUGARCRM
13@@CustomerWorkPhoneWork Phone NumberTextTrueDisable / Customer Invoicing InformationSUGARCRM
14@@CustomerCellphoneCellphone NumberTextTrueDisable / Customer Invoicing InformationSUGARCRM
15@@CustomerFaxFaxTextTrueDisable / Customer Invoicing InformationSUGARCRM
16@@SalesInternalRemarksInternal Remarks / NotesText BoxTrueDisable / Customer Invoicing InformationRegister Sale Task
17
Contacts InformationSubtitle
New Section
18@@ContactsGridSUGARCRMGridTrueDisable / Contacts InformationRegister Sale Task
19
Invoicee InformationSubtitle
New Section
20@@InvoiceeInvoiceeTextTrueDisable / Invoicee InformationRegister Sale Task
21
Services to be InvoicedSubtitle
New Section
22@@ServicesGridServices to be InvoicedGridTrueDisableRegister Sale Task
23
Payment Plan / Invoice InformationSubtitle
New Section
24@@PaymentPlanGridPayment Plan / Invoice InformationGridFlaseEditable / Do not allow Adding or Deleting RowsRegister Sale Task
25
Invoice ByDatetimeTruePayment Plan / Invoice Information Grid FieldRegister Sale Task
26
Payment Due DateDatetimeTruePayment Plan / Invoice Information Grid FieldRegister Sale Task
27
Invoice CurrencyDropdownTruePayment Plan / Invoice Information Grid FieldRegister Sale Task
28
Invoice AmountTextTruePayment Plan / Invoice Information Grid FieldRegister Sale Task
29
Invoice NumberTextFlasePayment Plan / Invoice Information Grid FieldCurrent Task
30
Invoice DateDatetimeFlasePayment Plan / Invoice Information Grid FieldCurrent Task
31
Invoice Sent to the customer?DropdownFlasePayment Plan / Invoice Information Grid FieldCurrent Task
32
Invoice FileFileFalsePayment Plan / Invoice Information Grid FieldCurrent Task
33
Invoicing CommentsTextboxFalsePayment Plan / Invoice Information Grid FieldCurrent Task
34
Additional Information / NotesSubtitle
New Section
35@@CustomerOrderFileCustomer Order FormFileTrueView / Additional InformationRegister Sale Task
36@@CustomerSupportFilesAdditional Customer DocumentationMultiple FileTrueView / Additional InformationRegister Sale Task
37@@SpecialRequestAdditional Information / Special RequestsText BoxTrueDisable / Additional InformationRegister Sale Task
38@@CustomerPONumberCustomer PO Number (If given)TextFalseEditable / Additional InformationRegister Sale Task
39@@ServiceStartDateService Start DateDatetimeTrueDisable / Additional InformationRegister Sale Task
40@@ServiceEndDateService End DateDatetimeTrueDisable / Additional InformationRegister Sale Task
41
SubmitSubmit Button



Step RoutingNext TaskRouting RuleConditionsNotes

Review InvoiceSingle Sequence FlowN/A



Finance - Task 2.2: Send and Collect Invoice

Task 2.2. Send and Collect Invoice
UsersFinance Group
Assignment RuleValue Base Assignment: User selected in the variable @@FinanceUsertoAssign
DurationPENDING


Step 1.

  • Name: Send and Collect Invoice
  • Type: Dynaform

Field NameLabelData TypeRead OnlyDescriptionSource
1@@AccountExecutiveAccount ExecutiveTextTrueDisable / Sales Manager who started the processRegister Sale Task
2
Customer Invoicing InformationSubtitleTrueNew Section
3@@CustomerCompanyNameCompany NameTextTrueDisable / Customer Invoicing InformationSUGARCRM
4@@CustomerFirstNameFirst NameTextTrueDisable / Customer Invoicing InformationSUGARCRM
5@@CustomerLastNameLast NameTextTrueDisable / Customer Invoicing InformationSUGARCRM
6@@CustomerEmailEmail AddressTextTrueDisable / Customer Invoicing InformationSUGARCRM
7@@CustomerAddress1Address Line 1TextTrueDisable / Customer Invoicing InformationSUGARCRM
8@@CustomerAddress2Address Line 2TextTrueDisable / Customer Invoicing InformationSUGARCRM
9@@CustomerCityCityTextTrueDisable / Customer Invoicing InformationSUGARCRM
10@@CustomerStateStateTextTrueDisable / Customer Invoicing InformationSUGARCRM
11@@CustomerPostCodeZip / Postal CodeTextTrueDisable / Customer Invoicing InformationSUGARCRM
12@@CustomerCountryCountryTextTrueDisable / Customer Invoicing InformationSUGARCRM
13@@CustomerWorkPhoneWork Phone NumberTextTrueDisable / Customer Invoicing InformationSUGARCRM
14@@CustomerCellphoneCellphone NumberTextTrueDisable / Customer Invoicing InformationSUGARCRM
15@@CustomerFaxFaxTextTrueDisable / Customer Invoicing InformationSUGARCRM
16@@SalesInternalRemarksInternal Remarks / NotesText BoxTrueDisable / Customer Invoicing InformationRegister Sale Task
17
Contacts InformationSubtitle
New Section
18@@ContactsGridSUGARCRMGridTrueDisable / Contacts InformationRegister Sale Task
19
Invoicee InformationSubtitle
New Section
20@@InvoiceeInvoiceeTextTrueDisable / Invoicee InformationRegister Sale Task
21
Services to be InvoicedSubtitle
New Section
22@@ServicesGridServices to be InvoicedGridTrueDisableRegister Sale Task
23
Payment Plan / Invoice InformationSubtitle
New Section
24@@PaymentPlanGridPayment Plan / Invoice InformationGridFlaseEditable / Do not allow Adding or Deleting RowsRegister Sale Task
25
Invoice ByDatetimeTruePayment Plan / Invoice Information Grid FieldRegister Sale Task
26
Payment Due DateDatetimeTruePayment Plan / Invoice Information Grid FieldRegister Sale Task
27
Invoice CurrencyDropdownTruePayment Plan / Invoice Information Grid FieldRegister Sale Task
28
Invoice AmountTextTruePayment Plan / Invoice Information Grid FieldRegister Sale Task
29
Invoice NumberTextFlasePayment Plan / Invoice Information Grid FieldCurrent Task
30
Invoice DateDatetimeFlasePayment Plan / Invoice Information Grid FieldCurrent Task
31
Invoice Sent to the customer?DropdownFlasePayment Plan / Invoice Information Grid FieldCurrent Task
32
Invoice FileFileFalsePayment Plan / Invoice Information Grid FieldCurrent Task
33
Invoicing CommentsTextboxFalsePayment Plan / Invoice Information Grid FieldCurrent Task
34
Payment Collected?DropdownFalsePayment Plan / Invoice Information Grid FieldCurrent Task
35
Collection CommentsTextboxFalsePayment Plan / Invoice Information Grid FieldCurrent Task
36
Additional Information / NotesSubtitle
New Section
37@@CustomerOrderFileCustomer Order FormFileTrueView / Additional InformationRegister Sale Task
38@@CustomerSupportFilesAdditional Customer DocumentationMultiple FileTrueView / Additional InformationRegister Sale Task
39@@SpecialRequestAdditional Information / Special RequestsText BoxTrueDisable / Additional InformationRegister Sale Task
40@@CustomerPONumberCustomer PO Number (If given)TextFalseEditable / Additional InformationRegister Sale Task
41@@ServiceStartDateService Start DateDatetimeTrueDisable / Additional InformationRegister Sale Task
42@@ServiceEndDateService End DateDatetimeTrueDisable / Additional InformationRegister Sale Task
43
Crediting optionsSubtitle
New Section
44@@FinanceCreditedCaseDropdownFalseCrediting OptionsCurrent Task
45@@FinanceCreditedFileCredit FileFileFalse

Dependable Field / Credit Options @@FinanceCreditedCase=="Yes"

Current Task
46@@FinanceCreditedRemarksCrediting RemarksTextboxFalseDependable Field / Credit Options @@FinanceCreditedCase=="Yes"Current Task
47
SubmitSubmit Button



Step 2.

  • Name: PaymentsCollected
  • Type: Trigger


Step 2Name: PaymentsCollectedType: Trigger

Reads the grid @@PaymentPlanGrid ensuring that all the invoices has been sent and all the payments has been collected. As a result will set a variable flag called @@AllPaymentsCollected with the "Yes" value if all the rows from the grid of @@PaymentPlanGrid meets the requirements.

In case that any Invoice Payment in the Grid @@PaymentPlanGrid is pending to be collected, this trigger will save the submitted data, set the variable @@AllPaymentsCollected as "No" and re-open the Step 1.This will be happening cyclically until all the payments have been collected.


Step RoutingNext TaskRouting RuleConditionsNotes

Cancel CaseInvoice has been Credited?@@FinanceCreditedCase=="Yes"

Sales Follow UpInvoice has been Credited?@@FinanceCreditedCase=="No" && @@AllPaymentsCollected=="Yes"

Support - Task 3.1: Support Registration

Task 3 Support Registration
UsersSupport Group
Assignment RulePENDING
DurationPENDING


Step 1.

  • Name: Support Starter
  • Type: Dynaform

Field NameLabelData TypeRead OnlyDescriptionSource
1@@AccountExecutiveAccount ExecutiveTextTrueDisable / Sales Manager who started the processRegister Sale Task
2
New Support Customer Subtitle
New Section
3@@CustomerCompanyNameCompany NameTextTrueDisable / New Support CustomerSUGARCRM
4@@CustomerFirstNameContact Person First NameTextTrueDisable / New Support CustomerSUGARCRM
5@@CustomerLastNameContact Person Last NameTextTrueDisable / New Support CustomerSUGARCRM
6@@CustomerWorkPhoneWork Phone NumberTextTrueDisable / New Support CustomerSUGARCRM
7@@CustomerCellphoneCellphone NumberTextTrueDisable / New Support CustomerSUGARCRM
8@@CustomerEmailEmail AddressTextTrueDisable / New Support CustomerSUGARCRM
9@@CustomerCityCityTextTrueDisable / New Support CustomerSUGARCRM
10@@CustomerCountryCountryTextTrueDisable / New Support CustomerSUGARCRM
11
Technical Person Contact InformationLabel


12@@CustomerTechFirstNameFirst NameTextTrueDisable / New Support CustomerSUGARCRM
13@@CustomerTechLastNameLast NameTextTrueDisable / New Support CustomerSUGARCRM
14@@CustomerTechEmailEmail AddressTextTrueDisable / New Support CustomerSUGARCRM
15@@CustomerTechWorkPhoneWork Phone NumberTextTrueDisable / New Support CustomerSUGARCRM
16@@CustomerTechCellphoneCellphone NumberTextTrueDisable / New Support CustomerSUGARCRM
17@@CustomerTechTimeZoneCustomer Time ZoneTextTrueDisable / New Support CustomerSUGARCRM
18@@ServicesGridServices Purchased: Please note the level of support based on the Subscription purchasedGridTrueDisable / New Support CustomerRegister Sale Task
19
Opportunities InformationSubtitle
New Section
20@@OpportunitiesGridGridGridTrueDisable / Opportunities InformationRegister Sale Task
21@@CustomerOrderFileCustomer Order FormFileTrueView / Opportunities InformationRegister Sale Task
22
Workflow Bundle InformationSubtitle
New Section
23@@WorkflowBundleWorkflow BundleDropdownTrueDisable / Workflow Bundle Information PENDINGRegister Sale Task
24@@ProcessesProcessesText BoxTrueDisable / Workflow Bundle Information PENDINGRegister Sale Task
25
Contacts InformationSubtitle
New Section
26@@ContactsGridSUGARCRMGridTrueDisable / Contacts InformationRegister Sale Task
27@@NewContactsGridAdditionalGridFalseEditable / Contacts InformationCurrent Task
28
Support ActionsSubtitle
New Section
29@@SalesInternalRemarksInternal Remarks / NotesText BoxTrueDisable / Support ActionsRegister Sale Task
30@@ServiceStartDateService Start DateDatetimeTrueDisable / Support ActionsRegister Sale Task
31@@ServiceEndDateService End DateDatetimeTrueDisable / Support ActionsRegister Sale Task
32@@SupportSpreadsheetUpdatedIs the Support customer spreadsheet updated?DropdownFalseEditable / Support ActionsCurrent Task
33@@CaseIDCase IDTextTrueDisable / Support ActionsSystem PENDING
34@@SupportCommentsComments from Support TeamText BoxFalseEditable / Support ActionsCurrent Task
35
Welcome EmailSubtitle
New Section
36

@@UserFirstName

User First NameTextFalseWelcome EmailCurrent Task
37@@MantisSupportProjectNameMantis Support Project NameTextFalseWelcome EmailCurrent Task
38@@MantisUsernameMantis UsernameTextFalseWelcome EmailCurrent Task
39@@MantisUserEmailMantis User EmailTextFalseWelcome EmailCurrent Task
40@@WorkspaceURLWorkspace URLTextFalseWelcome EmailCurrent Task
41@@WorkspaceUsernameWorkspace UsernameTextFalseWelcome EmailCurrent Task
42@@WorkspacePasswordWorkspace PasswordTextFalseWelcome EmailCurrent Task
43@@SandboxURLSandbox URLTextFalseWelcome EmailCurrent Task
44@@SandboxUsernameSandbox UsernameTextFalseWelcome EmailCurrent Task
45@@SandboxPasswordSandbox PasswordTextFalseWelcome EmailCurrent Task
46@@UniversityUsernameUniversity UsernameTextFalseWelcome EmailCurrent Task
47@@UniversityPasswordUniversity PasswordTextFalseWelcome EmailCurrent Task
48





49
SubmitSubmit Button



Step 2.

  • Name: SendWelcomeSupportEmail
  • Type: Trigger


Step 2Name: SendWelcomeSupportEmailType: Trigger

Creates a new email using the following "Support Welcome Email Template".


Support Welcome Email Template



Hello {@@UserFirstName},

Thank you for choosing ProcessMaker for your BPM needs. We are confident that you will be very satisfied with the services that we offer. The information enclosed below will help you make the most of our services. If you have any questions, please contact us. 

We would also like to draw your attention to the following additional support sites : 
  • Community Forum - where you can become a member of our Community.
  • Documentation - where you can find up to date Documentation on ProcessMaker's features.
  • Blog and News Home - where you can find the latest news from ProcessMaker.

If your purchase features a support contract, then you may contact our support team on +1 (617) 340-3377, option 2.  Please be ready to state your name and company name when you call.

As your needs change, we will be happy to help you evaluate those needs and offer you the services that will help you achieve your new goals. 

Again, thank you for choosing ProcessMaker, we’re looking forward to working with you!


Summary Of Services Purchased 
Your Private Support Project has been created on our Support Portal under {@@MantisSupportProjectName}

Please use http://bugs.processmaker.com as the primary tool to report Support Tickets. You will also receive an automated email from our bug tracker (Mantis) to set up your password(s).

The credentials to access the Support Portal are:
  • username: {@@MantisUsername}
  • email: {@@MantisUserEmail}

In order to access the Production workspace, you need to:
  1. Go to {@@WorkspaceURL}
  2. Select the interface language.
  3. Login:
    1. Username: {@@WorkspaceUsername}
    2. Password:  {@@WorkspacePassword}
  4. Start testing ProcessMaker online.

In order to access the Sandbox testing workspace, you need to: 
  1. Go to {@@SandboxURL}
  2. Select the interface language.
  3. Login:
    1. Username: {@@SandboxUsername}
    2. Password:  {@@SandboxPassword}
  4. Start testing ProcessMaker online.

Should you have any questions about accessing the Sandbox Workspace, please do not hesitate to contact us at the support number provided.

You can download the ProcessMaker Advanced Workflow bundle from the following link : 

In order to access the included ProcessMaker Video Bootcamp online training course, please use the following credentials: 

Kind Regards,

The ProcessMaker Support Team


Step RoutingNext TaskRouting RuleConditionsNotes

Sales Follow UpSingle Sequence FlowN/A

Professional Services - Task 4.1: Professional Services Welcome

Task 4.1. Professional Services Welcome
UsersProfessional Services Group
Assignment RuleCyclical Assigment
DurationPENDING


Step 1.

  • Name: Professional Services Welcome
  • Type: Dynaform

Field NameLabelData TypeRead OnlyDescriptionSource
1@@AccountExecutiveAccount ExecutiveTextTrueDisable / Sales Manager who started the processRegister Sale Task
2
New Professional Services Customer
Subtitle
New Section
3@@CustomerCompanyNameCompany NameTextTrueDisable / New Professional Services CustomerSUGARCRM
4@@CustomerFirstNameContact Person First NameTextTrueDisable / New Professional Services CustomerSUGARCRM
5@@CustomerLastNameContact Person Last NameTextTrueDisable / New Professional Services CustomerSUGARCRM
6@@CustomerWorkPhoneWork Phone NumberTextTrueDisable / New Professional Services CustomerSUGARCRM
7@@CustomerCellphoneCellphone NumberTextTrueDisable / New Professional Services CustomerSUGARCRM
8@@CustomerAddress1Address Line 1TextTrueDisable / New Professional Services CustomerSUGARCRM
9@@CustomerEmailEmail AddressTextTrueDisable / New Professional Services CustomerSUGARCRM
10@@CustomerWebsiteWebsiteTextTrueDisable / New Professional Services CustomerSUGARCRM
11@@CustomerCityCityTextTrueDisable / New Professional Services CustomerSUGARCRM
12@@CustomerStateStateTextTrueDisable / New Professional Services CustomerSUGARCRM
13@@CustomerCountryCountryTextTrueDisable / New Professional Services CustomerSUGARCRM
14
Technical Person Contact InformationLabel


15@@CustomerTechFirstNameFirst NameTextTrueDisable / New Professional Services CustomerSUGARCRM
16@@CustomerTechLastNameLast NameTextTrueDisable / New Professional Services CustomerSUGARCRM
17@@CustomerTechEmailEmail AddressTextTrueDisable / New Professional Services CustomerSUGARCRM
18@@CustomerTechWorkPhoneWork Phone NumberTextTrueDisable / New Professional Services CustomerSUGARCRM
19@@CustomerTechCellphoneCellphone NumberTextTrueDisable / New Professional Services CustomerSUGARCRM
20@@CustomerTechTimeZoneCustomer Time ZoneTextTrueDisable / New Professional Services CustomerSUGARCRM
21@@ServicesGridServices Purchased:GridTrueDisable / New Professional Services CustomerRegister Sale Task
22@@PaymentPlanGridPayment Plan / Invoice InformationGridTrueDisable / New Professional Services CustomerRegister Sale Task
23@@SalesInternalRemarksInternal Remarks / NotesText BoxTrueDisable / New Professional Services CustomerRegister Sale Task
24@@PSDesiredStartDateDesired Project Start DateDatetimeTrueDisable / New Professional Services CustomerRegister Sale Task
25@@ContractStartDateContract Start DateDatetimeTrueDisable / New Professional Services CustomerRegister Sale Task
26@@ContractEndDateContract End DateDatetimeTrueDisable / New Professional Services CustomerRegister Sale Task
27@@CustomerOrderFileCustomer Order FormFileTrueDisable / New Professional Services CustomerRegister Sale Task
28@@PSQuotationFileProfessional Services QuotationFileTrueDisable / New Professional Services CustomerRegister Sale Task
29@@PSInfoForwardedInformation forwarded to PSCheckGroupTrueDisable / New Professional Services CustomerRegister Sale Task
30
Workflow Bundle InformationSubtitle
New Section
31@@WorkflowBundleWorkflow BundleDropdownTrueDisable / Workflow Bundle Information PENDINGRegister Sale Task
32@@ProcessesProcessesText BoxTrueDisable / Workflow Bundle Information PENDINGRegister Sale Task
33
Contacts InformationSubtitle
New Section
34@@ContactsGridSUGARCRMGridTrueDisable / Contacts InformationRegister Sale Task
35@@NewContactsGridAdditionalGridFalseEditable / Contacts InformationCurrent Task
36
Proffesional Services ActionsSubtitle
New Section
37@@PSRegisterBasecampDropdown yes/noFalseRequired / Proffesional Services ActionsCurrent Task
38@@PSRecurrentOrChangeDropdown yes/noFalseDisable / Proffesional Services ActionsCurrent Task
39@@PSWelcomeEmailWelcome Email Sent?Dropdown yes/noFalseDisable / Proffesional Services ActionsCurrent Task
40@@PSCommentsComments from ProjectsText BoxFalseDisable / Proffesional Services ActionsCurrent Task
41
SubmitSubmit Button




Step RoutingNext TaskRouting RuleConditionsNotes

Sales Follow UpSingle Sequence FlowN/A

PLUG INS AND ADDITIONAL PROGRAMMING REQUIREMENTS 

Plug InDescriptionSpecifications




REPORTS

Report NameDescription
Pending to define with Stake Holders


PROJECT TEAM AND STAKEHOLDERS

Team MemberFunctions
John Lozano

BA - Technical and Functional Consultant / Developer

Juan Carlos YujraBA - Technical and Functional Consultant / Developer
Ethan PresbergProject Manager
John Paul MartinSales Onboarding Stakeholder
Adolfo LangProfessional Services Department Stakeholder / Sales Onboarding Stakeholder
Alex ValdiviesoSales Department Stakeholder
Arturo RoblesSupport Department Stakeholder
Michelle JohnsonFinance Department Stakeholder



REQUIREMENTS FOR START

  • Define Reports
  • Validate changes with the Sales Executive
  • Revision
  • Approval of the SOW

PROJECT AND COMMUNICATION PLAN

Project Plan
ActivityDescriptionStartEndWork Load
User Configuration

Create Users

Create and configure Groups

Create Roles that may require more time



Process Elements Configuration

Define Tasks and rules

Set up permissions

Other Process attributes



PM Configuration

Define plugins that will be needed

Other plugins



DynaformsCreate Process Dynaforms


Input Documents

Financial Invoices inputFiles

Sales Opportunity Support inputFiles

Professional Services Input Files




Output DocumentsWelcome Support Email Template


Triggers

Business rules checks

Forms Java Script



ReportingPending to define







Communication Plan

Weekly Meeting Proposed time
Thursday9:00 amEST
Second meeting (Optional)Monday4:00 pmEST




@@sugarUserName