View more results: All Community | Partner Community
  • Blog Post: Adding a new Panel to a Summary screen e.g. Company Summary

    A screen like the company summary screen has a very particular structure because it is partially defined in meta data and partial has its structure hard coded into the system action being called. The detail of this is discussed in the article " Changing a Summary Screen (e.g. Company Summary Screen...
  • Blog Post: Rep_Deletes, Solo and Synchronization

    The rep_deletes table keeps track of 'hard' deletes in Sage CRM. This mainly concerns meta data changes in Sage CRM. Regular deletes using the interface actually are only soft deletes. When you delete a business record (person, note, opportunity etc) through the interface the delete flag on...
  • Blog Post: Controlling Top Content

    Above is a screen shot that shows a default opportunity summary page. At the top of the page is the frame that contains the TopContent information. Sometimes this is called the context information. In this screen the TopContent brings in data from the Opportunity, the Company and the Person entities...
  • Blog Post: Sage CRM v7.1: Reference of Database Changes

    Sage CRM v7.1 has seen lots of changes to the database. Many of the changes are to support the new features such as the new Communication Management which includes the revised Exchange Integration, plus the new Sage e-Marketing feature (the integration with Swiftpage). But there are other big changes...
  • Blog Post: Sage CRM v7.1 SP2: How has the database and meta data changed?

    When a new version of Sage CRM is released or a new Service Pack is issued there may be changes made to the database tables and views. These changes can be obvious, for example if a new table is added to support a new feature then it is clear that this would have an impact on the database. One of the...
  • Blog Post: Reports, Saved Searches and Groups

    I hope in this article to explain the meta definition of the following structures: Standard Reports Saved Searches Groups (Target Lists) These features/structures in Sage CRM all use the Reports tables: custom_reportbands custom_reportcharts custom_reportfavourites custom_reportfields...
  • Blog Post: Step away from the SQL and put your hands where I can see them!

    Amongst Sage CRM developers there are two almost irresistible urges. The first is the itch to write code and try to solve all problems with "if, else" statements. Those of us who are experienced with Sage CRM will eventually learn that much coding can be avoided and we are gradually weaned...
  • Blog Post: Manage Escalations

    A new example component has been added to the resources section for development partners to download. The purpose of this component is to make the management of escalation rules easier in implementation of Sage CRM where there are a large number of rules to manage. When working with large number of Escalation...
  • Blog Post: Changing the WSDL file

    This article was updated (31st October 2009) to correct links. It is perfectly true that for an early version of 5.8 we managed to generate a malformed WSDL file so that briefly people had to manually change the WSDL file to get webservices to work at all. But that was a tweak to correct the generated...
  • Blog Post: Building a Screen not bound to Meta Data using the ASP COM API

    This article has been updated to ensure the code follows the coding convention introduced in Sage CRM 6.2. The code below demonstrates how a page like the Preferences screen can be rebuilt in Sage CRM. This particular screen may be needed to be replaced if the business wishes to offer users only...
  • Blog Post: More Adventures with the Library

    I have been investigating the list of documents that appears under the Company tab group. This is actually part of a set of investigations into the library entity that I am working on. So there will be a few more blogs about documents and the library in the near future. I wanted to find out how to ensure...
  • Blog Post: Changing the EntryType for Fields in an External Table. e.g. ap_vendor from Sage 100 ERP, formerly known as MAS 90

    Within Sage CRM it is very easy to link to an external table that exists in another database. For example you may wish to link to a table such as ap_customer or ap_vendor in Sage ERP MAS 90. How the link can be created is described in the article " Connecting to an External ODBC database e.g. Sage...
  • Blog Post: Search Select Advanced Fields and the Self Service COM API

    This article has been updated to correct links I have written about the quirkiness of the Self Service API previously in the article " Self Service Quirks ". It that post I pointed out that the Self Service environment lacks a 'logon' that generates a CRM SID (Session ID). Because...
  • Blog Post: How does Meta Data create a Screen?

    If we consider a screen like the Case Summary screen we can imagine it being built in a series of layers. If we consider the hyperlink http://localhost/CRM/eware.dll/Do?SID=198369875659391&Act=281&Mode=1&CLk=T&Key0=8&Key1=43&Key2=57&Key8=46&T=Case We can see that the Action...
  • Blog Post: Building selection lists in ASP pages without reference to Meta Data

    This article has been updated to follow the coding convention introduced in Sage CRM 6.2 From time to time you will need to build pages that can not directly be based on a Meta data definition of a screen. For example if you need to construct a page that allows cloning of an entity or perhaps interaction...
  • Blog Post: Investigating new and changed Meta Data structures in an installation of Sage CRM

    I have added to the resources section two very simple SQL scripts that can be used to help you report what new Meta Data structures have been added to an install of Sage CRM and what has been changed since a certain date. The two scripts rely on the fact that Sage CRM is a Meta Data driven application...
  • Blog Post: The Sage CRM .NET API

    The diagram below shows the general architecture of Sage CRM. Here you can see very clearly that the .NET API is an alternative and NOT a replacement for the COM API which is currently used to build application extensions with ASP pages. Both the .NET API and the COM ASP API use the Meta...
  • Blog Post: Using Joins in Web Services

    Imagine you need to retrieve information from CRM via the webservices interface; this query should combine data from multiple tables. In the COM API (ASP pages, self service, table level scripts etc) you could use the QueryObject to build the exact SQL you need. var mySQL = "SELECT Person.*,...
  • Blog Post: Some thoughts about workflow and web services

    This post should be read all the way through as I raise some important caveats. In fact I have actively tried to discourage people from using web services to control workflow. The first problem that you may face when wanting to work with workflow is that there is no web services method to control...
  • Blog Post: Always Use Default Database

    The links in this article were corrected on 31st October 2009. This option, that is available for an on premise install, is found under Administration -> System -> Database It looks like this feature would provide the ability for a user to define an alternative database to log into from the...
  • Blog Post: Custom_Edits and Derived Fields Created in Views

    In CRM it is quite common to need to create a view that performs a calculation or derives information to be displayed on screen or in a report. An example of this can be found in the Case management area. For example if you logon to a demo system as Kylie Ward (WardK) and navigate to the My CRM menu...
  • Blog Post: Building Lists without reference to Meta Data in the ASP COM API

    This article has been updated 9th June 2009 to correct formatting and to change the code to use the convention introduced in Sage CRM 6.2. Above is a picture of a new list added into the My CRM area of Sage CRM. The code below shows how a list can be created using the ASP COM API. var intRecordId...
  • Blog Post: What makes an Entity?

    The concept of the Entity is important within Sage CRM and is used through out the system. When dealing with databases and designing applications the term entity can be used to describe anything of significance. This is true for both real and conceptual entities about which the system needs to hold information...
  • Blog Post: Sage CRM v7 and Referential Integrity

    One of the great strengths of Sage CRM is its openness. Its data model is documented and published and members of the Developer Program can download the latest data model for Sage CRM v7 . There are a couple of recorded lessons that discuss the database concepts used in Sage CRM. Entities and...
  • Blog Post: Resetting Passwords

    I have had a few emails from different people over the last few weeks asking about code that will allow a system administrator to quickly reset a users password. I created a little ASP page that demonstrates how this can be done. You can develop this idea further by send an email to the user. The...