RDL sandboxing for Microsoft Dynamics 365 (online)

 

Applies To: Dynamics 365 (online), Dynamics CRM Online

In Microsoft Dynamics 365 (online), the reports run in the sandbox mode. This is done by enabling Report Definition Language (RDL) Sandboxing in Microsoft SQL Server Reporting Services. The RDL Sandboxing lets you detect and restrict the usage of specific types of resources. As a result, certain features in Microsoft Dynamics 365 (online) may not be available. For more information, see MSDN: Enabling and Disabling RDL Sandboxing.

The current RDL Sandboxing configuration settings in Microsoft Dynamics 365 (online) are described in the following sections in this topic.

In this topic

Limits of the array result length and string result length

Allowed types and denied members

Common denied members

Limits of the array result length and string result length

The maximum number of items allowed in an array return value for an RDL expression is increased from 250 to 102400. The maximum number of items allowed in a string return value for an RDL expression is also increased from 250 to 102400. This enables you to include images and logos with sizes up to 75 KB, which will be stored in a database with Base64 encoding.

The MaxResourceSize is set to 2000. This lets you include external images in a report up to 1500 KB in size. More information:  Add an External Image (Report Builder and SSRS)

Allowed types and denied members

The RDL Sandboxing feature enables you to create a list of approved types and a list of denied members. The list of approved types is called an allow list. The list of denied members that are not permitted in the RDL expressions is called a block list.

The following table contains a list of allowed types and denied members available in sandbox mode in Microsoft Dynamics 365 (online).

Allowed Types

Denied Members

System.Array

CreateInstance

Finalize

GetType

MemberwiseClone

Resize

System.DateTime

FromBinary

GetDateTimeFormats

GreaterThan

GreaterThanOrEqual

System.Object

GetType

MemberwiseClone

ReferenceEquals

System.DbNull

Finalize

MemberwiseClone

GetObjectData

GetTypeCode

System.Math

BigMul

DivRem

IEEERemainder

E

PI

Pow

System.String

System.TimeSpan

Hours

TicksPerDay

TicksPerHour

TicksPerMillisecond

TicksPerMinute

TicksPerSecond

Zero

TryParse

TryParseExact

System.Convert

ChangeType

IConvertible.ToBoolean

IConvertible.ToByte

IConvertible.ToChar

IConvertible.ToDateTime

IConvertible.ToDecimal

IConvertible.ToDouble

IConvertible.ToInt16

IConvertible.ToInt32

IConvertible.ToInt64

IConvertible.ToSByte

IConvertible.ToSingle

IConvertible.ToType

IConvertible.ToUInt16

IConvertible.ToUInt32

IConvertible.ToUInt64

System.StringComparer

Create

Finalize

System.TimeZone

Finalize

GetType

MemberwiseClone

System.Uri

Unescape

Parse

Escape

Finalize

System.UriBuilder

Finalize

System.Globalization.CultureInfo

ClearCachedData

System.Text.RegularExpressions.Match

Empty

NextMatch

Result

Synchronized

System.Text.RegularExpressions.Regex

CacheSize

CompileToAssembly

GetGroupNames

GetGroupNumbers

GetHashCode

Unescape

UseOptionC

UseOptionR

capnames

caps

capsize

capslist

roptions

pattern

factory

IsMatch

Matches

Iserializable.GetObjectData

InitializeReferences

RightToLeft

Options

Microsoft.VisualBasic.Constants

vbAbort

vbAbortRetryIgnore

vbApplicationModal

vbArchive

vbBinaryCompare

vbCancel

vbCritical

vbDefaultButton1

vbDefaultButton2

vbDefaultButton3

vbExclamation

vbFormFeed

vbGet

vbHidden

vbHide

vbHiragana

vbIgnore

vbInformation

vbKatakana

vbLet

vbLinguisticCasing

vbMaximizedFocus

vbMinimizedFocus

vbMinimizedNoFocus

vbMsgBoxHelp

vbMsgBoxRight

vbMsgBoxRtlReading

vbMsgBoxSetForeground

vbNo

vbNormal

vbNormalFocus

vbNormalNoFocus

vbObjectError

vbOK

vbOKCancel

vbOKOnly

vbQuestion

vbReadOnly

vbRetry

vbRetryCancel

vbSet

vbSystem

vbSystemModal

VbTypeName

vbVolume

Zero

Microsoft.VisualBasic.ControlChars

Finalize

GetType

MemberwiseClone

Microsoft.VisualBasic.Conversion

Err

ErrorToString

Fix

Microsoft.VisualBasic.DateInterval

Finalize

GetType

MemberwiseClone

Microsoft.VisualBasic.Financial

Finalize

GetType

MemberwiseClone

IRR

NPV

MIRR

Microsoft.VisualBasic.Interaction

AppActivate

Beep

CallByName

Command

CreateObject

Environ

Finalize

GetAllSettings

GetObject

GetSetting

GetType

InputBox

MemberwiseClone

MsgBox

SaveSetting

Shell

Choose

Switch

Microsoft.VisualBasic.Information

Erl

Err

IsError

IsDBNull

Lbound

Ubound

SystemTypeName

Microsoft.VisualBasic.Strings

Finalize

GetType

MemberwiseClone

Lset

Rset

Microsoft.Crm.Reporting.RdlHelper

Common denied members

The following table contains a list of denied members common in allowed types:

DateString

Duration

Equality

Equals

Erl

Filter

GetChar

GroupNameFromNumber

GroupNumberFromName

Int

MaxValue

MinValue

Negate

Timer

TimeString

ToBinary

Finalize

GetType

MemberwiseClone

See Also

Report & Analytics with Dynamics 365
Example reports

© 2016 Microsoft. All rights reserved. Copyright