Skip to content
This repository has been archived by the owner on Jan 29, 2022. It is now read-only.

CRM Powershell Library v1.3.0.0

Compare
Choose a tag to compare
@AMSoftwareNL AMSoftwareNL released this 03 Nov 19:30
· 21 commits to master since this release

NOTE: This release contains breaking changes from previous versions. Be sure to test your scripts before updating.

Cmdlets

All Cmdlets are impacted by the changes made in this release. See 'Issues & Changes'.

Issues & Changes

  • Combined 'Name' and 'Include' parameters.
    The separate parameters Name (without wildcard support) and Include (with wildcard support) are combined as the parameter Name with wildcard support. Include can still be used as the alias.
  • Improved pipeline support.
    Cmdlets which require parent information to function now support this parent information from the pipeline.
    The following are now supported for example:
    Get-CrmEntity account | Get-CrmAttribute
    Get-CrmSolution mysolution | Get-CrmSolutionComponent
  • Default sorting on Metadata cmdlet output.
    Sorting is applied to the output of Cmdlets which return CRM Metadata; like Get-CrmEntity and Get-CrmAttribute.
  • Default sorting on administration & customization cmdlet output.
    Sorting is applied to the output of Cmdlets which return CRM administration or customization information; like Get-CrmUser and Get-CrmPublisher.
  • Consistent use of 'InputObject' parameter, conform to best practices for PowerShell.
    All Cmdlets which could receive a complex object as input now consistently use InputObject as the parameter. The previous names of the parameters are still available as alias.
  • 'PassThru' parameter on all Cmdlets with optional output.
    All Cmdlets (except Get-Crm...) have the PassThru parameter. This needs to be provided to get an output from the cmdlets. By default none return a result. This means New-CrmEntity will not return the EntityMetadata unless explicitly specified with PassThru.
  • Exporting Cmdlet output contains object values, instead of object Types.
    This required a major rewrite and addition of PSPropertyAdapters. The result is all object properties are exposed as their true type, but complex types are wrapped in a custom PSObject which overrides ToString().
    As a result all properties can be used as their true Types, but will return a readable value to output. This output included Export-Csv for example.
  • Clear distinction between default properties and extended properties.
    The postfixes for extended properties are clearly recognizable. '_FormattedValue' for values from the FormattedValue collection and '_Entity' for the LogicalName of an EntityReference.
  • Removed 'RelatedEntities' from Get-CrmContent.
    The option to include related entities in Get-CrmContent is removed.