Sage CRM Developers Course

21
Sage CRM Developers Course Using the Component Manager

description

Sage CRM Developers Course. Using the Component Manager. Looking ahead to the classes. DP01: Introduction to the Development Partner Program DP02: Entities and the Data Model (Part 1 of 2) DP03: Entities and the Data Model (Part 2 of 2) DP04: Implementing Screen Based Rules (Part 1 of 2) - PowerPoint PPT Presentation

Transcript of Sage CRM Developers Course

Sage CRM Developers Course

Using the Component Manager

Looking ahead to the classes

DP01: Introduction to the Development Partner Program

DP02: Entities and the Data Model (Part 1 of 2)

DP03: Entities and the Data Model (Part 2 of 2)

DP04: Implementing Screen Based Rules (Part 1 of 2)

DP05: Implementing Screen Based Rules (Part 2 of 2)

DP06: Screen and User Independent Business Rules

DP07: Workflow (Part 1 of 2)

DP08: Workflow (Part 2 of 2)

DP09: Using the API Objects in ASP Pages (Part 1 of 2)

DP10 : Using the API Objects in ASP Pages (Part 2 of 2)

DP11: Using the Component Manager

DP12: Programming for the Advanced Email Manager

DP13: Using the Web Services API

DP14: Using the Web Services API (Part 2 of 2)

DP15: Coding the Web Self Service COM API (Part 1 of 2)

DP16: Coding the Web Self Service COM API (Part 2 of 2)

DP17: Using the .NET API (Part 1 of 2)

DP18: Using the .NET API (Part 2 of 2)

Agenda

What is the Component Manager?

How the Component Manager Interacts with Meta Data Tables

What is Included in the Component ManagerExceptions

Editing Component Files

The Component Manager as a Coding Environment.

Delivering Components

Use of Extensibility Features

StandardLicense

ExtensibilityLicense

DeveloperLicense

Component Manager Import Import & Export Import & Export

Customisation: New Screen, New List, New Tab, Table Connect, Ext DB, Custom Page Actions, Edit New Blocks

O P P

Customisation Standard - New Field, Translations, Selections, Re-order fields

P P P

Can Run ASP Application Extensions PASP pages will only run in Standard Install with correct .js files.

P P

Can Run .NET Application Extensions P P POnly DPP Members can

create .NET App Extensions

“DPP” Files

Received when DP joins program.sagecrmdpp.jssagecrmnolangdpp.js sagecrmdpp.vbs

accpaccrmdpp.jsaccpaccrmnolangdpp.js accpaccrmdpp.vbs

Include the appropriate files in your third-party products/installs. These files are supplied to CRM Development Partners only.

They will enable your product to run on the CRM installs that do not have the Enterprise Integration Server (EIS). Products using the standard accpaccrm.js will not run on systems without EIS.

‘Record and Edit’ installer

Sage CRM’s “install shield” APIDo customizations using front end

Automatically generate scripting to re-create customizations

Allow for editing of script files

Allow for install parameters

Component Packages containNew objects (e.g. Menus, Tabs, Screens, Database, Workflow)

Customized objects

ASP & Other Files

Prompting of Component Name and Changed Item

Component Manager

View Details

Apply all Component Changes

Preview installation success checks

Apply all Changes?: Yes

Post Installation Log file: OK, Fail, Overwritten

Data Diagram of Meta Data Dependencies

Custom_EditsColP_ColPropsId

ColP_Entity

ColP_ColName

ColP_EntryType

ColP_DefaultType

ColP_DefaultValue

Custom_ViewsCuVi_ViewID

CuVi_CreatedBy

CuVi_CreatedDate

CuVi_UpdatedBy

CuVi_UpdatedDate

CuVi_TimeStamp

Custom_ScreenObjectsCObj_TableId

CObj_Name

CObj_Type

CObj_EntityName

CObj_UseEntity

CObj_AllowDelete

CObj_CreatedBy

CObj_CreatedDate

CObj_UpdatedBy

Custom_ListsGriP_GridPropsId

GriP_GridName

GriP_Order

GriP_ColName

GriP_AllowRemove

GriP_AllowOrderBy

GriP_OrderByDesc

Custom_ContainerItemsCont_ContainerName

Cont_BlockName

Cont_Order

Cont_NewLine

Custom_TabsTabs_TabId

Tabs_Entity

Tabs_Caption

Tabs_Order

Tabs_Action

Tabs_Permission

Tabs_PerLevel

Tabs_Sensitive

Tabs_NewWindow

Custom_ScreensSeaP_SearchEntryPropsId

SeaP_SearchBoxName

SeaP_Order

SeaP_ColName

SeaP_AllowRemove

SeaP_Newline

SeaP_RowSpan

SeaP_ColSpan

SeaP_Jump

Seap_System

FieldSecurityFdSe_FldSecurID

FdSe_CreatedBy

FdSe_CreatedDate

FdSe_UpdatedBy

FdSe_UpdatedDate

FdSe_TimeStamp

UserSettingsUSet_SettingId

USet_UserId

USet_Key

USet_Value

USet_CreatedBy

USet_CreatedDate

USet_UpdatedBy

USet_UpdatedDate

USet_TimeStamp

USet_Deleted

TerritoryPermissionsUsrT_UserTeritoryID

UsrT_TerritoryID

UsrT_UserID

UsrT_ProfileID

UsrT_TableID

UsrT_View

Channel_LinkChLi_ChannelLinkId

ChLi_Channel_Id

ChLi_User_Id

ChLi_UseBrokerRule

UsersUser_UserId

User_PrimaryChannelId

User_Logon

User_LastName

User_FirstName

User_Language

User_Department

User_Phone

User_Extension

User_Pager

User_Homephone

User_MobilePhone

User_Fax

User_EmailAddress

Component Manager Generated Code

Generated code is commented

The order of sections is important. Referential Integrity

AddCustom_Tables

AddViewAddCustom_ScreenObjects

AddCustom_EditsAddCustom_ScreensAddCustom_TabsAddCustom_Lists Note:

AddCustom_Data and RunSQL statements need to be tested thoroughly if they are inserting or deleting on the above tables because of Referential Integrity.

Entity Wizard as Component. Make sure version is correct.

Points to Watch

Changing Screens, Lists, Tabgroups

If something added to a grouped object Component manager scripts out entire group

Edit script to remove changes not required.

When a component installed, Views are Rebuilt and Metadata is refreshed

when views are rebuilt they are dropped and then recreated

because views are dropped potentially any structure like lists and screens that use views would return an error if accessed before the view is recreated

therefore when installing a component all users should be excluded from the system.

There is no uninstall

before carrying out an install of a component you should backup a production system.

the best recovery is to restore the database before the component was run.

If you are already excluding users from the system - this then is an ideal time to take a backup.

Dos and Don’t’s

Component Dos

Start a new component for new customisations– Consider a new component a day. You can merge

them afterwards

Create customizations in small unit components – (e.g. all the Company related customizations, all

the Cases related changes and then all the new Project entity related changes)

– but these would not be the final deliverable– The final deliverable 'component' would be made

by amalgamating the small units.

Give components meaningful names– Easier to manage. – The Description not the file name is shown when

loading.

Make use of the ecf file parameters to control your components– E.g. 'MultipleInstalls=Y' allows component to be

run more than once on the same install.

Component Don’ts

Don't forget to stop recording when you are finished. – You will have to edit the component

Don't forget the component manager includes:– Reports– Saved searches– Workflow

Don't forget to comment your component.– Comments in es file– Parameters in the ecf file– More user friendly to run

Q&AQ&A

Looking ahead to the classes

DP01: Introduction to the Development Partner Program

DP02: Entities and the Data Model (Part 1 of 2)

DP03: Entities and the Data Model (Part 2 of 2)

DP04: Implementing Screen Based Rules (Part 1 of 2)

DP05: Implementing Screen Based Rules (Part 2 of 2)

DP06: Screen and User Independent Business Rules

DP07: Workflow (Part 1 of 2)

DP08: Workflow (Part 2 of 2)

DP09: Using the API Objects in ASP Pages (Part 1 of 2)

DP10 : Using the API Objects in ASP Pages (Part 2 of 2)

DP11: Using the Component Manager

DP12: Programming for the Advanced Email Manager

DP13: Using the Web Services API

DP14: Using the Web Services API (Part 2 of 2)

DP15: Coding the Web Self Service COM API (Part 1 of 2)

DP16: Coding the Web Self Service COM API (Part 2 of 2)

DP17: Using the .NET API (Part 1 of 2)

DP18: Using the .NET API (Part 2 of 2)