Easy API

From MobileX for SageCRM
Revision as of 23:43, 11 November 2019 by Crmtogether (talk | contribs)

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

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);

}