Beispiel zum Erstellen eines Modells mit Anmeldung und Package-Datenquelle

In diesem Beispiel wird das Erstellen eines Modells mit Anmeldung und Package-Datenquelle dargestellt.
Sub Example38()
    Dim objTransApp As Object
    Dim model As Model
    Dim package As Package
    Dim query As Query
    Dim column As Column
    Dim signon As Signon
    Dim connection As PackageDatasourceConnection
    Dim measure As Measure
    objTransApp = CreateObject("IBMCognosTransformer.ApplicationCtrl.1")
    'Create a new model
    model = objTransApp.NewModel
    'Create a new package and add it to the model
    package = model.Packages.Add()
    With package
        .Name = "GO Data Warehouse (query)"
        .Path = "/content/package[@name='GO Data Warehouse (query)']"
        .Update()
    End With
    'Create signon before adding the PackageDatasourceConnection
    signon = model.Signons.Add()
    With signon
        .Name = "great_outdoors_warehouse"
        .Description = "Signon used for package data source"
        .SignOnNamespace = "Cognos"
        .UserID = "sa"
        .Password = "sa"
        .SignonType = xtrSignonType.trCognosSignon
        .AutoLogon = True
        .Update()
    End With
    'Add PackageDatasourceConnection
    connection = package.PackageDatasourceConnections.Add()
    With connection
        .DataSource = "great_outdoors_warehouse"
        .Connection = "great_outdoors_warehouse"
        .Signon = "great_outdoors_warehouse"
        .TransformerSignon = "great_outdoors_warehouse"
        .AlwaysUseTransformerSignon = True
        .Update()
    End With
    'Create a new query and add it to the package
    query = package.Queries.Add()
    With query
        .Name = "Sales Revenue"
        .AutoSummary = True
        .MaximizeSpeed = True
        .SetsCurrentPeriod = True
        .Update()
    End With
    'Create 3 new columns and add them to the query
    column = query.Columns.Add()
    With column
        .Name = "Date"
        .OriginalName = "[Sales (query)].[Time dimension].[Date]"
        .Update()
    End With
    column = query.Columns.Add()
    With column
        .Name = "Region"
        .OriginalName = "[Sales (query)].[Retailer site].[Region]"
        .Update()
    End With
    column = query.Columns.Add()
    With column
        .Name = "Revenue"
        .OriginalName = "[Sales (query)].[Sales fact].[Revenue]"
        .Update()
    End With
    'Add Revenue column as a measure
    measure = model.Measures.Add()
    With Measure
        .AssociateWith(column, xtrAssociationRole.trAssociationSource)
        .Update()
    End With
    'Auto Design, build cube, and save model
    With model
        .Name = "Sales Revenue"
        .DoAutoDesign()
        .TestBuild(20, True)
        .Update()
        .SaveAs("GO Data Warehouse (query)X.mdl")
        .Close()
    End With
    objTransApp = Nothing
End Sub