Skip to main content

Class AstOfflineSchemaColumnNode

The AstOfflineSchemaColumnNode class defines the type metadata information for an individual column within an offline schema.

Namespace: Varigence.Languages.Biml.Metadata

Assembly: Biml.dll

C#


public class AstOfflineSchemaColumnNode : AstTableColumnBaseNode, IBindableItem, IGetJsonProvider, INamedNode, IScopeBoundary, IReferenceableItem, IFrameworkItem, IValidationInfo, INamedItem

Inheritance AstNode

  • Implements

    Varigence.Utility.Collections.IVulcanCollectionParent, Varigence.Utility.ComponentModel.IVulcanNotifyPropertyChanged, Varigence.Utility.ComponentModel.IPropertyChangeNotificationTarget, System.ComponentModel.INotifyPropertyChanged, Varigence.Utility.Xml.IXObjectMappingProvider, System.ComponentModel.IDataErrorInfo, Varigence.Utility.Collections.IScopedNameIndexable, Varigence.Utility.Database.Specification.IColumnTypeSpecification,

Constructors

ConstructorsDescription
AstOfflineSchemaColumnNode(IFrameworkItem)Initializes a new instance of the AstOfflineSchemaColumnNode class with the specified parent node.

Fields

FieldsDescription
DataType_BackingField
Length_BackingField
Precision_BackingField
Scale_BackingField
CustomType_BackingField
IsNullable_BackingField
ScopedNamePrefixBackingStore
IsScopeImported

Properties

PropertiesDescription
ComputedTextGets the computed text expression for this column, if any
DatabaseProviderGets the database provider for this column
DefaultExpressionGets the default expression for this column, if any
DoNotEmitOutputColumnSpecifies whether or not this column should be included in the output path for the referencing SSIS dataflow component. This is normally set to true for columns with a data type that is not supported by SSIS data flows.
DoNotEmitOutputColumnDefaultValueGets the default value for the DoNotEmitOutputColumn property
DotNetTypeGets the .NET type that should be used for this column when its data values are manipulated with .NET code.
DotNetTypeNameSpecifies the namespace qualified name of the .NET type that should be used for this column when its data values are manipulated with .NET code.
DotNetTypeNameDefaultValueGets the default value for the DotNetTypeName property
FriendlyTypeNameStaticGets the friendly name of the type of this node
IsAssignableIndicates whether the column can have values assigned to it
IsAutoIncrementGets whether or not this column is an auto-increment or identity column
IsByteSemanticIndicates whether this column uses a single byte for string character representation or a multi-byte format
IsComputedIndicates whether the column derives its value from an expression
IsKeySpecifies whether or not this column participates in a relational database key when it is used by a referencing SSIS dataflow component.
IsKeyDefaultValueGets the default value for the IsKey property
IsLargeObjectIndicates whether this column uses a large object (LOB) data type
IsLongSpecifies whether or not this column uses a version of the underlying relational database type that should be treated as long.
IsLongDefaultValueGets the default value for the IsLong property
IsReadOnlySpecifies whether or not this column is marked as read only in the relational database.
IsReadOnlyDefaultValueGets the default value for the IsReadOnly property
IsRowVersionSpecifies whether or not this column uses a database-specific rowversion data type when it is used by a referencing SSIS dataflow component.
IsRowVersionDefaultValueGets the default value for the IsRowVersion property
IsUniqueSpecifies whether or not this column participates in a relational database unique constraint when it is used by a referencing SSIS dataflow component.
IsUniqueDefaultValueGets the default value for the IsUnique property
KeyValuePairsProvides a property bag for storing supplemental external column information. This is normally used for provider specific values.
OrdinalSpecifies the ordinal position of this column in the relational database table or query result set.
OrdinalDefaultValueGets the default value for the Ordinal property
ProviderTypeSpecifies the database specific code assigned to the data type for this column.
ProviderTypeDefaultValueGets the default value for the ProviderType property
RawDataTypeSpecifies the data type that is reported by the database provider for this column using the preferred text representation for the provider.
RawDataTypeDefaultValueGets the default value for the RawDataType property
RawDataTypeIdSpecifies the data type id that is reported by the database provider for this column using the preferred type code for the provider.
RawDataTypeIdDefaultValueGets the default value for the RawDataTypeId property
RawLengthSpecifies the length that is reported by the database provider for this column.
RawLengthDefaultValueGets the default value for the RawLength property
RawPrecisionSpecifies the precision that is reported by the database provider for this column.
RawPrecisionDefaultValueGets the default value for the RawPrecision property
RawScaleSpecifies the scale that is reported by the database provider for this column.
RawScaleDefaultValueGets the default value for the RawScale property
ReferencedColumnFor reference columns, returns the referenced column
SizeInBytesSpecifies the size of the data type of this column as measured in bytes by the underlying relational database.
SizeInBytesDefaultValueGets the default value for the SizeInBytes property
IsAutoGeneratedIndicates whether the value of column is automatically generated
QualifiedNameGets the fully qualified T-SQL name for this column
IsIdentityColumnIndicates whether this column participates in an identity
DefaultValueGets or sets the default value for this column. This will be emitted as a default value constraint.
IsUsedInKeyIndicates whether this column is used in any key
IsUsedInPrimaryKeyIndicates whether this column is used in a primary key
IsUsedInIndexIndicates whether this column is used in any index
ReferencedDataTypeFor reference columns, returns the referenced column's data type
ReferencedCustomTypeFor reference columns, returns the referenced column's custom data type
ReferencedLengthFor reference columns, returns the referenced column's length
ReferencedPrecisionFor reference columns, returns the referenced column's length
ReferencedScaleFor reference columns, returns the referenced column's length
DataTypeThis value specifies the type of the data stored in this column using the unified type system. The type values include all of those types commonly used in Microsoft SQL Server table definitions.
Length(Set to -1 to indicate MAX length). This value specifies the length parameter for the column type associated with this column. This property applies only to column types that support a length specification, such as String and Binary types.
PrecisionThis value specifies the precision parameter for the column type associated with this column. Precision is the number of digits stored for a numeric value. This property applies only to column types that support precision, such as Decimal.
ScaleThis value specifies the scale parameter for the column type associated with this column. Scale is the number of digits to the right of the decimal point in a numeric value. This property applies only to column types that support precision, such as Decimal.
CustomTypeThis value specifies the type of a column when the main column type has been set to Custom. This permits the specification of less commonly used SQL Server column types. A complete list of allowed types is available at http://msdn.microsoft.com/en-us/library/ms127023%28SQL.90%29.aspx
ComputedThis value specifies a computed value for the column using Transact-SQL expression syntax. Computed column specifications conform to all SQL Server computed column rules as described at http://msdn.microsoft.com/en-us/library/ms191250.aspx
DefaultThis value specifies a default value for the column using Transact-SQL constant expression syntax.
ScdTypeThis value specifies the slowly changing dimension type for the column. The value determines the behavior of the table when a row with a matching unique key value is added to the table. This behavior is enforced in the various Task and Dataflow transformations that interact with this table.
IsNullableThis value specifies whether null values are accepted for the column.
ReadOnlyAdvanced Feature: Use at your own risk. Specifies that the column should be treated as a read-only column. This will automatically remove the column from assignment from Merge statements and other auto-generated code paths. Computed columns and rowversion columns are two examples of data types which are read-only.
IdentitySeedThis value specifies the starting value for an identity column. When the first row is inserted into the table, this value is used. Both seed and increment must be specified if either is explicitly specified. The default value is 1.
IdentityIncrementSet IdentityIncrement to a non-zero value to enable this column as an IDENTITY. This value specifies the amount by which the Identity value is incremented when a row is inserted. Removing this property or setting the value to 0 will remove the IDENTITY specification for this column.
CheckConstraintThe check constraint associated with this column.
DefaultConstraintNameThis value specifies the name that should be used for the default value constraint for this column in the database. If the Default property has not been specified, the value of this property will be ignored.
CodePageThis value specifies the integer index for the codepage of the dataflow column. This property applies only to dataflow column types that support code pages, such as strings. Codepages supported by Windows are listed at: http://msdn.microsoft.com/en-us/goglobal/bb964654.aspx.
FriendlyNameProvides a convenience property for storing an alternative name for this column.
LengthDefaultValueGets the default value for the Length property
PrecisionDefaultValueGets the default value for the Precision property
ScaleDefaultValueGets the default value for the Scale property
CustomTypeDefaultValueGets the default value for the CustomType property
ComputedDefaultValueGets the default value for the Computed property
DefaultDefaultValueGets the default value for the Default property
ScdTypeDefaultValueGets the default value for the ScdType property
IsNullableDefaultValueGets the default value for the IsNullable property
ReadOnlyDefaultValueGets the default value for the ReadOnly property
IdentitySeedDefaultValueGets the default value for the IdentitySeed property
IdentityIncrementDefaultValueGets the default value for the IdentityIncrement property
DefaultConstraintNameDefaultValueGets the default value for the DefaultConstraintName property
CodePageDefaultValueGets the default value for the CodePage property
FriendlyNameDefaultValueGets the default value for the FriendlyName property
ScopedNameGets the scoped name which can be used to uniquely identify this object among other objects of its type
SymbolTableGets a reference to the symbol table that stores a reference to this and all other named objects in the project
SsisSafeScopedNameReturns a version of the ScopedName that has been cleaned of invalid characters for SSIS.
SsisSafeNameReturns a version of the Name that has been cleaned of invalid characters for SSIS.
NameSpecifies the name of the object. This name can be used to reference this object from anywhere else in the program.
ReferencesGets collection of FrameworkItemReference objects, which track rich information about the properties that hold references to this node.
NameDefaultValueGets the default value for the Name property
Guid
AnnotationsThis is a collection of annotation items that can be used to specify documentation, tags, or other information. Annotations are particularly useful for storing information about nodes that can be used by BimlScript code.
ObjectTagThis property provides a general purpose storage mechanism for .NET objects to be associated with AstNode objects. It supplements the annotation system, which is intended for use with string-based metadata.
BimlFileThis value specifies the BimlFile in which the Biml code that defines AstNode resides.
ItemLabelGets a label that can be used to identify this node
ParentItemThis value specifies the parent of the current node. All nodes must have a valid parent in the Biml framework, except for the root node.

Methods

MethodsDescription
BindingScopeBoundaries()Retrieves the permitted scope boundaries to bind references from this node.
Duplicate()Creates a duplicate of the current node
Duplicate(IFrameworkItem)Creates a duplicate of the current node with the specified parent item
GetDefaultValue(String)Retrieves the default value for the property with the name propertyName
GetDefaultValue<T>(String)Retrieves the default value for the property with the name propertyName
GetSchemaLocalName()Retrieves the local XML element name that corresponds to this node in Biml code.
StructureEquals(Object)Compares this node to the provided object to determine if all defined children and references are equal.
ConvertOleDbTypeToColumnType(OleDbType)Converts an OleDbType into a DbType.
DefinedAstNodes()Retrieves a collection of nodes that have been defined as direct children of the current node.
GetAllItemsReferencedByDefinedSuccessors()Builds a list of all items referenced by this node and its successors.
Each tuple in the returned list represents a FrameworkItemReference.
The first item is the ReferencingItem, the second item is the property name, and the third item is the ReferencedItem.
ParseChild(XElement, ParserContext)
GetBimlChildFragment(CulturedStringBuilder, Int32)
HasAnyBimlChildNodes()
ToString()Returns a string that represents the current object. In this case, it is the Name of the node.
OnScopedNameChanged(String, String)
OnItemLabelChanged(String, String)
OnNameChanging(String, String)
OnNameChanged(String, String)
AddScopedNameChangedEventListener(IReferenceableItem, EventHandler<VulcanPropertyChangedEventArgs>)Adds the scoped name changed event handler to the specified referenceable item.
RemoveScopedNameChangedEventListener(IReferenceableItem, EventHandler<VulcanPropertyChangedEventArgs>)Removes the scoped name changed event handler from the specified referenceable item.
FirstChildOfType<TChild>()Gets the first defined descendant node of the specified type
RemoveFromParent()Removes this node definition from its parent
GetJson()Generates a JavaScript Object Notation (JSON) representation of the current node
GetExternalJson()Generates a JavaScript Object Notation (JSON) representation of the current node
GetJson(Boolean, Boolean, Boolean, Boolean, Boolean)Generates a JavaScript Object Notation (JSON) representation of the current node
GetXObjectName()Gets the fully qualified XML element name for this node in the code document.
FirstParent<TAstNode>()Retrieves the first parent or ancestor node of the specified type
FirstParent<TAstNode>(Type)Retrieves the first parent or ancestor node of the specified type with the specified custom attribute type
FirstThisOrParent<TAstNode>()Retrieves the first parent or ancestor node of the specified type, including this node
IsDirectAncestor(IFrameworkItem)Retrieves a value indicating whether the specified node is a direct ancestor of this node.
AncestorDistance(IFrameworkItem)Retrieves the number of steps between this node and the nearest shared ancestor with the specified relative node.
FirstThisOrParent<TAstNode>(Type)Retrieves the first parent or ancestor node (including this node) of the specified type with the specified custom attribute type
AllDefinedSuccessors()Retrieves the collection of all nodes defined as a child of this or any successor node or the current node
AllDefinedSuccessors(Boolean)Retrieves the collection of all nodes defined as a child of this or any successor node or optionally the current node
OnNotificationTargetPropertyChanged(String)
OnScopeBoundaryChanged(IScopeBoundary, IScopeBoundary)
AddParseableChangedEventListener(IFlowFileChanged, EventHandler<EventArgs>)
RemoveParseableChangedEventListener(IFlowFileChanged, EventHandler<EventArgs>)
AddScopeBoundaryChangedEventListener(IFrameworkItem, EventHandler<VulcanPropertyChangedEventArgs>)
RemoveScopeBoundaryChangedEventListener(IFrameworkItem, EventHandler<VulcanPropertyChangedEventArgs>)
AddParsePendingChangedEventListener(IFlowFileChanged, EventHandler<EventArgs>)
RemoveParsePendingChangedEventListener(IFlowFileChanged, EventHandler<EventArgs>)
AddFromTemplateChangedEventListener(IFlowFileChanged, EventHandler<EventArgs>)
RemoveFromTemplateChangedEventListener(IFlowFileChanged, EventHandler<EventArgs>)
ParseSelf(XElement, ParserContext)
ParseNameValueMapping(XElement)
BindReference(SymbolTable, String, Boolean, String, Int32, Boolean)