Table of Contents

Class CustomReportSchedule

Namespace
Geotab.Checkmate.ObjectModel
Assembly
Geotab.Checkmate.ObjectModel.dll

Used to represent the schedule for emailed reports and dashboard graphic elements.

public class CustomReportSchedule : NameEntity, IEntity, IComparable, IIdentifiable, IGroupLinked, IDefaultable
Inheritance
CustomReportSchedule
Implements
Inherited Members

Constructors

CustomReportSchedule()

Initializes a new instance of the CustomReportSchedule class.

public CustomReportSchedule()

CustomReportSchedule(Id?)

Initializes a new instance of the CustomReportSchedule class.

public CustomReportSchedule(Id? id)

Parameters

id Id

The Id.

CustomReportSchedule(Id?, string?, string?, bool?, ReportFrequency?, ReportPeriod?, ReportTemplate?, ReportDestination?, ReportTypedArgument?, DateTime?, User?, IList<Group>?, GroupFilter?, IList<Group>?, IList<Group>?, DateTime?, string?)

Initializes a new instance of the CustomReportSchedule class.

public CustomReportSchedule(Id? id, string? name, string? description, bool? isActive, ReportFrequency? frequency, ReportPeriod? period, ReportTemplate? template, ReportDestination? destination, ReportTypedArgument? arguments, DateTime? lastRun, User? lastModifiedUser, IList<Group>? scopeGroups, GroupFilter? scopeGroupFilter, IList<Group>? includeAllChildrenGroups, IList<Group>? includeDirectChildrenOnlyGroups, DateTime? lastUpdated = null, string? interactiveSettings = null)

Parameters

id Id

The Id.

name string

The name of the report schedule.

description string

The description of the report schedule.

isActive bool?

If set to true [active].

frequency ReportFrequency?

The frequency.

period ReportPeriod?

The period.

template ReportTemplate

The template.

destination ReportDestination?

The destination.

arguments ReportTypedArgument

The arguments.

lastRun DateTime?

The last run.

lastModifiedUser User

The last modified user.

scopeGroups IList<Group>

The scope groups.

scopeGroupFilter GroupFilter

The scope group filter.

includeAllChildrenGroups IList<Group>

The include all children groups.

includeDirectChildrenOnlyGroups IList<Group>

The include direct children only groups.

lastUpdated DateTime?

The last updated time.

interactiveSettings string

The settings for interactive dashboards.

Properties

Arguments

Gets or sets the arguments of scheduled report.

public ReportTypedArgument? Arguments { get; set; }

Property Value

ReportTypedArgument

object

ArgumentsJsonText

Gets or sets argument of the report represented in Json formatted text.

public string? ArgumentsJsonText { get; set; }

Property Value

string

string

Description

Gets or sets the description of the report schedule.

public string? Description { get; set; }

Property Value

string

string

Destination

Gets or sets the ReportDestination (email or dashboard) of scheduled report.

public ReportDestination? Destination { get; set; }

Property Value

ReportDestination?

ReportDestination

Frequency

Gets or sets the frequency of scheduled report.

public ReportFrequency? Frequency { get; set; }

Property Value

ReportFrequency?

ReportFrequency

Groups

Gets or sets the Group(s) collection.

public virtual IList<Group>? Groups { get; set; }

Property Value

IList<Group>

List<T>

IncludeAllChildrenGroups

Gets or sets Group(s) that define the groups that dashboard/email to be sent to all users under it.

public IList<Group>? IncludeAllChildrenGroups { get; set; }

Property Value

IList<Group>

Group

IncludeDirectChildrenOnlyGroups

Gets or sets Group(s) that the groups that dashboard/email to be sent to direct users under it.

public IList<Group>? IncludeDirectChildrenOnlyGroups { get; set; }

Property Value

IList<Group>

Group

IndividualRecipients

Gets or sets the individually added User(s) as the dashboard/email recipients.

public IList<User>? IndividualRecipients { get; set; }

Property Value

IList<User>

User

InteractiveSettings

Gets or sets interactive dashboard settings of scheduled report.

public string? InteractiveSettings { get; set; }

Property Value

string

string

IsActive

Gets or sets a value indicating whether weather the scheduled report is active or not.

public bool? IsActive { get; set; }

Property Value

bool?

bool

LastModifiedUser

Gets or sets the last modified user.

public User? LastModifiedUser { get; set; }

Property Value

User

User

LastRun

Gets or sets the date of the last run of the scheduled report.

public DateTime? LastRun { get; set; }

Property Value

DateTime?

DateTime

LastUpdated

Gets or sets the last updated time.

public DateTime? LastUpdated { get; set; }

Property Value

DateTime?

DateTime

NullifyScopeGroupFilter

Gets or sets a value to nullify ScopeGroupFilter.

public bool? NullifyScopeGroupFilter { get; set; }

Property Value

bool?

NullifyScopeGroupFilter

Period

Gets or sets the ReportPeriod of scheduled report.

public ReportPeriod? Period { get; set; }

Property Value

ReportPeriod?

ReportPeriod

ScopeGroupFilter

Gets or sets GroupFilter(s) that define data scope group filter of the report schedule.

public GroupFilter? ScopeGroupFilter { get; set; }

Property Value

GroupFilter

GroupFilter

ScopeGroups

Gets or sets Group(s) that define data scope of the report schedule.

[Obsolete("Please use ScopeGroupFilter", false)]
public IList<Group>? ScopeGroups { get; set; }

Property Value

IList<Group>

Group

Template

Gets or sets the ReportTemplate of scheduled report.

public ReportTemplate? Template { get; set; }

Property Value

ReportTemplate

ReportTemplate

Methods

Clone()

Creates a new object that is a copy of the current instance.

public override IEntity Clone()

Returns

IEntity

A new object that is a copy of this instance.

GetNextRun(TimeZoneInfo)

Get next run time of the report based on given last run time and frequency of reporting.

public DateTime? GetNextRun(TimeZoneInfo timeZoneId)

Parameters

timeZoneId TimeZoneInfo

The Timezone identifier.

Returns

DateTime?

DateTime

Exceptions

ArgumentException

An unknown value was passed.

PopulateDefaults()

Populate non-required empty (null) properties with default values.

public void PopulateDefaults()