Skip to main content

Experimenting with Visio and VBScript


This diagram is created:




















 
 
 
 
 
 
 
using this code:

















































 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Copy the code:

Option Explicit

Dim strVSDPath, filesys
Dim vsoApplication, vsoDocument, vsoPages, vsoPage
Dim vsoMaster1, vsoMaster2, vsoStencil
Dim vsoShape1, vsoShape2, vsoConnector1
Dim itr

Const visAutoConnectDirDown = 2     'Connect down.
Const visAutoConnectDirLeft = 3     'Connect to the left.
Const visAutoConnectDirNone = 0     'Connect without relocating the shapes.
Const visAutoConnectDirRight = 4     'Connect to the right.
Const visAutoConnectDirUp = 1         'Connect up.

' Visio file to be created.
strVSDPath = "D:\Workspace_Visio\TestRunFlow.vsd"

'delete any previously existing Suite file
Set filesys = CreateObject("Scripting.FileSystemObject")
If filesys.FileExists(strVSDPath) Then
    filesys.DeleteFile strVSDPath
End If
Set filesys = Nothing

' Bind to Visio object.
On Error Resume Next
'Set vsoApplication = CreateObject("Visio.Application")
Set vsoApplication = CreateObject("Visio.InvisibleApp")

If (Err.Number <> 0) Then
    On Error GoTo 0
    Wscript.Echo "Visio application not found."
    Wscript.Quit
End If
On Error GoTo 0


Set vsoDocument = vsoApplication.Documents.Add("Basic Diagram.vst")
Set vsoPages = vsoDocument.Pages
Set vsoPage = vsoPages.Item(1)
Set vsoStencil = vsoApplication.Documents("Basic Shapes.vss")

Set vsoMaster1 = vsoStencil.Masters("Rectangle")
'Set vsoMaster2 = vsoStencil.Masters("Rectangle")

Set vsoShape1 = vsoPage.Drop(vsoMaster1, 3.5, 7)
vsoShape1.Text = "Shape 1"
For itr = 2 to 3   
    Set vsoShape2 = vsoPage.Drop(vsoMaster1, 3.5, 5.5 + (itr - 1)*2)
   
    vsoShape2.Text = "Shape " & itr

    vsoShape1.AutoConnect vsoShape2, visAutoConnectDirDown
   
    Set vsoShape1 = vsoShape2
    Set vsoShape2 = Nothing
Next

vsoDocument.SaveAs strVSDPath
vsoDocument.Close

vsoApplication.Quit


'Set vsoApplication = Nothing
Set vsoShape1 = Nothing
Set vsoShape2 = Nothing
Set vsoConnector1 = Nothing

Set vsoMaster2 = Nothing
Set vsoMaster1 = Nothing
Set vsoStencil = Nothing
Set vsoPage = Nothing
Set vsoPages = Nothing
Set vsoDocument = Nothing
Set vsoApplication = Nothing

Wscript.Echo "Done"

Comments

Popular posts from this blog

QTP – search sub-folders for existence of QTP scripts

  Suppose we want to report on all subfolders in a specific root folder that contain script files. Consider the example folder structure here – ODBC_MYSQL, ODBC_SQLEXPRESS and Test1 are the folders that have QTP scripts: Here’s a VBScript program that takes the root (start) folder as input, and iterates all subfolders recursively to report on the ones that are actual QTP script folders: Note: This program can be run directly as a VBScript program, or from within a QTP script by toggling the comment between lines 17 and 18. (p.s.: if Print statement does not work on specific version of QTP, use the Msgbox statement. For real world test automation projects, do not use either – to avoid human intervention!) On running the program, Folders across various levels (Level 2, 3) get reported!

Fresh brew with NUnit for Selenium over a cuppa VS2010 Express’o

  Selenese coffee beans 1) A recorded Selenium script for a simple scenario of googling for the term Tomato. This recording should have been saved as an export in C# format. 2) VS2010 express editors – for C# and Web dev 3) MS Excel 4) Browsers – Chrome, Firefox, IE 5) WebDriver for Google Chrome Prepare the Coffee Machine Let’s install NUnit extension, NuGet package manager, Selenium packages and include MS Excel Interop reference into VS2010. Essentially 2 different editors are required from the VS2010 stable: a) Microsoft Visual C# 2010 Express – get NUnit b) Microsoft Visual Web Developer 2010 Express – to get NuGet and Selenium   Let’s get started with Microsoft Visual C# 2010 Express – Invoke Extension Manager: Browse the Online Gallery and download NUnit Test Application: Install NUnit: Confirm that installation succeeded: and this page is displayed in your default browser: Choose to create a New Project: Select th...