Table Scripting: Difference between revisions

From Sage CRM Knowledge Base
No edit summary
No edit summary
Line 17: Line 17:


----
----
function InsertRecord()
{
  // Handle insert record actions here
}
var m_subject="";
var m_message="";
function PostInsertRecord()
{
//pre- 7.0
//var personTable="person";
var personTable="person,vPersonPE";
  var case_sql="select * from vsummarycase (nolock) where "+WhereClause;
  var case_rec=CRM.CreateQueryObj(case_sql);
  case_rec.SelectSQL();
 
  m_subject="New Case Created: #Cases:"+case_rec("case_referenceid")+"#";
  m_body=case_rec("case_description");
 
  if (case_rec("comp_customertypeit")=="Y")
  {
    var user_where="";
    if (case_rec("comp_itemployee1")+""!="undefined")
    {
        user_where+="user_userid=" + case_rec("comp_itemployee1");
    }
    if (case_rec("comp_itsecondary")+""!="undefined")
    {
        if (user_where!="")
          user_where+=" or ";
        user_where+="user_userid=" + case_rec("comp_itsecondary");
    }
    if (user_where=="")
      user_where="1=2";
    var userRecord = CRM.FindRecord("users",user_where);
    while (userRecord.eof==false)
    {
          sendEmail(userRecord("user_emailaddress"),userRecord("user_firstname")+ " "+userRecord("user_lastname"));
          userRecord.NextRecord();
    }
  }else
  if (case_rec("comp_customertypesage")=="Y")
  {
    var user_where="";
    if (case_rec("comp_sageprimary")+""!="undefined")
    {
        user_where+="user_userid=" + case_rec("comp_sageprimary");
    }           
    if (case_rec("comp_sagesecondary")+""!="undefined")
    {
        if (user_where!="")
          user_where+=" or ";
        user_where+="user_userid=" + case_rec("comp_sagesecondary");
    } 
    if (user_where=="")
      user_where="1=2";   
    var userRecord = CRM.FindRecord("users",user_where);
    while (userRecord.eof==false)
    {
          sendEmail(userRecord("user_emailaddress"),userRecord("user_firstname")+ " "+userRecord("user_lastname"));
          userRecord.NextRecord();
    }
  }
     
}
function sendEmail(email1, name1)
{
  ErrorStr+=email1+":"+name1+":" +m_subject+m_body+"=====";
  return;
  var myMailObject = CRM.GetBlock("messageblock");
  with (myMailObject)
  {
    DisplayForm = false;
    mSubject = m_subject;
    mBody = m_message;
    mShowCC = true;
    mShowBCC = true;
    AddRecipient(email1,name1,"TO");
    Mode=2; 
    Execute();
   
    if (mSentOK)
    {
      ErrorStr = "Email Sent";
    } 
    else 
    {
      ErrorStr = "There has been a problem:  "+mErrorMessage;
    }
  }
}
function UpdateRecord()
{
  // Handle update record actions here
}
function DeleteRecord()
{
  // Handle delete record actions here
}

Revision as of 10:56, 15 November 2012


This sample shows you how to check if the field has been changed from one value to another

 function UpdateRecord()
 {
   if (Values("case_AssignedUserId")+""=="undefined")
     return;  //bad update from crm..or field not changed
   var CaseRec=CRM.CreateQueryObj("SELECT * FROM Cases WITH (NOLOCK) WHERE " + WhereClause);
   CaseRec.SelectSQL();
   if (CaseRec("case_assigneduserid")!=Values("Case_AssignedUserId"))
   {
     ErrorStr="field value has changed from "+CaseRec("case_assigneduserid") +" to "+Values("Case_AssignedUserId");
   }
 }




function InsertRecord() {

 // Handle insert record actions here

}

var m_subject=""; var m_message=""; function PostInsertRecord() { //pre- 7.0 //var personTable="person";

var personTable="person,vPersonPE";

 var case_sql="select * from vsummarycase (nolock) where "+WhereClause;
 var case_rec=CRM.CreateQueryObj(case_sql);
 case_rec.SelectSQL();
 
 m_subject="New Case Created: #Cases:"+case_rec("case_referenceid")+"#";
 m_body=case_rec("case_description");
 
 if (case_rec("comp_customertypeit")=="Y")
 {
    var user_where="";
    if (case_rec("comp_itemployee1")+""!="undefined")
    {
        user_where+="user_userid=" + case_rec("comp_itemployee1");
    }
    if (case_rec("comp_itsecondary")+""!="undefined")
    {
        if (user_where!="")
          user_where+=" or ";
        user_where+="user_userid=" + case_rec("comp_itsecondary");
    }
    if (user_where=="")
      user_where="1=2";
    var userRecord = CRM.FindRecord("users",user_where);
    while (userRecord.eof==false)
    {
         sendEmail(userRecord("user_emailaddress"),userRecord("user_firstname")+ " "+userRecord("user_lastname"));
         userRecord.NextRecord();
    }
 }else
 if (case_rec("comp_customertypesage")=="Y")
 {
    var user_where="";
    if (case_rec("comp_sageprimary")+""!="undefined")
    {
        user_where+="user_userid=" + case_rec("comp_sageprimary");
    }            
    if (case_rec("comp_sagesecondary")+""!="undefined")
    {
        if (user_where!="")
          user_where+=" or ";
        user_where+="user_userid=" + case_rec("comp_sagesecondary");
    }  
    if (user_where=="")
      user_where="1=2";     
    var userRecord = CRM.FindRecord("users",user_where);
    while (userRecord.eof==false)
    {
         sendEmail(userRecord("user_emailaddress"),userRecord("user_firstname")+ " "+userRecord("user_lastname"));
         userRecord.NextRecord();
    }
 }
     

}


function sendEmail(email1, name1) {

 ErrorStr+=email1+":"+name1+":" +m_subject+m_body+"=====";
 return;
 var myMailObject = CRM.GetBlock("messageblock");
 with (myMailObject)
 {
   DisplayForm = false;
   mSubject = m_subject;
   mBody = m_message;
   mShowCC = true;
   mShowBCC = true;
   AddRecipient(email1,name1,"TO");
   Mode=2;  
   Execute();
   
   if (mSentOK)
   {
     ErrorStr = "Email Sent";
   }  
   else  
   {
     ErrorStr = "There has been a problem:  "+mErrorMessage;
   }
 }

}

function UpdateRecord()

{

 // Handle update record actions here

}


function DeleteRecord()

{

 // Handle delete record actions here

}