Read our blog for the latest insights on sales and marketing Take Me There

Webinar: Use Sugar Data to Easily Generate Complex Documents Register

Webinar: Advanced Calendar Solution for Sugar Register

Sugar Fall ‘17 (7.10.0.0)

Released on October 20th, 2017

Overview

This document describes the changes and functionality available in Sugar® Professional 7.10.0.0.

Sugar 7.10.0.0 is only available for On-Demand (Sugar-hosted SaaS) deployments.

Administrator and End User

Feature Enhancements

The following feature enhancements are included in this release:

  • Emails user interface : The Emails module now uses the Sidecar interface. It has been redesigned to store copies of email messages sent from Sugar or archived via one of the various email archiving options. Users can view and work with email records much like they view and work with records in other Sidecar modules.
  • Outgoing email accounts : Users can configure multiple SMTP accounts to send email from Sugar.
  • Drill-through report charts : Click on a segment of a report's chart to view a list of records belonging to that segment.
  • Contracts user interface : The Contracts module now uses the Sidecar user interface.
  • Contract Types user interface : The Contract Types module now uses the Sidecar user interface.
  • Currencies user interface : The Currencies module now uses the Sidecar user interface. 
  • Products- and Quotes-related modules user interface : The Manufacturers, Shipping Providers, and Tax Rates modules now use the Sidecar user interface. 
  • SAML configuration enhancement : Additional configuration options have been added for configuring SSO using SAML. 
  • Teams filter : Multiple team selection is now supported when filtering based on the Teams field in Sidecar modules. 
  • Elasticsearch 5.4 support : Elasticsearch version 5.4 is now supported.

Fixed Issues

The following issues have been resolved in this release. Support portal users can use the following links for more details about each issue:

  • 72921 : Setting the email client in the user's profile to "External Email Client" may not be respected properly as the Sugar email client continues to be used when replying to emails in Sugar.
  • 75304 : Reporting on next, current, or previous fiscal quarters for a fiscal year may not return correct results as expected.
  • 75571 : Enabling the "Delete related notes & attachments with deleted emails" option may not delete the related note record as expected when an email is deleted.
  • 76538 : When accessing Sugar using a device (e.g. laptop) with touch screen enabled, the date picker may not work as expected.
  • 77481 : Manually clearing the cache directory may cause unexpected errors in the system if the Users module contains a custom field.
  • 77658 : Adding a custom time format in the config_override.php file may not work as expected and display the time values incorrectly. 
  • 78080 : Users assigned a role with Edit permission set to "Owner" for the Reports module may be prevented from copying reports. 
  • 78364 : Sugar improperly attempts to establish an SSL/TLS connection when "Use SMTP Authentication" is unchecked.
  • 79329 : Outlook Plug-in version 2.4.0 may not connect to certain Sugar versions (7.9.1.0, 7.10.0.0).

Known Issues

The following are known issues in this release. Support portal users can use the following links for more details about each issue:

  • 61338 : When test entries are deleted from the campaign, the related campaign emails that are sent to targets may not be viewable and display an error (Error retrieving record. This record may be deleted or you may not be authorized to view it).
  • 64880 : Certain fields (e.g. email address, phone) in the Users module may not be available to add as field variables in PDF templates.
  • 65527 : The SugarCRM® cube icon is used as the system-wide favicon even when "Display module icon as favicon" is enabled in Admin > System Settings.
  • 65647 : Users will not see updates to their avatar images without first logging out and back into Sugar.
  • 65674 : Selecting an item from the Recently Viewed list under the module tab does not correctly update the list to include the selected record.
  • 66209 : Help text is not being displayed.
  • 66573 : More than one user attempting to merge records simultaneously results in errors.
  • 66580 : List view loads may experience performance issues as quantity of records loaded increases.
  • 66826 : Numerical fields such as Bug Number may not be used with type-ahead functionality to generate a list of potential matches when relating records.
  • 66842 : Relate fields cannot be sorted as expected in the list view.
  • 66900, 67294 : Resetting the forecast time period does not set the current time period correctly and causes various issues in the application.
  • 66910 : The notification for Cases module does not include the case number as expected when triggered via the workflow.
  • 66995 : The Display server response times option is improperly available to select via Admin > System Settings.
  • 68024 : The Case Number, Date Created, and Created By field values for the Cases module may not get populated in workflow alerts that are triggered on first save.
  • 68095 : Text provided for Campaign Tracker URLs is unexpectedly shortened after the first 30 characters.
  • 68112 : Matrix-type reports display incorrectly when exported to PDF.
  • 68245 : Calendar dashlet may be missing from Legacy dashboard after upgrade.
  • 68426 : New panels added to the Record View layout in Studio do not display the panel options (Display Type, Collapse?) until the layout is saved in Studio.
  • 68461 : Searching by non-primary email addresses in the module's list view (e.g. Accounts) does not pull up results as expected.
  • 68464 : Changes made to record view layouts via studio are not reflected when quick creating records until after the full creation view is used.
  • 68975 : Changing the order of subpanels via Admin > Display Modules and Subpanels does not preserve the order upon save.
  • 68979 : Changing the currency of a quote multiple times may introduce rounding errors to the line item price fields.
  • 68985 : Custom relationships created between a module and the Activities module via Admin > Studio cannot be deleted as expected. 
  • 69184 : Creating a custom field may not work as expected if there are numerous custom fields and large amounts of data existing in the module.
  • 69391 : Changes made to module names via Admin > Rename Modules are not reflected on list views columns for modules which relate to the affected module. The column names may be corrected individually by modifying each listview's column labels via Studio.
  • 69508 : Relating a new record via the Legacy module subpanel (e.g. Documents) in a module's record view (e.g. Contracts) causes the Next and Previous buttons to no longer appear in the record view. Navigating back to the list view and selecting a record will correct the issue by restoring the buttons again in the record view.
  • 69801, 69918 : Changing the style attributes for table tags, image tags, etc. on email templates via HTML may result in parts of the code getting removed upon save.
  • 69957 : Large number of activity stream records may cause performance issues.  
  • 69982 : Old Value variables (e.g. {::past::Opportunities::sales_stage::}) inserted in workflow alert templates may not display the correct value in the email as expected.
  • 69985 : If a custom module has a relationship with an individual Activity-type module (e.g. Tasks), this related module may not be available to select when creating a workflow action to create a record in a module (Tasks) associated with the target module (e.g. custom module). As a workaround, create a one-to-many relationship between the custom module and the Activities module, and the appropriate Activity-type module (e.g. Tasks) will be available to select when creating the workflow action
  • 70024 : Scheduled reports may have incorrect or missing charts in the emailed PDF. Select "Print as PDF" from the report's Actions menu to see the updated chart.
  • 70106 : The Skype icon does not appear next to the phone number as expected when the SkypeOut integration is enabled.
  • 70124 : Studio's formula builder displays several undesired functions (getListWhereisForecastClosedisForecastClosedWon, and isForecastClosedLost).
  • 70389, 73187 : Tabbing while inline editing the address block in the record view does not work as expected as it does not tab through all the fields (e.g. state, postal code) within the address block.
  • 70542 : The "Show Completed Meetings, Calls, and Tasks" option is not available in Calendar > Settings, which can cause performance issues in the Calendar module for users who have a large number of activity records. Setting Admin > System Settings > vCal Updates Time Period to "-1" will relieve the performance delay, however, this will prevent user availability information from appearing when scheduling a call or meeting.
  • 70553 : Disabling export via Admin > Locale does not remove the Export option as expected from the list view.
  • 70601 : Custom HTML files including javascript may not render correctly after upgrade.
  • 70709 : Single sign-on authentication may fail when attempting to log into Sugar using Internet Explorer.
  • 70935 : When text is highlighted to change the font size in the compose email window, selecting the same font size (e.g. 12pt) twice in consecutive order may incorrectly reset the font back to the default size (8pt).
  • 70940 : Attempting to disable the SAML authentication via Admin > Password Management may not work as expected if theauthenticationClass property in config.php has been set to SAMLAuthenticate.  
  • 71446 : For opportunities, changes made to labels via Studio > Opportunities > Labels do not affect list view labels. Make changes to labels via Studio > Opportunities > Layouts > List View to modify list view layouts.
  • 71733 : Printing archived emails via the browser's print option may not display correctly.
  • 71807 : Studio layouts appear in reverse order when right-to-left themes are enabled.
  • 71950 : Adding TinyMCE to a TextArea-type field (e.g. Description) may cause the field to not display properly in record view when accessing Sugar via certain browsers (e.g. Firefox).  
  • 72000 : Changing the Admin user with user ID = 1 to a regular user may cause the system index to not index records properly in Sugar. To resolve the issue, change the Admin user (user ID = 1) back to a System Administrator User. 
  • 72022 : The Projects module is incorrectly available to select via Admin > Mobile.
  • 72098 : Clicking the "Restore Default" button in Admin > Studio automatically saves and displays the out-of-the-box default layout despite not saving the change in Studio.
  • 72264 : Clicking on the opportunity's name in the Quotes detail view after downloading the quote to PDF improperly redirects to the home page instead of the opportunity's record view. As a workaround, right-click on the opportunity name after downloading the quote to PDF and the opportunity's record view will open accordingly.
  • 72286 : The Opportunity module's amount fields cannot accept negative values.
  • 72409 : When generating a report, labels may improperly overlap in the chart (e.g. Vertical Bar chart) causing the labels to be unreadable.
  • 72588 : Synchronizing the Google Calendar with the Sugar calendar may not sync the tasks as expected.
  • 72590 : The Due Date field may not be available to select when mass updating in the Tasks module. To resolve the issue, navigate to Admin > Studio > Tasks > Fields and disable the Mass Update option for the Due Date field then enable it again.
  • 72810 : Filtering the list view search using custom checkbox fields may not work as expected.
  • 72882 : When accessing Sugar using Internet Explorer, the date picker does not display properly and disappears when using the scroll bar on the page. As a workaround, scrolling with your mouse or trackpad will display the calendar picker properly.
  • 72887 : Customizing a role-list while creating a custom DropDown field in Studio causes the new field to not be saved. As a workaround, create and save the new field before making changes to any role-lists.
  • 72956, 73729 : Populating a target list by selecting a report for a module (e.g. Accounts) may not add all records as expected if the report contains a large amount of data.
  • 72962 : Dependent fields containing a related() function may cause the data to not display as expected in the module's list view.
  • 73301 : Attempting to edit Sugar Logic formulas with too many lines in the formula may cause an error ("Formula Builder: Error Loading Content") in Studio's formula builder. As a workaround, edit the formula to remove any line breaks.
  • 73434 : Custom entrypoints which require authentication may not work as expected when using session tokens.
  • 73468 : Time-elapse workflow may not trigger as expected when a date field (e.g. Expected Close Date) in the condition is set to a date in the future.
  • 73488 : Re-ordering list view columns does not work as expected for iPad and mobile devices.
  • 73492 : Sorting the Forecasts module by Likely, Best, or Worst fields may not sort by the base currency amount as expected.
  • 73566 : Calculated or dependent fields containing a related() function may not get calculated until after save for activity-type modules (e.g. Notes).
  • 73569 : Attempting to add a row to an existing quote record may not work as expected when accessing Sugar via certain browsers (e.g. Chrome, Safari) on iPad.
  • 73689 : When users adjust the list view or subpanel column widths, the user's preferred column size may not be preserved if the browser window is resized.
  • 73891 : Attempting to reorder subpanels in the module's record view may not work as expected when logged into Sugar using Chrome on Windows. As a workaround, disable the "Enable Touch Events" option for Chrome and users should be able to drag and drop subpanels accordingly.
  • 73929 : Cases created from inbound emails may improperly display the case's description as HTML.
  • 74349 : Creating and saving a record assigned to a team that the current user is not associated to may display an error even though the record gets created successfully.
  • 74350 : An unexpected error may occur when saving a record if there is an issue with the user's default team in the database. As a workaround, run the following query in the instance's team sets table: UPDATE team_sets SET deleted = 1 WHERE id NOT IN ("SELECT team_set_id FROM team_sets_teams WHERE deleted = 0") AND deleted = 0. The affected users will then need to edit their profile to configure their default teams again.
  • 74354 : Pie charts may not display properly in report results if there are labels with a large number of characters.
  • 74382 : The Case Summary dashlet may not work as expected and cause an internal server error if the account record has a large number of related cases.
  • 74416 : Creating a Summation-type report that is grouped and sorted by a certain field (e.g. Month: Expected Close Date, Quarter: Expected Close Date) in a related module (e.g. Opportunities) may cause the run-time filter to not work as expected. 
  • 74421 : Passing text including an ampersand (&) into an API call may cause the call to fail.
  • 74475 : Clicking a button (e.g. Plus button) in the subpanel (e.g. Emails) before the module's record view completes loading may result in unexpected errors.
  • 74539 : Custom fields may not display as expected when previewing call and meeting records via the intelligence pane.
  • 74628 : Certain workflows using a Relate-type field in the condition may fail to load as expected and result in errors after upgrading to 7.6.x.x. As a workaround, run the following query in the instance's expressions table: UPDATE expressions SET exp_type = "id" WHERE exp_type = "relate" AND lhs_field = "assigned_user_id"
  • 74687 : Avatar field marked as required in Admin > Studio may cause Sidecar modules to not save as expected and result in an error.
  • 74818 : List view column widths for custom modules may appear collapsed after upgrading from Sugar 7.5.x.x to 7.7.x.x. To resolve the issue, administrators can navigate to Admin > Studio to change the module's list view column width or users can manually resize the column widths via the module's list view.
  • 74893 : Opportunity's with expected closed dates prior to a certain time period (e.g. 1/1/1970) may cause the Forecast Bar Chart dashlet to not display as expected.
  • 74919 : Performing certain actions (e.g. Quick Repair and Rebuild) in Sugar that rebuild the cache files may cause unexpected issues in the system if there are multiple users logged in and utilizing Sugar. As a workaround, perform such actions during off-hours where users are not utilizing the system.
  • 75254 : Printing reports (e.g. Summation With Details report) to PDF may not work as expected when logged into Sugar via a mobile browser.
  • 75258 : Mass updating or importing records (e.g. cases) that are related to records (e.g. accounts) with large datasets may result in PHP memory errors.
  • 75302 : Activities (e.g. calls and meetings) created via the Calendar module tab's actions menu may not appear in the calendar grid as expected. Reloading the web browser will display the newly created activity (e.g. call) in the calendar grid.
  • 75471 : Sugar may not behave as expected and result in an error if the Sugar license is either expired or due to expire. 
  • 75481 : When duplicating a PDF template via Admin > PDF Manager, the template's body is not visible. Save then edit the duplicate record to view and modify the template.
  • 75482 : Editing all recurrences of a call or meeting with invalid recurrence rules may result in unexpected behavior.
  • 75916 : Customizing JS and other core files may cause customizations to not work as expected after upgrading to 7.7.x.
  • 75939 : Importing a large number of records (e.g. 8,000) in Sugar may fail to import as expected. As a workaround, break up the import file into smaller batches with less than 5,000 records.
  • 75940 : Mass deleting more than 20 Account records with numerous related records may fail to delete as expected and result in an error.
  • 76007 : Inline editing the User field for records in the module's list view (e.g. Accounts) may display an error upon save for users assigned a role with View and Edit permissions set to "Owner". Reloading the web browser will resolve the issue and display the updated assigned user's name for the record in the list view.
  • 76107 : Generating Calls, Meetings, or Tasks reports grouped by "Day" for Date or Datetime fields (e.g. Day: Start Date, Day: Date Created) may result in a database failure error for certain database stacks.
  • 76113 : When accessing Sugar using Chrome or Firefox, clicking the "i" icon for Call, Meeting, or Task record cells on the calendar view may cause the calendar grid to appear blank and improperly display the more information pop-up window at the bottom of the screen.
  • 76124 : Users assigned a role with View permission set to "None" for a module (e.g. Contacts) may be able to preview the module record via the Search and Add drawer for Sidecar modules.
  • 76126 : When entering a dependency formula for a DropDown-type field, clicking the Cancel button on Studio's formula builder may not close the window as expected and result in an error.
  • 76130 : Printing reports with charts (e.g. Summation-type reports) to PDF may not display correctly when logged in with languages using right-to-left script (e.g. Arabic, Hebrew).
  • 76151 : When viewing Sidecar module records in list view, Firefox users cannot click the "x" to cancel an applied saved filter as expected. As a workaround, apply the All {Records} filter to reset the list view.
  • 76166, 76167 : Users are improperly allowed to set the lead's status to "Converted" via the Leads subpanel and Mass Update panel.
  • 76524 : Dependent fields may not appear in the layout (e.g. Record View) as expected if the parent field (e.g. parent dropdown) is not present.
  • 76574 : Disabling and enabling modules via Admin > Search then scheduling a system index prior to saving may cause a 500 error to occur when performing a global search.
  • 76699 : When logged into Sugar using certain browsers (e.g. Internet Explorer 11), multiselect-type fields may not display properly when inline editing or mass updating the field via the module's list view.
  • 76730 : Field-level validations may not work as expected to trigger field validation messages upon saving the record. 
  • 76985 : When performing a global search, filtering by a module then hitting the Enter key after entering the search term may cause a 500 error to occur.
  • 77012 : When creating a custom module in module builder, adding a many-to-one relationship may incorrectly create a duplicate relationship field to the module after saving/deploying the package.
  • 77162 : When Sugar is deployed on a Linux OS, uploading packages in Module Loader may fail with an error when .PNG files are detected by the package scanner.  
  • 77205 : Viewing a page (e.g. list view) in Sugar without performing any actions for a period of time (e.g. 3 minutes) may cause an error message (Request Timeout: The server is not responding. Check your internet connection.) to appear unexpectedly.
  • 77287 : Performing certain actions (e.g. import, mass update) in Sugar may result in performance issues if there are numerous calculated fields to be updated in related records. As a workaround, add the following line to the config_override.php file to disable the related calculation field updates: $sugar_config['disable_related_calc_fields'] = true;. But keep in mind that the affected calculated values will not be updated and running Recalculate Values on related records. 
  • 77291 : Downloading PDF templates containing bold and/or italic text may not display the text in the correct font format. 
  • 77302 : Upgrades may fail due to queries posted by the upgrade exceeding the max_allowed_packet database setting.
  • 77340 : Removing the Expected Close Date column via Admin > Forecasts Settings may cause the forecast worksheet and the Forecast Bar Chart dashlet to display incorrectly.
  • 77362 : When creating or editing an alert email template for workflows, certain related modules may not be available to select as expected in the Related Module dropdown field.
  • 77372, 77612 : When logged into Sugar using the Chrome browser, highlighting/selecting text in certain fields (e.g. Description, Name) may cause issues loading the browser and display an error. As a workaround, edit the field without highlighting any text to make the necessary changes. 
  • 77539 : Changing the boost value for a field (e.g. Name) may not affect the relevancy of the field for full text search, resulting in unexpected behavior. 
  • 77549, 77932 : Users may be logged out unexpectedly or experience performance degradation when user records are modified. 
  • 77673 : When logged into Sugar using Safari 9, clicking the team name (e.g. East) in reports may improperly open Sugar's home page instead of navigating to the team's detail view.
  • 77764, 78667 : Attempting to scroll in modules (e.g. Campaigns, Meetings) may not work as expected when logged into Sugar on iPad.
  • 77792 : Enabling Full Text Search for the Date Created field in a module (e.g. Leads) may cause unexpected errors when performing a global search filtered by the module.
  • 77820 : The Visibility Editor window may not load as expected and display an error if there is a large number of dropdown dependencies defined in the visibility editor.
  • 78031 : Setting a default value for a field during the import process may not preserve the value in the field as expected.
  • 78065 : Moving a stock field between the columns (e.g. Hidden, Available) for the List View and Subpanel layouts in Studio may result in unexpected behavior. 
  • 78128 : For dropdown list values, a value's Display Label will improperly revert to a blank value if its Item Name is 0 (zero).
  • 78153 : Changing the default value for the Popup Reminder Time field for calls or meetings may not work as expected and continue to display the old value.
  • 78198 : Activity stream posts may incorrectly display system labels for instances where the system default language is set to a non-English language. As a workaround, navigate to Admin > Locale and change the language to "English (US)", perform a "Quick Repair and Rebuild", then switch the default language back to your desired language.
  • 78471 : Setting the default date format in the user's profile to "mm/dd/yyyy" may cause the time periods on the Forecasts Settings page to incorrectly display "Invalid date".
  • 78487 : When renaming modules via Admin > Rename Modules, only the most recent changes will remain and any previous updates to module names will be incorrectly removed after save. 
  • 78507 : When accessing Sugar using Internet Explorer, attempting to clear filter values in a Sidecar module's list view may not work as expected. 
  • 78527 : Inline editing a TextArea field via the subpanel may not work as expected. Reloading the web browser will resolve the issue and allow the user to inline edit the field properly.
  • 78537 : Editing the run-time filter in reports may not auto-complete to pull up matches as expected.
  • 78600 : Special characters are improperly allowed to be entered in dropdown lists' item names.
  • 78709 : Users assigned a role with Delete, Edit, or Export permission set to "Owner" may improperly be restricted from downloading and emailing PDFs.
  • 78736 :Out-of-the-box dashboards may incorrectly be recreated after deleting it from the home page or intelligence pane. 
  • 78790 : Performing certain actions that rebuild the cache files (e.g. clearing the cache directory) may cause unexpected errors in the system.
  • 79131 : When the "Listview items per page" setting in Admin > System Settings contains a large value (e.g. 50 or greater), it may cause an issue with rendering the "Download PDF" and "Email PDF" options in the record view's actions menu. Changing the "Listview items per page" setting to "20" may help resolve the issue. 
  • 79204 : Creating multiple quotes from a related module's Quotes subpanel (e.g. from an account record) incorrectly duplicates the original quote's line items as line items in each subsequent quote.
  • 79244 : Certain stock modules may be improperly hidden after converting from Sugar Professional 7.9.1.0 to Sugar Ultimate 7.9.1.0.
  • 79463 : The Accounts field on quoted line items cannot be populated.
  • 79686 : The List Order field in the Contract Types, Manufacturers, Tax Rates, and Shipping Providers modules does not control the order in which the options are listed in the corresponding fields (Type Name, Manufacturer Name, Shipping Provider, Tax Rate) for the Contracts, Quotes, abd Product Catalog modules
  • 79704 : When logged into Sugar with certain languages (e.g. Russian), the list view's Record Actions menu may not appear as expected for some modules (e.g. Dashboards).
  • 79705 : Report charts do not respect user preferences for number formatting, currency symbol, or date and time formatting.
  • 79707 : Clicking a URL link from an archived email's record view may cause the email body to improperly render blank. Navigating back to the email's record view will display the email body again. As a workaround, right-click on the URL link to open it in a new browser tab.   
  • 79712 : The "Sign" and "Get latest" links do not appear as expected in the Documents subpanel of the Contracts module. 
  • 79715 : The Follow button does not appear in the Contracts record view as expected. 
  • 79716 : The Contracts list view, record view, and subpanel do not have the option (star icon) to designate records as favorites.
  • 79717 : The View Change Log option is not available to select in the Contracts record view actions menu.
  • 79734  : Drill through is not supported for report charts which are grouped by a relate field.

Developer

Development Changes

The following changes in this release may affect developers:

  • It is recommended to set $sugar_config['SAML']['strict'] = true; for production use of SAML in this Sugar release. This will ensure that the underlying PHP SAML implementation will reject unsigned and unencrypted messages.
  • This Sugar release introduces a brand new, open source charting library called Sucrose. Please visit http://sucrose.io for more information. This library was created and is maintained by the SugarCRM development team.
    All of the out-of-the-box dashlets and reports use the new Sucrose library. Customizations to dashlets and reports should be tested and, where necessary, migrated to the new Sucrose APIs.
  • As part of our plan to migrate to the Sucrose chart library, we are deprecating JIT and NVD3/D3 libraries and plan to remove them in a future Sugar release. Existing customizations that use JIT or NVD3/D3 should migrate to Sucrose at this time.
  • The following modules have been migrated to the Sidecar user interface. Any UI customizations to these modules will need to be rewritten in the Sidecar framework prior to upgrading to the new release.
    • Contracts
    • Manufacturers
    • Tax Rates
    • Shippers
    • Currencies
    • Contract Types
  • The APIs used by legacy Email Compose are now deprecated including the following:
    • Many of the routes in sugarcrm/modules/Emails/clients/base/api/MailApi.php have been deprecated and are registered with maxVersion as v11.
    • The OutboundEmailConfiguration/listendpoint in sugarcrm/modules/OutboundEmailConfiguration/clients/base/api/OutboundEmailConfigurationApi.php has been deprecated.Emails/enum/outbound_email_id can be used instead.
    • All routes in sugarcrm/modules/Emails/MailRecord.php have been deprecated.
  • As part of new Emails module work, many PHP methods, properties, and some Sidecar components have been deprecated and will be removed in a future Sugar release.
    • PHP methods
      Email::email2init()
      Email::email2saveAttachment()
      Email::safeAttachmentName()
      Email::email2ParseAddresses()
      Email::email2ParseAddressesForAddressesOnly()
      Email::email2GetMime()
      Email::sendEmailTest()
      Email::isDraftEmail()
      Email::email2Send()
      Email::getNamePlusEmailAddressesForCompose()
      Email::_arrayToDelimitedString()
      Email::saveTempNoteAttachments()
      Email::saveEmailAddresses()
      Email::linkEmailToAddress()
      Email::cleanEmails()
      Email::loadAdditionalEmailData()
      Email::getForwardHeader()
      Email::getNotes()
      Email::getReplyHeader()
      Email::quotePlainTextEmail()
      Email::quoteHtmlEmail()
      Email::quoteHtmlEmailForNewEmailUI()
      Email::check_email_settings()
      Email::js_set_archived()
      Email::u_get_clear_form_js()
      Email::pickOneButton()
      Email::getUserEditorPreference()
      Email::parse_addrs()
      Email::remove_empty_fields()
      Email::findEmailsLink()
      Email::handleAttachments()
      Email::hasSignatureInBody()
      Email::removeAllNewlines()
      Email::getStartPage()
      Email::send()
      Email::getSystemDefaultEmail()
      Email::create_new_list_query()
      Email::fill_in_additional_list_fields()
      Email::fill_in_additional_detail_fields()
      Email::quickCreateForm()
      Email::searchImportedEmails()
      Email::doesImportedEmailHaveAttachment()
      Email::_genereateSearchImportedEmailsQuery()
      Email::_generateSearchImportWhereClause()
      Email::trimLongTo()
      Email::distributionForm()
      Email::userSelectTable()
      Email::checkInbox()
      Email::fillPrimaryParentFields()
      Email::cid2Link()
      Email::cids2Links()
      Email::setFieldNullable()
      Email::revertFieldNullable()
      Email::toDatabaseSearchDateTime()
      Email::_setMailerFactoryClassName()
      Email::retrieveEmailAddresses()
    • PHP properties
      Email::$from_addr
      Email::$from_addr_name
      Email::$from_name
      Email::$to_addrs
      Email::$to_addrs_names
      Email::$to_addrs_arr
      Email::$to_addrs_emails
      Email::$to_addrs_ids
      Email::$cc_addrs
      Email::$cc_addrs_names
      Email::$cc_addrs_arr
      Email::$cc_addrs_emails
      Email::$cc_addrs_ids
      Email::$bcc_addrs
      Email::$bcc_addrs_names
      Email::$bcc_addrs_arr
      Email::$bcc_addrs_emails
      Email::$bcc_addrs_ids
      Email::$attachment_image
      Email::$imagePrefix
      Email::$type_name
      Email::$status_name
      Email::$type
      Email::$status
      Email::$flagged
      Email::$cachePath
      Email::$cacheFile
      Email::$replyDelimiter
      Email::$emailDescription
      Email::$emailDescriptionHTML
      Email::$emailRawSource
      Email::$link_action
      Email::$relationshipMap
      Email::$modifiedFieldDefs
      Email::$addedFieldDefs
      Email::$emailAddress
      Email::$saved_attachments
      Email::$et
      Email::$reply_to_addr
      Email::$reply_to_name
      Email::$reply_to_email
    • Sidecar components
      • EmailsAttachmentButtonField is deprecated.
        ./modules/Emails/clients/base/fields/attachment-button
      • EmailsRecipientsField is deprecated.
        ./modules/Emails/clients/base/fields/recipients
      • EmailsSenderField is deprecated. Use OutboundEmailField instead.
        ./modules/Emails/clients/base/fields/sender
      • EmailsComposeDocumentsLayout is deprecated
        Emails/clients/base/layouts/compose-documents
      • EmailsComposeActionbarField is deprecated. Use Htmleditable_tinymceField instead.
        Emails/clients/base/fields/compose-actionbar
      • EmailsArchiveEmailLayout is deprecated. Use CreateLayout instead.
        Emails/clients/base/layouts/archive-email
      • EmailsArchiveEmailView is deprecated. Use CreateView instead.
        Emails/clients/base/views/archive-email
      • EmailsComposeLayout is deprecated. Use ComposeEmailLayout instead.
        Emails/clients/base/layouts/compose
      • EmailsComposeView is deprecated. Use ComposeEmailView instead.
        Emails/clients/base/views/compose
      • EmailsComposeSenderoptionsView is deprecated.
        Emails/clients/base/views/compose-senderoptions
      • BaseAttachmentsField is deprecated. Use EmailAttachmentsField instead.
        clients/base/fields/attachments
  • As part of our new Email functionality, many of the APIs related to email have changed.
    • The following endpoints are new and available beginning in version 10:
      • POST /EmailAddresses
      • PUT /EmailAddresses/:record
      • GET /Emails/:record
      • GET /Emails/filter
      • GET /Emails
      • GET /Emails/count
      • POST /Emails/filter
      • POST /Emails/filter/count
      • GET /Emails/filter/count
      • POST /Emails/:record/link/:link_name/:remote_id
      • POST /Emails/:record/link
      • DELETE /Emails/:record/link/:link_name/:remote_id
      • POST /Emails/:record/link/:link_name/add_record_list/:remote_id
      • GET /Mail/recipients/find
      • POST /OutboundEmail
      • PUT /OutboundEmail/:record
    • The following endpoints are new and available beginning in version 11:
      • POST /Emails
      • PUT /Emails/:record
    • The following endpoints are now deprecated:
      • POST /Mail
      • POST /Mail/archive
      • POST /Mail/recipients/lookup
      • POST /Mail/address/validate
      • POST /Mail/attachment 
      • DELETE /Mail/attachment/:file_guid
      • DELETE /Mail/attachment/cache
      • GET /OutboundEmailConfiguration/list
  • A new Sugar Config option called smtp_mailer_debug has been added, making it easier to debug SMTP issues that occur using PHPMailer. Refer to the Developer Guide for more details.
  • AlertView#cancelClicked() now accepts the Event as a parameter and passes it to the onCancel callback.
  • AlertView#confirmClicked() now accepts the Event as a parameter and passes it to the onConfirm callback.
  • AlertView#closeClicked() now passes the Event parameter to the onClose callback.
  • EnumField#loadEnumOptions() now supports passing an error callback as an additional parameter.
  • The DragdropSelect2 Sidecar plug-in will now allows developers to provide a custom dropDraggedItems(sourceCollection, targetCollection, draggedItems, droppedItems) function.
  • The droppedItems are clones of the draggedItems which makes them safe to manipulate.
  • The default drop implementation, if no dropDraggedItems() exists, removes the dragged items from the sourceCollection and adds them to the targetCollection.
  • Added app.utils.getReadableFileSize() for getting a file size in a human-readable format. The function produces descriptions that sacrifice percision for readability. For example, a file size like 1014K is more accurrate, but a user would more likely expect to see 1M.
  • Added app.utils.openEmailCreateDrawer()for opening a layout for creating emails in a drawer. It is designed for opening the "create" layout for creating an archived email and the "compose-email" layout for creating a draft or sending an email.
  • AlertView#cancelClicked() now accepts the Event as a parameter and passes it to the onCancel callback.
  • AlertView#confirmClicked() now accepts the Event as a parameter and passes it to the onConfirm callback.
  • AlertView#closeClicked() now passes the Event parameter to the onClose callback.
  • EnumField#loadEnumOptions() now supports passing an error callback as an additional parameter.
  • The DragdropSelect2 Sidecar plug-in will now allows developers to provide a custom dropDraggedItems(sourceCollection, targetCollection, draggedItems, droppedItems) function.
  • The droppedItems are clones of the draggedItems which makes them safe to manipulate.
  • The default drop implementation, if no dropDraggedItems() exists, removes the dragged items from the sourceCollection and adds them to the targetCollection.
  • Added app.utils.getReadableFileSize() for getting a file size in a human-readable format. The function produces descriptions that sacrifice percision for readability. For example, a file size like 1014K is more accurrate, but a user would more likely expect to see 1M.
  • Added app.utils.openEmailCreateDrawer()for opening a layout for creating emails in a drawer. It is designed for opening the "create" layout for creating an archived email and the "compose-email" layout for creating a draft or sending an email.
  • Recipients returned by Sugar Email REST APIs will now include standard ACL data (_acl) for each object.
  • The Sidecar Field#setDisabled() API now supports a boolean trigger option that will trigger a field:disabled event on the current Contextwhen called.
  • The Backbone.js library has been upgraded from version 1.2.3 to 1.3.3. View the Backbone.js change log for more details on how your Sidecar-based customizations may be affected.
  • Sidecar BeanCollections and MixedBeanCollections now take full advantage of Sugar Collection REST APIs. They now track changes of multiple adds or removals of related records, support for pagination, etc. Work with related collections of records within Sidecar can now be done more easily and efficiently.
  • The deprecated resetOptions method in sugar/sidecar/src/data/bean-collection.js has been removed.
  • An unused jquery-quicksearch plug-in was removed in this Sugar release. Ensure that customizations do not use the quicksearch jQuery plug-in and that they do not reference ./sidecar/lib/jquery/wicked.js.
  • The jquery-placeholder plug-in has been removed. It is no longer needed in modern browsers that fully support HTML5. This change will not affect customizations unless direct references exist to ./sidecar/lib/jquery-placeholder.
  • The iframe.transport jQuery plug-in has been deprecated and will be removed in a future Sugar release. File uploads should be accomplished by sending FormData objects as part of AJAX requests.
  • The unminified Sidecar framework source code has been converted into EcmaScript 2015 modules in this Sugar release. Sidecar code is transpiled to EcmaScript 5 and minified when loaded into browsers, so these structural changes do not affect Sugar customizations.
  • The Sidecar DataManager API DataManager#getRelationshipFields() has been deprecated and will be removed in a future Sugar release. Use DataManager#getRelationFields instead.
  • In this Sugar release, we've made some changes to Sidecar framework which will prevent customizations from calling private Sidecar methods unless the JS Config sidecarCompatMode is true. The default value will be false. The compatibility mode should be used as a temporary work around. All JavaScript customizations are expected to use public Sidecar APIs.
    If necessary, here is an example of how you can enable sidecarCompatMode using config_override.php.
    $sugar_config['additional_js_config'] = array('sidecarCompatMode' => true);
    Many files have moved as part of this refactoring effort as well.
    Old Location New Location
    sidecar/lib/backbone/** sidecar/node_modules/backbone/
    sidecar/lib/jasmine-sinon/jasmine-sinon.js sidecar/node_modules/jasmine-sinon/lib/jasmine-sinon.js
    sidecar/lib/jquery/jquery.min.js sidecar/node_modules/jquery/dist/jquery.min.js
    sidecar/lib/jquery/jquery-migrate-1.2.1.min.js sidecar/node_modules/jquery-migrate/dist/jquery-migrate.min.js
    sidecar/lib/jquery/jquery.iframe.transport.js sidecar/node_modules/jquery.iframe-transport/jquery.iframe-transport.js
    sidecar/lib/jquery-ui/js/** include/javascript/jquery
    sidecar/lib/sugarapi/sugarapi.js sidecar/node_modules/@sugarcrm/ventana/src/client.js
     
    The following Sidecar methods have been deprecated an will be removed in a future Sugar release. Please update your customizations to use alternative APIs.
    App.context.getContext()
    App.acl.clearCache()   
    App.acl.action2permission  
    App.Acl._accessToAny   
    App.error.initialize() 
    App.error.remoteLogging
    App.error.throwErrorWithCallStack()
    App.routing.stop() 
    App.validation.validators.url()
    The following deprecated Sidecar methods were removed. Please verify that your customizations do not use this method prior to upgrading to Sugar 7.10.
    beanCollection#resetOptions()
    The following Sidecar files were removed. Please verify that your customizations do not reference these files prior to upgrading to Sugar 7.10.
    ./include/api/help/module_filter_record_get_help.html
    ./include/javascript/jquery/jquery.effects.custombounce.js
    ./sidecar/gulp/assets/files.json
    ./sidecar/gulp/assets/base-files.json
    ./sidecar/gulp/assets/default-tests.json
    ./sidecar/gulp/assets/jquery.json
    ./sidecar/gulp/assets/zepto.json
    ./sidecar/gulp/util.js
    ./sidecar/lib/backbone
    ./sidecar/lib/backbone/backbone.js
    ./sidecar/lib/backbone/backbone.min.js
    ./sidecar/lib/jasmine
    ./sidecar/lib/jasmine/jasmine_favicon.png
    ./sidecar/lib/jasmine/jasmine-html.js
    ./sidecar/lib/jasmine/jasmine.js
    ./sidecar/lib/jasmine/MIT.LICENSE
    ./sidecar/lib/jasmine/jasmine.css
    ./sidecar/lib/jasmine-zepto
    ./sidecar/lib/jasmine-zepto/jasmine-zepto.js
    ./sidecar/lib/jasmine-ci
    ./sidecar/lib/jasmine-ci/utils
    ./sidecar/lib/jasmine-ci/utils/core.js
    ./sidecar/lib/jasmine-ci/utils/console-runner.js
    ./sidecar/lib/jasmine-ci/jasmine-reporters
    ./sidecar/lib/jasmine-ci/jasmine-reporters/jasmine.phantomjs-reporter.js
    ./sidecar/lib/jasmine-jquery
    ./sidecar/lib/jasmine-jquery/jasmine-jquery.js
    ./sidecar/lib/jasmine-sinon
    ./sidecar/lib/jasmine-sinon/jasmine-sinon.js
    ./sidecar/lib/jquery-placeholder
    ./sidecar/lib/jquery-placeholder/jquery.placeholder.js
    ./sidecar/lib/jquery-placeholder/README.md
    ./sidecar/lib/jquery-placeholder/LICENSE-MIT.txt
    ./sidecar/lib/jquery-placeholder/tests
    ./sidecar/lib/jquery-placeholder/tests/tests.js
    ./sidecar/lib/jquery-placeholder/tests/index.html
    ./sidecar/lib/jquery-placeholder/demo.html
    ./sidecar/lib/jquery-placeholder/bower.json
    ./sidecar/lib/jquery-ui
    ./sidecar/lib/jquery-ui/css
    ./sidecar/lib/jquery-ui/css/smoothness
    ./sidecar/lib/jquery-ui/css/smoothness/jquery-ui-1.11.4.custom.min.css
    ./sidecar/lib/jquery-ui/css/smoothness/images
    ./sidecar/lib/jquery-ui/css/smoothness/images/ui-bg_glass_65_ffffff_1x400.png
    ./sidecar/lib/jquery-ui/css/smoothness/images/ui-icons_454545_256x240.png
    ./sidecar/lib/jquery-ui/css/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png
    ./sidecar/lib/jquery-ui/css/smoothness/images/ui-icons_888888_256x240.png
    ./sidecar/lib/jquery-ui/css/smoothness/images/ui-bg_flat_75_ffffff_40x100.png
    ./sidecar/lib/jquery-ui/css/smoothness/images/ui-bg_glass_75_dadada_1x400.png
    ./sidecar/lib/jquery-ui/css/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png
    ./sidecar/lib/jquery-ui/css/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png
    ./sidecar/lib/jquery-ui/css/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png
    ./sidecar/lib/jquery-ui/css/smoothness/images/ui-icons_2e83ff_256x240.png
    ./sidecar/lib/jquery-ui/css/smoothness/images/ui-icons_222222_256x240.png
    ./sidecar/lib/jquery-ui/css/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png
    ./sidecar/lib/jquery-ui/css/smoothness/images/ui-icons_cd0a0a_256x240.png
    ./sidecar/lib/jquery-ui/js
    ./sidecar/lib/jquery-ui/js/jquery-ui-1.11.4.custom.min.js
    ./sidecar/lib/jquery-ui/js/jquery-1.7.1.min.js
    ./sidecar/lib/jquery/wicked.js
    ./sidecar/lib/jquery/jquery-migrate-1.2.1.min.js
    ./sidecar/lib/jquery/jquery.iframe.transport.js
    ./sidecar/lib/jquery/jquery.min.js
    ./sidecar/lib/sugarapi/sugarapi.js
    ./sidecar/lib/sugarapi/demoServerData.js
    ./sidecar/lib/sugarapi/demoRestServer.js
    ./sidecar/lib/zepto
    ./sidecar/lib/zepto/ajax.js
    ./sidecar/lib/zepto/detect.js
    ./sidecar/lib/zepto/event.js
    ./sidecar/lib/zepto/fx.js
    ./sidecar/lib/zepto/fx_methods.js
    ./sidecar/lib/zepto/readme.txt
    ./sidecar/lib/zepto/selector.js
    ./sidecar/lib/zepto/touch.js
    ./sidecar/lib/zepto/zepto.js
    ./sidecar/src/core/cookies.js
  • Deprecated Sidecar method signatures for the following functions have been removed:
    Context#resetLoadFlag()
    MetadataManager#getField()
    Router#route()
    ViewManager#createField()
  • The following Sidecar functions have been deprecated and will be removed in a future Sugar release.
    Utils.Date.parse()
    Utils.Date.guessFormat()
    Utils.Date.parseFormat()
    Utils.Date.format()
    Utils.Date.roundTime()
    Utils.Date.UTCtoLocalTime()
    Utils.Date.UTCtoTimezone()
    Utils.Date.toUTC()
    Utils.Date.getRelativeTimeLabel()
    Utils.Date.parseDisplayDefault()
    Utils.Date.stripIsoTimeDelimterAndTZ()
    Utils.Date.isIso()
  • The deprecated Sidecar method AlertView#close() has been removed. Use AlertView#dispose() instead.
  • The deprecated Sidecar property Layout#meta has been removed. Use Layout#xmeta instead.
  • The RecordView method RecordView#initButtons() has been deprecated. Ensure that you do not have custom code that calls this method. It is not necessary to call this method directly.
  • View/ViewManager.createField() takes a new parameter, nested. Set nested to true when the field is part of another parent field that controls the nested field's lifecycle. For example, the individual fields associated with a fieldset are nested. When nested is set to true, the field will not be added to the parent View's list of fields. nested is set to false by default.
  • The following new REST API endpoints have been added. Refer to the the Developer Guide for more information.
    GET rest/v11/Dashboards
    POST rest/v11/Dashboards
  • We have created version 11 of the Sugar REST API. The previous API version (10) will continue to behave as before.Refer to the Developer Guide for more information.
  • The deprecated REST endpoint /rest///filter/ has been removed. Use /rest///filter?filter_id= instead.
  • The view_name field has changed from type varchar to enum. The view_name field will be converted during upgrade process. If you happen to have custom layouts that use Dashboards besides the default "Record," "List," or "Activity Stream," then you will need to update the "dashboard_view_name_list" dropdown list to add those additional layouts.
  • The dashboard_module field has been changed from type varchar to enum.
  • A new ACL class called SugarACLAdminOnlyFields has been created. The ACL allows for a list of non_writeable_fields that can only be editable by a Sugar admin user. This is used on new Dashboards module to ensure that only admin users are able to designate default dashboards which are pushed to all users within the set team.
  • As part of the new shareable dashboards, the old default dashboards that were stored in metadata are converted into dashboard records in the Sugar database. To configure different default dashboards for Sugar users, please use shareable dashboards instead of modifying dashboard metadata.
    The following default dashboard metadata locations are no longer recognized in this Sugar release.
    ./modules//clients/base/layouts/list-dashboard
    ./modules//clients/base/layouts/record-dashboard
  • As part of the new sharable dashboards, the previous out-of-the-box dashboards will be converted to the new style of dashboard. If you have customized your dashboards to names other than "list-dashboard.php" or "record-dashboard.php," they will NOT be upgraded to the new dashboard type, but the metadata will still exist. If you want to create a shareable dashboard record similar to your old customized dashboard, you can generate it manually through the UI. Otherwise, everything should continue to work as it has.
  • The deprecated PHP method Account::remove_redundant_http() has been removed. Please ensure your customizations are not using it.
  • The portal home page has been renamed. As part of this renaming, the following files have been renamed:< >sugarcrm/clients/portal/layouts/dashboard/dashboard.php is now sugarcrm/clients/portal/layouts/home/home.phpsugarcrm/clients/portal/layouts/dashboard/dashboard.js is now sugarcrm/clients/portal/layouts/home/home.jsdashboard-list has been renamed to portal-list. As part of this renaming, the following files have been renamed:< >sugarcrm/clients/portal/layouts/dashboard-list/dashboard-list.php is now sugarcrm/clients/portal/layouts/portal-list/portal-list.phpsugarcrm/clients/portal/views/dashboard-list-top/dashboard-list-top.hbs is now sugarcrm/clients/portal/views/portal-list-top/portal-list-top.hbssugarcrm/clients/portal/views/dashboard-list-top/dashboard-list-top.js is now sugarcrm/clients/portal/views/portal-list-top/portal-list-top.jssugarcrm/modules/KBContents/clients/portal/layouts/list-dashboard/list-dashboard.php has been replaced with sugarcrm/modules/KBContents/clients/portal/layouts/rhs-pane/rhs-pane.ph. Any customizations related to list-dashboard.php will need to be updated.
  • The hidden sidebar on the right hand side of the Home dashboard is being removed. As part of this removal, sugarcrm/modules/Home/clients/base/layouts/record/record.js will be deleted.
  • Generating a dashboard from metadata has been deprecated. All dashboards should be created using sharable dashboards.
  • As part of the new sharable dashboards, all custom Dashboard module record views will be renamed to end in .bak. You have the option of retrieving your custom Dashboard record view by renaming it so it does not end in .bak. Note that if you reinstate your old custom Dashboard record view, you will override the Sugar dashboard record view. A future release will remove all custom Dashboard record views ending in .bak, so you should review them to see if you still need them.
  • The REST API version can now be specified via an HTTP Accept header. The REST API version should be specified in either the URL or in the HTTP Accept header but not in both locations at once. Both of the examples below represent valid requests to v10 API:
    GET /rest/v10/me
    GET /rest/me
    ...
    Accept: application/vnd.sugarcrm.core+json; version=10
  • We have upgraded the Doctrine Database Abstraction Layer (DBAL) library from version 2.5.4 to 2.5.12. For more information, refer to the Doctrine DBAL website.
  • New Sugar REST APIs for administering Elasticsearch have been added. More details are available in the REST API documentation.

    rest//Administration/elasticsearch/refresh/status
    rest//Administration/elasticsearch/refresh/trigger
    rest//Administration/elasticsearch/refresh/enable
    rest//Administration/elasticsearch/replicas/status
    rest//Administration/elasticsearch/replicas/enable
  • Admins can now control

« Back to Releases

Trustpilot