Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Want to see what's currently in public preview? We've pulled it all together in one place. Check it out here
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Add SheetObject (Straight-Table) to Container with Macro

Hello together,

I´m trying to add a straight-table Object to a Container-Object with a Macro. The API-Guide provides the following example for this:

Set ContainerObj = ActiveDocument.Sheets("Main").CreateContainer

set ContProp=ContainerObj.GetProperties

ContProp.ContainedObjects.Add

ContProp.SingleObjectMode=1

ContProp.SingleObjectStyle=1

ContProp.ShowObjectTypeIcons=true

ContProp.ContainedObjects.Add

ContProp.ContainedObjects.Item(0).Id = "Document\CH02"

ContProp.ContainedObjects.Item(0).Text.v = "Bar"

ContProp.ContainedObjects.Add

ContProp.ContainedObjects.Item(1).Id = "Document\CH01"

ContProp.ContainedObjects.Item(1).Text.v = "StraightTable"

ContainerObj.SetProperties ContProp

If I try to run the macro, I get an Error at the line "ContProp.ContainedObjects.Item(0).Id" with the Message

"Object does not support this this Property or Method: 'ContProp.ContainedObjects.Item(...).Id'

I´m currently using QlikView 11.20 SR 13. Did anybody get a similar macro to run or has an Idea why it fails ? Unfortunatelly the API-Guide is not complete for working with Containers, I don´t know where to get further Infomation about that.

I attached an example with two charts an the macro, which anybody could try.

Thanks in Advance !

Best Regars

Florian

Labels (1)
1 Solution

Accepted Solutions
tamilarasu
Champion
Champion

Hi Florian,

Try this,

Sub Container

Set ContainerObj = ActiveDocument.Sheets("Main").CreateContainer

set ContProp=ContainerObj.GetProperties

ContProp.ContainedObjects.Add

ContProp.SingleObjectMode=1

ContProp.SingleObjectStyle=1

ContProp.ShowObjectTypeIcons=true

ContProp.ContainedObjects.Add

ContProp.ContainedObjects.Item(0).Def.ObjectId = "Document\CH02"

ContProp.ContainedObjects.Item(0).Text.v = "Bar"

ContProp.ContainedObjects.Add

ContProp.ContainedObjects.Item(1).Def.ObjectId = "Document\CH01"

ContProp.ContainedObjects.Item(1).Text.v = "StraightTable"

ContainerObj.SetProperties ContProp

End Sub

View solution in original post

3 Replies
marcus_sommer
MVP
MVP

tamilarasu
Champion
Champion

Hi Florian,

Try this,

Sub Container

Set ContainerObj = ActiveDocument.Sheets("Main").CreateContainer

set ContProp=ContainerObj.GetProperties

ContProp.ContainedObjects.Add

ContProp.SingleObjectMode=1

ContProp.SingleObjectStyle=1

ContProp.ShowObjectTypeIcons=true

ContProp.ContainedObjects.Add

ContProp.ContainedObjects.Item(0).Def.ObjectId = "Document\CH02"

ContProp.ContainedObjects.Item(0).Text.v = "Bar"

ContProp.ContainedObjects.Add

ContProp.ContainedObjects.Item(1).Def.ObjectId = "Document\CH01"

ContProp.ContainedObjects.Item(1).Text.v = "StraightTable"

ContainerObj.SetProperties ContProp

End Sub

sasiparupudi1
Master III
Master III

Try following

Sub AddChartsToContainer

Set ContainerObj = ActiveDocument.Sheets("Main").CreateContainer

set ContProp=ContainerObj.GetProperties

ContProp.ContainedObjects.Add

ContProp.SingleObjectMode=1

ContProp.SingleObjectStyle=1

ContProp.ShowObjectTypeIcons=true

ContProp.ContainedObjects.Add

ContProp.ContainedObjects.Item(0).Def.ObjectId = "Document\CH02"

ContProp.ContainedObjects.Item(0).Text.v = "Bar"

ContProp.ContainedObjects.Add

ContProp.ContainedObjects.Item(1).Def.ObjectId = "Document\CH01"

ContProp.ContainedObjects.Item(1).Text.v = "StraightTable"

ContainerObj.SetProperties ContProp

END SUB