Easy API

From MobileX for SageCRM
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

UPDATE March 2020 - not to be used as this will be replaced -



























































New Easy API - Designed to make "some" screens easy to provide in the interface



  • showScreens - screens with optional edit
 - Parameters
   1. Entity - name of the entity
   2. EntityIdField - id field of the entity
   3. Screens - Comma seperated list of CRM screens
   4. EntityToUse - name field to make ContextEntityfield value to
   5. ContextEntityfield - name of the entity context (tab) we are in
   6. allowEdit - boolean - set to true to show edit button

Example:

   showScreens(cApp.EntityName, cApp.EntityId,'CustomCompanyScreenMX1,CustomCompanyScreenMX2', 'company', 'comp_companyid','comp_companyid',true);

  • cugetList – Table style lists
 - Parameters
   1. Entity - name of the entity
   2. EntityIdField - id field of the entity
   3. EntityOrderBy - order date by this column
   4. displayfields - optional - comma delimited list of fields, alternatively use CRMListToUse
   5. linktoEntity - boolean - allows the item be clicked on to navigate the user to that entity record summary page
   6. customlink - optional - set linktoEntity to false and instead set your own function call
   7. CRMListToUse - optional - name of a list in CRM alternatively use displayfields 

Example:

 cugetList('ctproject','ctpr_companyid','ctpr_createddate',,true,,'mxcustomlist');



  • getListScreen – repeating screens style list
 - Parameters 
   1. entityname
 - Notes
   1. Expects view "vENTITYnamesummary" to exist and must contain fields "pers_firstname,pers_lastname,pers_personid,comp_name,comp_companyid".
   2. Expects screen "ENTITYOfficeIntSmall"

Example:

 getListScreen('ctproject');

Example showing how to add in a menu item on the footer that then displays a web page

 1. Navigate to the 'Administration -> Advanced Customisation -> System Menus'
 2. Open (or create) the menu 'MXFooterMenu'
 3. Add menu item setting:
   caption: site
   custom file: fa fa-bar-chart
   sql: getwebsite('Site');
 4. Save this
 5. Open the custompages/sagecrmws folder
 6. open web.config
 7. Add into 'CustomPlugins'
        <add name="website" />
    EG
           <CustomPlugins>
           <plugins>
           ...
              <add name="website" />    
           </plugins>
           </CustomPlugins>
 8. Open the custompages/sagecrmws/js/plugins folder
 9. Create a folder called 'website'
 10. Create a folder called 'client'
 11. Create a file called 'plugin.js'
 12. add the following contents to the file created in 11
    var onDocumentReady = function () {
    }
    var onContextChanged = function () {
    };
    var _websitecount=0;
    function getwebsite(_caption)
    {
         cApp.containerTop.clear();
         cApp.container.clear();
         Factory.destroyComponent("powerbititle2");
         var powerbititle2 = Factory.createLabel("powerbititle2");
         powerbititle2.pr_caption = _caption;
         powerbititle2.draw("containerTop");
         powerbititle2.position(110, 10, true);
         console.log('getPowerBI2 demo');
         var pr_targetImage2 = Factory.createIFrame("pr_targetImage2");
         pr_targetImage2.pr_height = "100%";
         pr_targetImage2.pr_width = "100%";
         pr_targetImage2.pr_src="https://crmtogether.com";
         pr_targetImage2.pr_onclick = "";
         pr_targetImage2.draw("container");
         pr_targetImage2.position(0, 0);
    }