Есть ли информация о возможности создания записей сущностей в EntityMetadata? - PullRequest
3 голосов
/ 30 марта 2020

Вот документация EntityMetadata EntityType , где описаны все свойства объекта. Я не могу найти какое-либо свойство, которое может описать возможность создания записи этого типа сущности там. Как я могу выяснить, что этот тип сущности поддерживает создание записей? Например, activitypointer EntityType поддерживает только Operations Supported GET, но в описании метаданных сущности с ним ничего не связано.

ActivityPointer EntityMetadata

{
  "ActivityTypeMask": 1,
  "AutoCreateAccessTeams": false,
  "AutoRouteToOwnerQueue": false,
  "CanBeInCustomEntityAssociation": {
    "CanBeChanged": false,
    "ManagedPropertyLogicalName": "canbeincustomentityassociation",
    "Value": false
  },
  "CanBeInManyToMany": {
    "CanBeChanged": false,
    "ManagedPropertyLogicalName": "canbeinmanytomany",
    "Value": false
  },
  "CanBePrimaryEntityInRelationship": {
    "CanBeChanged": false,
    "ManagedPropertyLogicalName": "canbeprimaryentityinrelationship",
    "Value": false
  },
  "CanBeRelatedEntityInRelationship": {
    "CanBeChanged": false,
    "ManagedPropertyLogicalName": "canberelatedentityinrelationship",
    "Value": false
  },
  "CanChangeHierarchicalRelationship": {
    "CanBeChanged": false,
    "ManagedPropertyLogicalName": "canchangehierarchicalrelationship",
    "Value": false
  },
  "CanChangeTrackingBeEnabled": {
    "CanBeChanged": true,
    "ManagedPropertyLogicalName": "canchangetrackingbeenabled",
    "Value": true
  },
  "CanCreateAttributes": {
    "CanBeChanged": false,
    "ManagedPropertyLogicalName": "cancreateattributes",
    "Value": false
  },
  "CanCreateCharts": {
    "CanBeChanged": false,
    "ManagedPropertyLogicalName": "cancreatecharts",
    "Value": true
  },
  "CanCreateForms": {
    "CanBeChanged": false,
    "ManagedPropertyLogicalName": "cancreateforms",
    "Value": false
  },
  "CanCreateViews": {
    "CanBeChanged": false,
    "ManagedPropertyLogicalName": "cancreateviews",
    "Value": true
  },
  "CanEnableSyncToExternalSearchIndex": {
    "CanBeChanged": false,
    "ManagedPropertyLogicalName": "canenablesynctoexternalsearchindex",
    "Value": false
  },
  "CanModifyAdditionalSettings": {
    "CanBeChanged": true,
    "ManagedPropertyLogicalName": "canmodifyadditionalsettings",
    "Value": true
  },
  "CanTriggerWorkflow": false,
  "ChangeTrackingEnabled": true,
  "CollectionSchemaName": "ActivityPointers",
  "DataProviderId": null,
  "DataSourceId": null,
  "DaysSinceRecordLastModified": 0,
  "Description": {
    "LocalizedLabels": [
      {
        "HasChanged": null,
        "IsManaged": true,
        "Label": "Task performed, or to be performed, by a user. An activity is any action for which an entry can be made on a calendar.",
        "LanguageCode": 1033,
        "MetadataId": "499709b3-2241-db11-898a-0007e9e17ebd"
      }
    ],
    "UserLocalizedLabel": {
      "HasChanged": null,
      "IsManaged": true,
      "Label": "Task performed, or to be performed, by a user. An activity is any action for which an entry can be made on a calendar.",
      "LanguageCode": 1033,
      "MetadataId": "499709b3-2241-db11-898a-0007e9e17ebd"
    }
  },
  "DisplayCollectionName": {
    "LocalizedLabels": [
      {
        "HasChanged": null,
        "IsManaged": true,
        "Label": "Activities",
        "LanguageCode": 1033,
        "MetadataId": "4b9709b3-2241-db11-898a-0007e9e17ebd"
      }
    ],
    "UserLocalizedLabel": {
      "HasChanged": null,
      "IsManaged": true,
      "Label": "Activities",
      "LanguageCode": 1033,
      "MetadataId": "4b9709b3-2241-db11-898a-0007e9e17ebd"
    }
  },
  "DisplayName": {
    "LocalizedLabels": [
      {
        "HasChanged": null,
        "IsManaged": true,
        "Label": "Activity",
        "LanguageCode": 1033,
        "MetadataId": "4a9709b3-2241-db11-898a-0007e9e17ebd"
      }
    ],
    "UserLocalizedLabel": {
      "HasChanged": null,
      "IsManaged": true,
      "Label": "Activity",
      "LanguageCode": 1033,
      "MetadataId": "4a9709b3-2241-db11-898a-0007e9e17ebd"
    }
  },
  "EnforceStateTransitions": false,
  "EntityColor": "#505050",
  "EntityHelpUrl": null,
  "EntityHelpUrlEnabled": false,
  "EntitySetName": "activitypointers",
  "ExternalCollectionName": null,
  "ExternalName": null,
  "HasActivities": false,
  "HasChanged": null,
  "HasFeedback": false,
  "HasNotes": false,
  "IconLargeName": null,
  "IconMediumName": null,
  "IconSmallName": null,
  "IconVectorName": null,
  "IntroducedVersion": "5.0.0.0",
  "IsAIRUpdated": false,
  "IsActivity": false,
  "IsActivityParty": false,
  "IsAuditEnabled": {
    "CanBeChanged": false,
    "ManagedPropertyLogicalName": "canmodifyauditsettings",
    "Value": false
  },
  "IsAvailableOffline": true,
  "IsBPFEntity": false,
  "IsBusinessProcessEnabled": false,
  "IsChildEntity": false,
  "IsConnectionsEnabled": {
    "CanBeChanged": false,
    "ManagedPropertyLogicalName": "canmodifyconnectionsettings",
    "Value": true
  },
  "IsCustomEntity": false,
  "IsCustomizable": {
    "CanBeChanged": false,
    "ManagedPropertyLogicalName": "iscustomizable",
    "Value": true
  },
  "IsDocumentManagementEnabled": false,
  "IsDocumentRecommendationsEnabled": false,
  "IsDuplicateDetectionEnabled": {
    "CanBeChanged": false,
    "ManagedPropertyLogicalName": "canmodifyduplicatedetectionsettings",
    "Value": false
  },
  "IsEnabledForCharts": true,
  "IsEnabledForExternalChannels": false,
  "IsEnabledForTrace": false,
  "IsImportable": false,
  "IsInteractionCentricEnabled": true,
  "IsIntersect": false,
  "IsKnowledgeManagementEnabled": false,
  "IsLogicalEntity": false,
  "IsMSTeamsIntegrationEnabled": false,
  "IsMailMergeEnabled": {
    "CanBeChanged": false,
    "ManagedPropertyLogicalName": "canmodifymailmergesettings",
    "Value": false
  },
  "IsManaged": true,
  "IsMappable": {
    "CanBeChanged": false,
    "ManagedPropertyLogicalName": "ismappable",
    "Value": false
  },
  "IsOfflineInMobileClient": {
    "CanBeChanged": false,
    "ManagedPropertyLogicalName": "canmodifymobileclientoffline",
    "Value": false
  },
  "IsOneNoteIntegrationEnabled": false,
  "IsOptimisticConcurrencyEnabled": true,
  "IsPrivate": false,
  "IsQuickCreateEnabled": false,
  "IsReadOnlyInMobileClient": {
    "CanBeChanged": false,
    "ManagedPropertyLogicalName": "canmodifymobileclientreadonly",
    "Value": false
  },
  "IsReadingPaneEnabled": true,
  "IsRenameable": {
    "CanBeChanged": false,
    "ManagedPropertyLogicalName": "isrenameable",
    "Value": true
  },
  "IsSLAEnabled": false,
  "IsSolutionAware": false,
  "IsStateModelAware": false,
  "IsValidForAdvancedFind": true,
  "IsValidForQueue": {
    "CanBeChanged": false,
    "ManagedPropertyLogicalName": "canmodifyqueuesettings",
    "Value": false
  },
  "IsVisibleInMobile": {
    "CanBeChanged": false,
    "ManagedPropertyLogicalName": "canmodifymobilevisibility",
    "Value": false
  },
  "IsVisibleInMobileClient": {
    "CanBeChanged": false,
    "ManagedPropertyLogicalName": "canmodifymobileclientvisibility",
    "Value": true
  },
  "LogicalCollectionName": "activitypointers",
  "LogicalName": "activitypointer",
  "MetadataId": "c821cd41-f315-43d1-8fa6-82787b6f06e7",
  "MobileOfflineFilters": "",
  "ObjectTypeCode": 4200,
  "OwnershipType": "UserOwned",
  "PrimaryIdAttribute": "activityid",
  "PrimaryImageAttribute": null,
  "PrimaryNameAttribute": "subject",
  "Privileges": [
    {
      "CanBeBasic": true,
      "CanBeDeep": true,
      "CanBeEntityReference": false,
      "CanBeGlobal": true,
      "CanBeLocal": true,
      "CanBeParentEntityReference": false,
      "Name": "prvCreateActivity",
      "PrivilegeId": "091df793-fe5e-44d4-b4ca-7e3f580c4664",
      "PrivilegeType": "Create"
    },
    {
      "CanBeBasic": true,
      "CanBeDeep": true,
      "CanBeEntityReference": false,
      "CanBeGlobal": true,
      "CanBeLocal": true,
      "CanBeParentEntityReference": false,
      "Name": "prvReadActivity",
      "PrivilegeId": "650c14fe-3521-45fe-a000-84138688e45d",
      "PrivilegeType": "Read"
    },
    {
      "CanBeBasic": true,
      "CanBeDeep": true,
      "CanBeEntityReference": false,
      "CanBeGlobal": true,
      "CanBeLocal": true,
      "CanBeParentEntityReference": false,
      "Name": "prvWriteActivity",
      "PrivilegeId": "0dc8f72c-57d5-4b4d-8892-fe6aac0e4b81",
      "PrivilegeType": "Write"
    },
    {
      "CanBeBasic": true,
      "CanBeDeep": true,
      "CanBeEntityReference": false,
      "CanBeGlobal": true,
      "CanBeLocal": true,
      "CanBeParentEntityReference": false,
      "Name": "prvDeleteActivity",
      "PrivilegeId": "bb4457f2-9b45-4482-a95a-7adef25f388a",
      "PrivilegeType": "Delete"
    },
    {
      "CanBeBasic": true,
      "CanBeDeep": true,
      "CanBeEntityReference": false,
      "CanBeGlobal": true,
      "CanBeLocal": true,
      "CanBeParentEntityReference": false,
      "Name": "prvAssignActivity",
      "PrivilegeId": "8b99344e-ebbf-4f84-8438-e1e34d194de9",
      "PrivilegeType": "Assign"
    },
    {
      "CanBeBasic": true,
      "CanBeDeep": true,
      "CanBeEntityReference": false,
      "CanBeGlobal": true,
      "CanBeLocal": true,
      "CanBeParentEntityReference": false,
      "Name": "prvShareActivity",
      "PrivilegeId": "b5f2ee06-d359-4495-bbda-312aae1c6b1e",
      "PrivilegeType": "Share"
    },
    {
      "CanBeBasic": true,
      "CanBeDeep": true,
      "CanBeEntityReference": false,
      "CanBeGlobal": true,
      "CanBeLocal": true,
      "CanBeParentEntityReference": false,
      "Name": "prvAppendActivity",
      "PrivilegeId": "78777c10-09ab-4326-b4c8-cf5729702937",
      "PrivilegeType": "Append"
    },
    {
      "CanBeBasic": true,
      "CanBeDeep": true,
      "CanBeEntityReference": false,
      "CanBeGlobal": true,
      "CanBeLocal": true,
      "CanBeParentEntityReference": false,
      "Name": "prvAppendToActivity",
      "PrivilegeId": "6ec8e901-d770-44c0-8f12-d07425f638bd",
      "PrivilegeType": "AppendTo"
    }
  ],
  "RecurrenceBaseEntityLogicalName": null,
  "ReportViewName": "FilteredActivityPointer",
  "SchemaName": "ActivityPointer",
  "SyncToExternalSearchIndex": false,
  "UsesBusinessDataLabelTable": false
}

1 Ответ

2 голосов
/ 01 апреля 2020

Я проверил это, и я согласен, что нет явного атрибута метаданных сущности, похожего на IsCreatable.

Вы можете обернуть попытку Create пустой сущности типа в try / catch блок.

Когда я запустил:

var pointer = new ActivityPointer();
pointer.Create(svc);

Служба вызвала это исключение, даже если объект pointer не содержит атрибутов:

System.ServiceModel.FaultException `1: 'Метод' Create 'не поддерживает сущности типа' activitypointer '.'

В этой статье перечислены сущности, которые поддерживают метод IOrganizationService Create в разделе« Поддерживается » Сущности ".
Вот список:

Account  
ActivityMimeAttachment  
Annotation  
AnnualFiscalCalendar  
Appointment  
AsyncOperation  
AttributeMap  
BusinessUnit  
BusinessUnitNewsArticle  
Calendar  
Campaign  
CampaignActivity  
CampaignResponse  
ColumnMapping  
Competitor  
Connection  
ConnectionRole  
ConnectionRoleObjectTypeCode  
ConstraintBasedGroup  
Contact  
Contract  
ContractDetail  
ContractTemplate  
ConvertRule  
ConvertRuleItem  
CustomerAddress  
CustomerOpportunityRole  
CustomerRelationship  
Discount  
DiscountType  
DuplicateRule  
DuplicateRuleCondition  
DynamicProperty  
DynamicPropertyAssociation  
DynamicPropertyInstance  
DynamicPropertyOptionSetItem  
Email  
EmailServerProfile  
Entitlement  
EntitlementChannel  
EntitlementTemplate  
EntitlementTemplateChannel  
Equipment  
ExchangeSyncIdMapping  
Fax  
FieldPermission  
FieldSecurityProfile  
FixedMonthlyFiscalCalendar  
Goal  
GoalRollupQuery  
HierarchyRule  
HierarchySecurityConfiguration  
Import  
ImportEntityMapping  
ImportFile  
ImportJob  
ImportMap  
Incident  
IncidentResolution  
Invoice  
InvoiceDetail  
IsvConfig  
KbArticle  
KbArticleComment  
KbArticleTemplate  
Lead  
Letter  
List  
LookUpMapping  
Mailbox  
MailMergeTemplate  
Metric  
MonthlyFiscalCalendar  
msdyn_PostAlbum  
msdyn_PostConfig  
msdyn_PostRuleConfig  
msdyn_wallsavedquery  
msdyn_wallsavedqueryusersettings  
Opportunity  
OpportunityClose  
OpportunityProduct  
OrderClose  
OrganizationUI  
OwnerMapping  
PhoneCall  
PickListMapping  
PluginAssembly  
PluginType  
Position  
Post  
PostComment  
PostFollow  
PostLike  
PriceLevel  
PrincipalObjectAttributeAccess  
ProcessSession  
ProcessTrigger  
Product  
ProductAssociation  
ProductPriceLevel  
ProductSubstitute  
Publisher  
PublisherAddress  
QuarterlyFiscalCalendar  
Queue  
QueueItem  
Quote  
QuoteClose  
QuoteDetail  
RecurrenceRule  
RecurringAppointmentMaster  
RelationshipRole  
RelationshipRoleMap  
Report  
ReportCategory  
ReportEntity  
ReportVisibility  
ResourceSpec  
Role  
RollupField  
RoutingRule  
RoutingRuleItem  
SalesLiterature  
SalesLiteratureItem  
SalesOrder  
SalesOrderDetail  
SavedQuery  
SavedQueryVisualization  
SdkMessageProcessingStep  
SdkMessageProcessingStepImage  
SdkMessageProcessingStepSecureConfig  
SemiAnnualFiscalCalendar  
Service  
ServiceAppointment  
ServiceEndpoint  
SharePointDocument  
SharePointDocumentLocation  
SharePointSite  
Site  
SLA  
SLAItem  
SLAKPIInstance  
SocialActivity  
SocialInsightsConfiguration  
SocialProfile  
Solution  
Subject  
SystemForm  
SystemUser  
Task  
Team  
TeamTemplate  
Template  
Territory  
TraceLog  
TransactionCurrency  
TransformationMapping  
TransformationParameterMapping  
UoM  
UoMSchedule  
UserEntityInstanceData  
UserEntityUISettings  
UserForm  
UserQuery  
UserQueryVisualization  
WebResource  
Workflow  
WorkflowDependency  
WorkflowLog  
...