Add a Tutorial to Your User Guide
Tutorials describes steps for completing an end-user task. To mark a tutorial, add any of the following tags to any page:
article:task-tutorial-beginnerarticle:task-tutorial-intermediatearticle:task-tutorial-advanced
Add a Troubleshooting Page
Troubleshooting pages are for users to identify reasons and fixes for problems. To mark a troubleshooting page, add the tag article:task-troubleshooting to any page.
Add a Reference Page to Your User Guide
Reference pages list essential facts about a feature or system. To mark a reference page, add the tag article:reference-feature to any page.
The Sugar Developer Guide is designed for developers who are new to Sugar, or to CRM and Web-based applications. This guide introduces you to some basic CRM concepts and helps you get familiar with the Sugar system. It describes how to configure and customize the Sugar platform for a broad range of tasks applicable to companies, government agencies and other organizations that have a need to manage business relationships with people.
Readers are expected to have basic programming and software development knowledge, be familiar with the PHP programming language and the SQL database language.
Topics
Welcome to Sugar, an open source Customer Relationship Management (CRM) application. Sugar enables organizations to efficiently organize, populate, and maintain information on all aspects of their customer relationships.
SugarCRM was originally written on the LAMP stack (Linux, Apache, MySQL and PHP). Since version 1.0, the SugarCRM development team has added support for every operating system (including Windows, Unix and Mac OSX) on which the PHP programming language runs for the Microsoft IIS Web server, the Microsoft SQL Server, and Oracle databases. Designed as the most modern web-based CRM platform available today, SugarCRM has quickly become the business application standard for companies around the world. See the Supported Platforms page for detailed information on supported software versions and recommended stacks.
The Sugar application code is based on a modular framework with secure entry points into the application (e.g. index.php or soap.php). All modules, core or custom, must exist in the <sugar root>/modules/ folder. Modules represent business entities or objects in Sugar such as Contacts, and the object has fields or attributes that are stored in the database, as well as a user interface (UI) for the user to create and modify records. A module encompasses definitions for the data schema, user interface, and application functionality.
A Sugar Module consists of the following files:
•
A Vardefs file that specifies the Sugar metadata for the database table, fields, data types, and relationships.
•
A SugarBean file that implements the functionality to create, retrieve, update, and delete objects in Sugar. SugarBean is the base class for all business objects in Sugar. Each module implements this base class with additional properties and methods specific to that module.
•
Metadata files that define the contents and layout of the Sugar screens.
o
ListView: lists existing records in the module.
o
Detail View: displays record details.
o
EditView: allows user to edit the record.
o
SubPanels: displays the module's relationship with other Sugar modules.
o
Popups: displays list of records to link with another record.
You can customize Sugar to tailor the application to meet your business needs. This chapter explains the different ways to customize SugarCRM.
Sugar Logic, a new feature in Sugar Enterprise and Sugar Professional, is designed to allow custom business logic that is easy to create, manage, and reuse on both the server and client.
Sugar Logic is made up of multiple components which build off each other and is extensible at every step. The base component is the Sugar Formula Engine which parses and evaluates human readable formulas. Dependencies are units made up of triggers and actions that can express custom business logic. Each dependency defines a list of actions to be performed depending on the outcome of a trigger formula.
OAuth (Open Authorization) is an open standard for authorization users across software applications. SugarCRM implements Oauth in order to integrate with other applications such as IBM Lotus Live.