functions/installer/Class-DataMart.ps1
class Id { [int] $Id = 0 [int] GetNewId() { $this.Id-- return $this.Id } } class DataMart { [int] $Id [guid] $ContentId [string] $Name [string] $DataMartType [string] $Description [string] $SqlAgentProxyName [string] $SqlCredentialName [decimal] $DefaultEngineVersion [string] $SystemName [string] $DataStewardFullName [string] $DataStewardEmail [string] $Version [string] $IsHidden [Connection[]] $Connections [Entity[]] $Entities [Binding[]] $Bindings [ObjectAttributeValue[]] $AttributeValues } class Connection { [int] $Id [guid] $ContentId [string] $SystemName [string] $Description [string] $DataSystemTypeCode [string] $DataSystemVersion [string] $SystemVendorName [string] $SystemVersion [ObjectAttributeValue[]] $AttributeValues } class Entity { [int] $Id [guid] $ContentId [int] $ConnectionId [string] $BusinessDescription [string] $EntityName [string] $TechnicalDescription [string] $PersistenceType [bool] $IsPublic [bool] $AllowsDataEntry [int] $RecordCountMismatchThreshold [nullable[int]] $RecordCount [nullable[system.datetimeoffset]] $LastSuccessfulLoadTimestamp [nullable[system.datetimeoffset]] $LastModifiedTimestamp [nullable[system.datetimeoffset]] $LastDeployedTimestamp [Field[]] $Fields [Index[]] $Indexes [ObjectAttributeValue[]] $AttributeValues } class Binding { [int] $Id [guid] $ContentId [string] $Name [int] $DestinationEntityId [int] $SourceConnectionId [string] $BindingType [string] $Classification [string] $Description [string] $LoadTypeCode [string] $Status [string] $GroupingColumn [string] $GroupingFormat [string] $GrainName [ObjectAttributeValue[]] $AttributeValues } class Field { [int] $Id [guid] $ContentId [string] $FieldName [string] $BusinessDescription [string] $TechnicalDescription [string] $DataType [string] $DefaultValue [string] $DataSensitivity [nullable[int]] $Ordinal [string] $Status [string] $ExampleData # [nullable[system.datetimeoffset]] $ExampleDataUpdatetimestamp [bool] $IsPrimaryKey [bool] $IsNullable [bool] $IsAutoIncrement [bool] $ExcludeFromBaseView [bool] $IsSystemField [ObjectAttributeValue[]] $AttributeValues } class Index { [int] $Id [guid] $ContentId [string] $IndexName [bool] $IsUnique [bool] $IsActive [string] $IndexTypeCode [bool] $IsColumnStore [bool] $IsCapSystem [nullable[system.datetimeoffset]] $LastModifiedTimestamp [nullable[system.datetimeoffset]] $LastDeployedTimestamp [IndexField[]] $IndexFields } class IndexField { [int] $Id [int] $IndexId [nullable[int]] $FieldId [int] $Ordinal [bool] $IsDescending [bool] $IsCovering } class ObjectAttributeValue { [string] $AttributeName [string] $AttributeValue } |