Public/Note.ps1
|
#CreateAnnotation function Add-CrmNoteToCrmRecord{ # .ExternalHelp Campgemini.Xrm.Data.PowerShell.Help.xml [CmdletBinding()] PARAM( [parameter(Mandatory=$false)] [Microsoft.Xrm.Sdk.IOrganizationService]$conn, [parameter(Mandatory=$true, Position=1, ParameterSetName="CrmRecord")] [PSObject]$CrmRecord, [parameter(Mandatory=$true, Position=1, ParameterSetName="NameWithId")] [string]$EntityLogicalName, [parameter(Mandatory=$true, Position=2, ParameterSetName="NameWithId")] [guid]$Id, [parameter(Mandatory=$true, Position=3)] [string]$Subject, [parameter(Mandatory=$true, Position=4)] [string]$NoteText ) $conn = VerifyCrmConnectionParam -conn $conn -pipelineValue ($PSBoundParameters.ContainsKey('conn')) if($CrmRecord -ne $null) { $EntityLogicalName = $CrmRecord.logicalname $Id = $CrmRecord.($EntityLogicalName + "id") } try { $note = New-Object Microsoft.Xrm.Sdk.Entity("annotation") $note["subject"] = $Subject $note["notetext"] = $NoteText $note["objectid"] = New-Object Microsoft.Xrm.Sdk.EntityReference($EntityLogicalName, $Id) return $conn.Create($note) } catch { throw } } |