本文整理汇总了C#中Metric.ToEntityReference方法的典型用法代码示例。如果您正苦于以下问题:C# Metric.ToEntityReference方法的具体用法?C# Metric.ToEntityReference怎么用?C# Metric.ToEntityReference使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Metric
的用法示例。
在下文中一共展示了Metric.ToEntityReference方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Run
/// <summary>
/// This method first connects to the Organization service. Afterwards,
/// a goal is created specifying the target count. The goal is then
/// rolled up, the actual and in-progress values are overridden and finally the
/// goal is closed.
/// </summary>
/// <param name="serverConfig">Contains server connection information.</param>
/// <param name="promptforDelete">When True, the user will be prompted to delete all
/// created entities.</param>
public void Run(ServerConnection.Configuration serverConfig, bool promptforDelete)
{
try
{
//<snippetOverrideGoalTotalCount1>
// Connect to the Organization service.
// The using statement assures that the service proxy will be properly disposed.
using (_serviceProxy = new OrganizationServiceProxy(serverConfig.OrganizationUri, serverConfig.HomeRealmUri,serverConfig.Credentials, serverConfig.DeviceCredentials))
{
// This statement is required to enable early-bound type support.
_serviceProxy.EnableProxyTypes();
CreateRequiredRecords();
// Create the count metric, setting the Metric Type to 'Count' by
// setting IsAmount to false.
Metric sampleMetric = new Metric()
{
Name = "Sample Count Metric",
IsAmount = false,
};
_metricId = _serviceProxy.Create(sampleMetric);
sampleMetric.Id = _metricId;
Console.Write("Created phone call metric, ");
#region Create RollupFields
// Create RollupField which targets completed (received) phone calls.
RollupField actual = new RollupField()
{
SourceEntity = PhoneCall.EntityLogicalName,
GoalAttribute = "actualinteger",
SourceState = 1,
SourceStatus = 4,
EntityForDateAttribute = PhoneCall.EntityLogicalName,
DateAttribute = "actualend",
MetricId = sampleMetric.ToEntityReference()
};
_actualId = _serviceProxy.Create(actual);
Console.Write("created actual revenue RollupField, ");
// Create RollupField which targets open (in-progress) phone calls.
RollupField inprogress = new RollupField()
{
SourceEntity = PhoneCall.EntityLogicalName,
GoalAttribute = "inprogressinteger",
SourceState = 0,
EntityForDateAttribute = PhoneCall.EntityLogicalName,
DateAttribute = "createdon",
MetricId = sampleMetric.ToEntityReference()
};
_inprogressId = _serviceProxy.Create(inprogress);
Console.Write("created in-progress revenue RollupField, ");
#endregion
#region Create the goal rollup queries
// Note: Formatting the FetchXml onto multiple lines in the following
// rollup queries causes the length property to be greater than 1,000
// chars and will cause an exception.
// The following query locates closed incoming phone calls.
GoalRollupQuery goalRollupQuery = new GoalRollupQuery()
{
Name = "Example Goal Rollup Query - Actual",
QueryEntityType = PhoneCall.EntityLogicalName,
FetchXml = @"<fetch version='1.0' output-format='xml-platform' mapping='logical' distinct='false'><entity name='phonecall'><attribute name='subject'/><attribute name='statecode'/><attribute name='prioritycode'/><attribute name='scheduledend'/><attribute name='createdby'/><attribute name='regardingobjectid'/><attribute name='activityid'/><order attribute='subject' descending='false'/><filter type='and'><condition attribute='directioncode' operator='eq' value='0'/><condition attribute='statecode' operator='eq' value='1' /></filter></entity></fetch>"
};
_rollupQueryIds.Add(_serviceProxy.Create(goalRollupQuery));
goalRollupQuery.Id = _rollupQueryIds[0];
// The following query locates open incoming phone calls.
GoalRollupQuery inProgressGoalRollupQuery = new GoalRollupQuery()
{
Name = "Example Goal Rollup Query - InProgress",
QueryEntityType = PhoneCall.EntityLogicalName,
FetchXml = @"<fetch version='1.0' output-format='xml-platform' mapping='logical' distinct='false'><entity name='phonecall'><attribute name='subject'/><attribute name='statecode'/><attribute name='prioritycode'/><attribute name='scheduledend'/><attribute name='createdby'/><attribute name='regardingobjectid'/><attribute name='activityid'/><order attribute='subject' descending='false'/><filter type='and'><condition attribute='directioncode' operator='eq' value='0'/><condition attribute='statecode' operator='eq' value='0' /></filter></entity></fetch>"
};
_rollupQueryIds.Add(_serviceProxy.Create(inProgressGoalRollupQuery));
inProgressGoalRollupQuery.Id = _rollupQueryIds[1];
Console.Write("created rollup queries for incoming phone calls.\n");
Console.WriteLine();
#endregion
#region Create a goal to track the open incoming phone calls.
//.........这里部分代码省略.........
示例2: Run
/// <summary>
/// This method first connects to the Organization service. Afterwards, a
/// rollup field and rollup query are created. The rollup query is only
/// associated with the child goal. Then a parent goal and child goal
/// are created. The goals are both rolled up and their results are displayed.
/// </summary>
/// <param name="serverConfig">Contains server connection information.</param>
/// <param name="promptforDelete">When True, the user will be prompted to delete all
/// created entities.</param>
public void Run(ServerConnection.Configuration serverConfig, bool promptforDelete)
{
try
{
//<snippetUsingQueriesToTrackGoals1>
// Connect to the Organization service.
// The using statement assures that the service proxy will be properly disposed.
using (_serviceProxy = new OrganizationServiceProxy(serverConfig.OrganizationUri, serverConfig.HomeRealmUri,serverConfig.Credentials, serverConfig.DeviceCredentials))
{
// This statement is required to enable early-bound type support.
_serviceProxy.EnableProxyTypes();
CreateRequiredRecords();
// Create the revenue metric, setting the Amount Data Type to 'Money'
// and the Metric Type to 'Amount'.
Metric sampleMetric = new Metric()
{
Name = "Sample Revenue Metric",
AmountDataType = new OptionSetValue(0),
IsAmount = true,
};
_metricId = _serviceProxy.Create(sampleMetric);
sampleMetric.Id = _metricId;
Console.Write("Created revenue metric, ");
#region Create RollupFields
// Create RollupField which targets the actual totals.
RollupField actual = new RollupField()
{
SourceEntity = SalesOrder.EntityLogicalName,
SourceAttribute = "totalamount",
GoalAttribute = "actualmoney",
SourceState = 1,
EntityForDateAttribute = SalesOrder.EntityLogicalName,
DateAttribute = "datefulfilled",
MetricId = sampleMetric.ToEntityReference()
};
_actualId = _serviceProxy.Create(actual);
Console.Write("created actual revenue RollupField, ");
#endregion
#region Create the goal rollup query
// The query locates sales orders in the first sales
// representative's area (zip code: 60661) and with a value
// greater than $1,000.
GoalRollupQuery goalRollupQuery = new GoalRollupQuery()
{
Name = "First Example Goal Rollup Query",
QueryEntityType = SalesOrder.EntityLogicalName,
FetchXml = @"<fetch mapping=""logical"" version=""1.0""><entity name=""salesorder""><attribute name=""customerid"" /><attribute name=""name"" /><attribute name=""salesorderid"" /><attribute name=""statuscode"" /><attribute name=""totalamount"" /><order attribute=""name"" /><filter><condition attribute=""totalamount"" operator=""gt"" value=""1000"" /><condition attribute=""billto_postalcode"" operator=""eq"" value=""60661"" /></filter></entity></fetch>"
};
_rollupQueryId = _serviceProxy.Create(goalRollupQuery);
goalRollupQuery.Id = _rollupQueryId;
Console.Write("created rollup query.");
Console.WriteLine();
#endregion
#region Create two goals: one parent and one child goal
// Create the parent goal.
Goal parentGoal = new Goal()
{
Title = "Parent Goal Example",
RollupOnlyFromChildGoals = true,
TargetMoney = new Money(1000.0M),
IsFiscalPeriodGoal = false,
MetricId = sampleMetric.ToEntityReference(),
GoalOwnerId = new EntityReference
{
Id = _salesManagerId,
LogicalName = SystemUser.EntityLogicalName
},
OwnerId = new EntityReference
{
Id = _salesManagerId,
LogicalName = SystemUser.EntityLogicalName
},
GoalStartDate = DateTime.Today.AddDays(-1),
GoalEndDate = DateTime.Today.AddDays(30)
};
_parentGoalId = _serviceProxy.Create(parentGoal);
parentGoal.Id = _parentGoalId;
//.........这里部分代码省略.........
示例3: Run
/// <summary>
/// This method first connects to the Organization service. Afterwards, the
/// sample creates a goal and child goals for a particular fiscal period.
/// Stretched targets are tracked as well.
/// </summary>
/// <param name="serverConfig">Contains server connection information.</param>
/// <param name="promptforDelete">When True, the user will be prompted to delete all
/// created entities.</param>
public void Run(ServerConnection.Configuration serverConfig, bool promptforDelete)
{
try
{
//<snippetRollupAllGoalsForFiscalPeriodAndStretchedTargetRevenue1>
// Connect to the Organization service.
// The using statement assures that the service proxy will be properly disposed.
using (_serviceProxy = new OrganizationServiceProxy(serverConfig.OrganizationUri, serverConfig.HomeRealmUri,serverConfig.Credentials, serverConfig.DeviceCredentials))
{
// This statement is required to enable early-bound type support.
_serviceProxy.EnableProxyTypes();
CreateRequiredRecords();
#region Create goal metric
// Create the metric, setting the Metric Type to 'Count' and enabling
// stretch tracking.
Metric metric = new Metric()
{
Name = "Sample Count Metric",
IsAmount = false,
IsStretchTracked = true
};
_metricId = _serviceProxy.Create(metric);
metric.Id = _metricId;
Console.Write("Created count metric, ");
#endregion
#region Create RollupFields
// Create RollupField which targets completed (received) phone calls.
RollupField actual = new RollupField()
{
SourceEntity = PhoneCall.EntityLogicalName,
GoalAttribute = "actualinteger",
SourceState = 1,
SourceStatus = 4,
EntityForDateAttribute = PhoneCall.EntityLogicalName,
DateAttribute = "actualend",
MetricId = metric.ToEntityReference()
};
_actualId = _serviceProxy.Create(actual);
Console.Write("created completed phone call RollupField, ");
#endregion
#region Create the goal rollup queries
// Note: Formatting the FetchXml onto multiple lines in the following
// rollup queries causes the length property to be greater than 1,000
// chars and will cause an exception.
// The following query locates closed incoming phone calls.
GoalRollupQuery goalRollupQuery = new GoalRollupQuery()
{
Name = "Example Goal Rollup Query",
QueryEntityType = PhoneCall.EntityLogicalName,
FetchXml = @"<fetch version='1.0' output-format='xml-platform' mapping='logical' distinct='false'><entity name='phonecall'><attribute name='subject'/><attribute name='statecode'/><attribute name='prioritycode'/><attribute name='scheduledend'/><attribute name='createdby'/><attribute name='regardingobjectid'/><attribute name='activityid'/><order attribute='subject' descending='false'/><filter type='and'><condition attribute='directioncode' operator='eq' value='0'/><condition attribute='statecode' operator='eq' value='1' /></filter></entity></fetch>"
};
_rollupQueryIds.Add(_serviceProxy.Create(goalRollupQuery));
goalRollupQuery.Id = _rollupQueryIds[0];
// The following query locates closed outgoing phone calls.
GoalRollupQuery goalRollupQuery2 = new GoalRollupQuery()
{
Name = "Example Goal Rollup Query",
QueryEntityType = PhoneCall.EntityLogicalName,
FetchXml = @"<fetch version='1.0' output-format='xml-platform' mapping='logical' distinct='false'><entity name='phonecall'><attribute name='subject'/><attribute name='statecode'/><attribute name='prioritycode'/><attribute name='scheduledend'/><attribute name='createdby'/><attribute name='regardingobjectid'/><attribute name='activityid'/><order attribute='subject' descending='false'/><filter type='and'><condition attribute='directioncode' operator='eq' value='1'/><condition attribute='statecode' operator='eq' value='1' /></filter></entity></fetch>"
};
_rollupQueryIds.Add(_serviceProxy.Create(goalRollupQuery2));
goalRollupQuery2.Id = _rollupQueryIds[1];
Console.Write("created rollup queries for phone calls.\n");
Console.WriteLine();
#endregion
#region Create goals
// Determine current fiscal period and year.
// Note: This sample assumes quarterly fiscal periods.
DateTime date = DateTime.Now;
int quarterNumber = (date.Month - 1) / 3 + 1;
int yearNumber = date.Year;
// Create three goals: one parent goal and two child goals.
Goal parentGoal = new Goal()
{
//.........这里部分代码省略.........