Self Service - Possible to have a contact modify their existing contact information using blocks?

Hi.

We are looking into having our customers update some of their own contact information in SageCRM 7.3 using Self Service.
I was wondering if anyone has accomplished this task using "blocks" with the EM (?)

And if so, can someone provide else with a coding example that would allow us to demonstrate how a customer can login and make an update to their contact information? We would like (once a year) to send out a personalized email to have our customers review their contact information and make any necessary changes (in particular) to their address and email information.

Also, maybe the Self Service option isn't the way to go to accomplish this task. If anyone has any other suggestions or solutions, let me know.

Thanks,

Stephane

  • 0

    Stephan

    Self Service can certainly be used to allow a visitor to directly maintain data in the person, address and other contact details.

    I am not sure how you image this working. By EM do you mean the 'Email Manager'?

  • 0

    Hi Jeff.

    EM stands for Extensibility Module - It appears in the documentation as (EM).

    That's what we are looking to do - however, I don't have a concrete example of doing something like this.

    Do you happen to have a tutorial or something that I can follow to demonstrate how a customer can make a change to their contact address information?

    Let me know.

    Thanks in advance.

    Stephane

  • 0

    Stephane

    Silly me.

    Below is some example code that shows how the visitor information (once the visitor has been authenticated) can be used to retrieve the contact data and then displayed to allow editing.

    <%

    //set up alternate object name

    CRM = eWare;

    if (CRM.Authenticated)

    {

    var intRecordId = CRM.VisitorInfo("visi_personid");

    var PersonRecord = CRM.FindRecord('person','pers_personid='+intRecordId);

    var myBlock = CRM.GetBlock("BlockName");

    Response.Write(myBlock.Execute(PersonRecord));

    }

    else

    {

    Response.Redirect("customlogon.asp");

    }

    %>

    Mode and other block work operates much the same as in main interface ASP pages.

    There are articles on the Hints, Tips and Trick's blog. See: community.sagecrm.com/.../sage-crm-7-2-a-round-up-of-articles-about-self-service.aspx

    There are some other videos on the video channel.

    video.sagecrm.com/listing.php

    And if you have access to the developer program then you can download some longer videos here:

    community.sagecrm.com/.../training.aspx

  • 0

    Hi Jeff.

    Thanks for the example.

    I was checking the existing demo structure and was wondering how I would implement the code you provided in the support page.

    However, I keep getting a 500 error from the server.

    Here is the existing code in the support.inc file (located in the includes folder).

    <%

    if (eWare.Authenticated) {

    %>


    Welcome to Panoply Technologies Support. You are currently logged in as

    .

    <%

    eWareBlock=eWare.GetBlock("sscaselist");

    grid=eWareBlock.Execute("case_primarypersonid="+eWare.VisitorInfo('Pers_PersonID'));

    if (grid!="") {

    Response.Write(grid);

    }

    %>

    <%

    }

    else

    {

    %>


    If you are an existing Panoply Technologies customer please log on here:

    <%

    }

    %>

    ---

    It appears that the Block called "sscaselist" was already created and they are writing back to Grid any case information.

    Am I suppose to create a new Block prior to inserting the example code you provided?

    Or should I create a new INC file and link to it?

    Let me know how you would test your code within this Panoply Technologies demo site.

    Thanks,
    Stephane