Microsoft Visio alsuniverselle Graphikengine
Visio als Entwicklungswerkzeug
Šenaj Lelić Visio Master Trainer Europe, Certified Visio Development Trainer
DataAssist e.K. München und Zürich
Agenda
Visio als Produkt Visio als Entwicklungsumgebung
• Das ShapeSheet als erste Entwicklungsumgebung
• Automation mit und von Visio
Visio: eine leistungsfähige Graphik-engine und Entwicklungsumgebung für visuelle Lösungen oder Graphik-Engine einer größeren Lösung
Wo gibt‘s weitere Info‘s?
Voraussetzungen
Kenntnisse in der Programmierung von Microsoft Excel sind hilfreich aber nicht unbedingt nötig
Grundlagen der Automation von Anwendungen mit VB, VBA oder einer anderen automationsfähigen Programmiersprache
Šenaj Lelić
Seit 1991 als IT-Consultant und Trainer tätig Schwerpunkt Visualisierungslösungen,
Systemsoftware, Visio und Datenbanken Seit 1995 Gründer und Geschäftsführer von
DataAssist München
Visio Master Trainer Europe Certified Visio Development Trainer Certified Visio Anwender-Trainer IT Trainer-Coach
Arbeiten mit VisioDrag & Drop von vorbereiteten
Komponenten (Shapes) auf die Zeichnung zur Erstellung eines visuellen Modells der Aufgabe
Nicht Zeichnungsfunktionen stehen im Vordergrund, sondern das Hinzufügen von nichtvisuellen Informationen und Verhalten (optischer Container)
Nutzung der SmartShape- Technologie ermöglicht einen Einsatz in fast allen Unternehmensbereichen('Visio ist das grafische Excel')
Terminologie
(Smart)Shape (Shape)• Zeichnungsobjekt einer Visio-
Seite mit programmierbarem Verhalten
Stencil (Schablone)• Thematische Sammlung von
Shapes in einer eigenen, verteilbaren Datei (.vss)
Terminologie 2MasterShape (MasterShape)
• Ein Shape in einer Schablone
Template (Vorlage)
• Entspricht in etwa einer Dokumentenvorlage in Office (voreing. Arbeitsumgebung)
ShapeSheet (ShapeSheet)
• Container für die Shape-Parameter, wird von der Visio-Engine ausgewertet
VisioEnterprise
Die Visio 2000 Produktfamilie
Visio Standard• Ablaufillustration
Visio Technical• HVAC,
Maschinenbau
Visio Professional• Netzwerke, Software
Visio Enterprise• IT-Doku & Planung
VisioTechnical
VisioProfessional
VisioStandard
VisioNetwork Center
Die Visio 2002 Produktfamilie
Visio Standard• Ablaufillustration
• Organigramme
Visio Professional (= Technical + Prof.)• HVAC,
Maschinenbau
• Netzwerke, Software
Visio Network Center (reines Add-On)• IT-Doku & Planung
• IT-Modellierung
VisioProfessional
VisioStandard
Visio StandardGeschäftsdiagramme und Fluss-
diagrammeGrafische Darstellung von
Organisationsstrukturen Grafische Planung von
ProjektenErstellung von Zeichnungen
für PräsentationenWeiterere Geschäftszeichnungen
wie Formulare, Landkarten & Grafiken
Visio TechnicalExaktes CAD-ähnliches Zeichnen
und ArbeitenVerfahrenstechnik-Zeichnungen
und PlandiagrammeGrundrisse, Baupläne im
Bereich Facility ManagementErstellen weiterer anlage-
technischer ZeichnungenElektrische und elektronische
Schemadiagramme für Steuersysteme
Visio ProfessionalLAN-Dokumentation und Entwurf Dokumentation von
VerzeichnisdienstenPlanung von Web-SitesSoftwarekomponenten-
EntwurfDatenflussdiagrammeEntwurf von DatenbankmodellenAnalyse von Geschäftsprozessen
Visio Enterprise (2000 !)
Die gesamte Funktionalitätvon Visio Professional plus:
Auto-Discovery von NetzenUML-SoftwaremodellierungDatenbank-ModellierungSoftware-ReEngineeringVisio Network Equipment
Individuelle Visio-Lösungen
Entwurf anwendungsspez. Shapes
SmartShapes, Datenfelder, etc.
ShapeSheet-Programmierung, VBA-Makros
Automation, Modellierung
Visuelles Frontend einer Enterprise-Lösung
DB-Zugriff
DB-Assistent
Inkrementelle Lösungen mit Visio
Komponenten einer Lösung
Erst durch dieKombination allerElemente entstehteine kompletteVisio-Lösung
Dim appVisio As ObjectDim UIObj As ObjectSet appVisio =CreateObject("App")Set UIObj =appVisio.BuiltInMenusappVisio.SetCustomMenusUIObj
CODE
TEMPLATES
OK
SHAPES
VISIO-Solution
Visio-Lösungen wachsen
Machen Sie Ihre Shapes zu SmartShapes™
Erleichtern Sie sich die Arbeit mit Vorlagen
Nutzen Sie die Möglichkeiten der Automation
Erstellen Sie mit Add-Ons visuelle Modelle
Visio als visuelles Frontend im Unternehmen
Die Visio-Umgebung
Schablonen
Vorlagen
Visio Engine
VBAVSLEXE
AutomationInterface
Add-ons
MS Office
ODBC/ADO
Eigene
Entwicklungsumgebung 1:Das ShapeSheet in Visio
Shapes: parametrische Objekte
GUI-Aktion ShapeSheet
Shape als Ergebnis
Das ShapeSheet Die Grundlage für
Visio‘s Flexibilität Shapes sind parame-
trische Objekte Alle relevanten Shape-
Daten finden sich im ShapeSheet und werden dort definiert und geändert
Auch für den Einsatz von Automation not-wendiges Grund-wissen
Ereignisse Abschnitt
• TheText
• EventDblClick
• EventXFMod
• EventDrop
Ereignisse im ShapeSheet
DependsOn im ShapeSheet
Wird typischerweise in einer benutzer-definierten Zelle eingesetzt:•=Runaddon("string") + DependsOn(trigger cell)
•=Setf("Cell",formula) + DependsOn(trigger cell)
Damit lassen sich Änderungen im ShapeSheet überwachen, ohne VBA zu benötigen
Beispiel zu DependsOn
Setzen der Füllfarbe über Datenfeld oder
alternativ über das User InterfaceEin Datenfeld mit der Farbe erzeugenZwei benutzerdefinierte Zellen einfügen
• =DependsOn(Prop.Color) + Setf("FillForegnd",Prop.Color)
• =DependsOn(FillForegnd) + Setf("Prop.Color",FillForegnd)
ShapeSheet vor Code
Formeln im ShapeSheet sind der effizienteste Weg, um in Visio eine Ereignisbehandlung zu erreichen.
Schreiben Sie keine Routinen für die Ereignisbehandlung, wenn Formeln in Zellen ausreichen!
Demo
ShapeSheet-Programmierung ShapeSheet-Programmierung
Entwicklungsumgebung 2:Automation in Visio
Das Visio Objektmodell
Klar strukturierterAufbau, schlank
Vordefinierte Objekte für Dokument, Seite und Fenster etc.
Grafisch über Online-Hilfe navigierbar
StatusBarItemsStatusBars
ToolbarItemsToolbarsToolbarSets
MenuItemsMenuItems
AccelItems
Menus
AccelTables
MenuSets
EventList
AddOns
Colors
Fonts
Styles
Shapes
Pages
Documents
W indow s
Glo
bal
Ap
plic
atio
n
VBE
AddOn
Font
Style
Pag
e
Master
Shape
Do
cum
ent
Cell
CharactersColor
Event
VBProject
1
Selection
Toolbar
StatusBarItem
ToolbarItemToolbarSet
StatusBar
MenuItemMenuItemMenuMenuSet
AccelItemAccelTable
UI object
UI object
Win
do
w
ThisDocument
ActivePage
ActiveDocument
ActiveWindow
Page
Document
Masters
Mas
ter
Layers
Layer
Connects
Connect
ShapesShape…
ConnectsConnect
ConnectsConnect
Layers
Layer
Shapes
ShapeShapes
Shape
Entwicklungsumgebungen
VBA
• Integriert - Development right out of the box!
• Schnell, geeignet für die meisten Aufgaben
COM-fähige Sprachen
• Z.B. VB, VC++, VBA, Delphi, etc.
• Für externe Add-Ons: VSL
• Zur Integration von Visio in eigene Systeme
Wie wird entwickelt
ShapeSheet und VBA-Code sind in Visio miteinander verbunden
Nicht Visio wird gesteuert, sondern dasdarunter liegende ShapeSheet für jedes Shape (selbst das Zeichenblatt !)
Für eine effektive Entwicklung sind sowohl Kenntnisse der ShapeSheet-Programmierung als auch von Automation (VB(A), C++, Delphi) nötig
Grundregel: Erst Shapes.... Dann Code
Planung einer Visio-Lösung
Vorlagen erleichtern den Benutzern die Arbeit
Das Programm muss folgende Aufgaben erfüllen:• User Interface und Schutz
• Dateioperationen, Datenablage
• Behandlung der einzelnen Shapes
Performance bedenken (VSD‘s > 10000 Shapes)
Coding Issues
Early vs. late binding, Variants meidenVBA code ist Bestandteil der ZeichnungCode kann geschützt werden –
Extras / Eigenschaften / Schutz im VBA-Editor
Zusammengesetzte Statements sind möglich, aber schwerer zu debuggen
Wann läuft der Code?
Beim Start von Visio 2000• Pfad für Add-On einstellen
Aus dem Add-On Menü• Der Visio „Entwickler-Modus“
Beim Öffnen eines Dokuments• Alternativ RunModeEntered
Bei der Auswahl einer Menüoption• Oder Aktivierung eines Toolbar-Buttons
Ein Dokument erzeugenVerweis auf die "Documents"
collection des Application-Objekts erzeugenSet oDocs = Visio.Application.Documents 'oder
Set oDocs = Application.Documents 'oder
Set oDocs = Documents
Ein neues Dokument hinzufügenSet oDoc = Documents.Add("Diagramm.vst")
Set oDoc = Documents.Add("")
Set oDocStencil = Documents.OpenEx( _ "Blocks.vss", visOpenDocked)
Die Schablone bestimmenSet oDocStencil = Documents("Basic Shapes.vss")
Die "Masters" Collection der Schablone holenSet oMasters = oDocStencil.Masters
Verweis auf die abzulegenden ShapesSet oMaster = oMasters.Item("Star 5") 'oder
Set oMaster = oMasters("Star 5")
Sicherstellen, dass auf die Masters der Schablone zugegriffen wird, nicht die der Zeichnung!
Verweise auf Mastershapes
Die Zeichnungsseite holenSet oPage = ActiveDocument.Pages.Item(1)
Set oPage = ActivePage
Das Mastershape ablegenSet oShape = oPage.Drop(oMaster,4.25,5.5)
4.25, 5.5 geben die Koordinaten des Pin‘s an und werden immer in Inch angegeben!
Bei Bedarf mit ConvertResult die Einheiten umrechnen
Master auf der Seite ablegen
Text zu Shapes hinzufügen
Die Text-Eigenschaft des Shapes setzenoShape.Text = “Das ist ein String"
ASCII linefeed erzeugt ZeilenumbrücheoShape.Text = "Karl Namenlos" & _
Chr$(10) & "Vorstandsschläfer"
Anführungszeichen in Strings verdoppelnshpObj.Text = """Hello?"""
Eine übersichtlichere Möglichkeit:shpObj.Text = Chr$(34) & "Hello" & Chr$(34)
In Visio’s Objektmodell wird eine Formel durch ein Cell-Objekt repräsentiert
So erhalten Sie ein Cell-ObjektSet oCell = oShape.Cells("Width")
So erhalten Sie ein Cell-Objekt einer Seite (auch die Seite ist ein Shape)Dim oPageSheet as Visio.Shape
Set oPageSheet = ActivePage.PageSheet
Set oCell = oPageSheet.Cells("PageWidth")
Formeln von Shapes lesen
Die Eigenschaft Formula einer Zelle liefert die ShapeSheet-Formel als StringDim sFmla = String
sFmla = oCell.Formula
Die Eigenschaft Result liefert den Wert der Formel als Double in den angeg. EinheitenDim dFmlaResult as Double
dFmlaResult = oCell.Result("in")
dFmlaResult = oCell.Result("mm")
Siehe auch ResultInt, ResultIU, ResultStr
Formel oder Ergebnis?
Eine Formel festlegen
Setzen Sie die Eigenschaft Formula:oCell.Formula = "=GUARD(Width*2)"
Setzen Sie die Eigenschaft ResultoCell.Result(visNumber) = 42
Auch ResultInt und ResultIU lassen sich setzen, ResultStr ist read-only
Zum Überschreiben einer geschützten Formel benutzen Sie FormulaForce (Formeln lassen sich mit Guard schützen)
Die meisten Collections in Visio starten bei 1, außer UI objects und Systemsachen (bei 0)
Die Count Eigenschaft liefert die Anzahl der Elemente einer Collection
Seit Visio 2000 auch über for eachFor each shp in ActivePage.Shapes
'shape bearbeitenNext shp
Eine Collection bearbeiten
Masters, Pages, Styles, Fonts, ColorsName, Fullname, PathCreator, Description, Keywords, Subject,
TitleReadOnly, Saved, InPlace
Wichtige Eigenschaften
Eine Seite holenSet oPage = oPages.Item("pagename")Set oPage = oPages.Item(index)
Die aktive Seite holenSet oPage = Application.ActivePage
(Das aktive Fenster muss ein Zeichen-fenster sein, sonst erhält man einen Fehler!)
Daten aus Seiten auslesen
Eine Shape-Collection kann 'normale' Shapes, Gruppen, Führungslinien, linked/embedded objects enthalten
Die Type Eigenschaft liefert den Typ des Shapes:•visTypeShape, visTypeGroup, visTypeGuide, visTypeForeignObject, visTypePage
Weitere Infos in der Entwickler-Referenz Online-Hilfe oder im DVS
Daten aus Shapes auslesen
Das aktive Fenster feststellenSet oWindow = Visio.ActiveWindow
Den Typ eines Fenster feststellenIf oWindow.Type <> visDrawing Then Debug.Print "Kein Zeichenfenster"End If
• Type: visDrawing, visSheet, visStencil, visIcon
• SubType: visPageWin, visMasterWin, visPageGroupWin, visMasterGroupWin
Mit Fenstern arbeiten
Nutzen Sie CellsSRC, um über Abschnitt, Zeile und Zelle auf Shapes zuzugreifenSet oCell = oShape.CellsSRC _(visSectionControls, _ '(Controls Absch.)
visRowControl + 3, _ '(4. Zeile)
visCtlX) '(Controls.X Zelle)
Siehe auch die Methoden SectionExists, RowExists, CellExists, CellsSRCExists
Eine Überprüfung sollte immer statt-finden, da evtl. Abschnitte im Shapesheet fehlen können!
Die Methode CellsSRC
Verhalten in ShapeSheet-ZellenShapeSheet EreignisseVBA Code hinter Ereignissen
• Für Visio-Objekte
• Für ActiveX Controls
Visio-Ereignisbehandlung
Eine Formel kann von anderen Zellen abhängen•PinY =(BeginY+EndY)/2•EndY = PAR(PNT(
Sheet.2!Connections.X1,Sheet.2!Connections.Y1))
Es gibt ein Abhängigkeitsnetzwerk:• PinY hängt ab von EndY, da wiederum von Sheet.2!
Connections.X1 abhängt.
• Der Wert von Connections.X1 ändert sich und sorgt dafür, daß EndY und PinY neu berechnet werden.
Zell-Abhängigkeiten
VBA code für Ereignisse
Ereignisse sind Teil der Typelib für Visio
Die Objekte haben Ereignisse definiert, die nur bei bestimmten Objekttypen feuern
Ereignisbehandlung mit VBA auch in Visio 5.x
AfterModal BeforeSelectionDelete DocumentCreated SelectionChangedAppActivated BeforeShapeDelete DocumentOpened ShapeAddedAppDeactivated BeforeStyleDelete DocumentSaved ShapeChangedAppObjectActivated BeforeWindowClose DocumentSavedAs ShapeDeletedAppObjectDeactivated BeforeWindowPageTurn FormulaChanged StyleAddedBeforeDocumentClose BeforeWindowSelDelete MarkerEvent StyleChangedBeforeDocumentSave CellChanged MasterAdded TextChangedBeforeDocumentSaveAs ConnectionsAdded MasterChanged WindowActivatedBeforeMasterDelete ConnectionsDeleted PageAdded WindowOpenedBeforeModal DesignModeEntered PageChanged WindowTurnedToPageBeforePageDelete DocumentAdded RunModeEnteredBeforeQuit DocumentChanged SelectionAdded
Unterstützte Ereignisse
Hierarchische Ereignissketten
Wählen Sie die Quelle, die für Ihre Aufgabenstellung am sinnvollsten ist
Viele Ereignisse werden von mehr als einem Objekt generiert:• Page.ShapeAdded -> Feuert, wenn ein Shape der Seite
hinzugefügt wird
• Doc.ShapeAdded -> Feuert, wenn ein Shape irgendeiner Seite des Dokuments hinzugefügt wird
• App.ShapeAdded -> Feuert, wenn ein Shape irgendeiner Seite in irgendeinem Dokument der Anwendung hinzugefügt wird
Im VBA-Objektbrowser erhalten Sie Informationen über die einzelnen Ereignisdefinitionen
Document Ereignisse
Das vor-instantiierte Document-Objekt gibt Ihnen Zugriff auf verschiedene Ereignisse
Arbeiten mit WithEvents
Das “WithEvents” Schlüsselwort erlaubt das Schreiben von Code für jedes Quellobjekt eines Ereignisses
Die WithEvents Variable muss an ein bestehendes Objekt 'gebunden' werden:
Dim WithEvents aPage As Visio.Page
Set oPage = Visio.ActivePage
ActiveX Controls
Jedes ActiveX Control kann in ein Visio-Dokument eingefügt werden.
Das Dokument muss sich im Run-Mode befinden, damit Ereignisse ausgelöst werden
Ereignisbehandlung für ActiveX-Controls geschieht auf die gleiche Weise wie für Visio-Objekte mit WithEvents
Bis voraussichtlich Jahresende wird es auch ein Visio ActiveX-Control geben (für Viewer-Funktionalität)
Einstellungen unter Extras/Optionen können die Ereignisbehandlung abschalten
Application.EventsEnabled kann dazu ebenfalls benutzt werden
Persistenz wird durch zwei Methoden möglich:
• DocumentOpened
• RunModeEntered
Hinweise
Holen Sie sich ein Zellobjekt, welches einen Teil des Shapes darstellt, von dem die Klebung ausgeht
Nutzen Sie GlueTo oder GlueToPos dieses Zell-Objektes und geben Sie an, an welchem Shape Sie ankleben wollen
Shapes verbinden
Steuerelement (Control handle)oFromCell = oShape.Cells(“Controls.X1”)
Beginn- oder Endpunkt eines 1-D Shapes
oFromCell = oShape.Cells(“BeginX”) Ecke eines Shapes (an "PinX" oder "Geometry1.X1" Zellen bei Führungslinien)
oFromCell = oShape.Cells(“AlignLeft”)
Jede Zelle eines X,Y Paares ist möglich (die andere wird von Visio automatisch geklebt)
Die Ausgangszelle
An andere Shapes ankleben
GlueTo klebt an spezifische Stelle eines ShapesoFromCell.GlueTo _
oToShape.Cells("Connections.X1")
GlueToPos klebt an eine X,Y Position, die einen Anteil des Ausrichtungs-feldes des Shapes darstelltoFromCell.GlueToPos oToShape, 0.5, 0.5
GlueToPos erzeugt immer einen Verbindungspunkt, selbst wenn bereits einer vorhanden ist.
Daten zu Shapes hinzufügen
Sie erhalten über die Eigenschaft Cells jede benannte Zelle in einem ShapeSheet, auch Datenfelder oder benutzerdefinierte Zellen
Was passiert, wenn die Zelle nicht existiert?Kann durch CellsExists getestet werden
Zelle kann per VBA hinzugefügt werden
Die Connects Eigenschaft eines Shapes liefert dessen Verbindungen
Enthält für jedes Shape, an das angeklebt wurde, ein Connect-Objekt
FromSheet, ToSheet EigenschaftenFromPart, ToPart EigenschaftenFromCell, ToCell Eigenschaften
Infos über Connections
A verbunden nach B
(2-D nach 2-D über Steuerelement)
A hat einen connects.Count = 1 FromSheet = A, ToSheet = BFromPart = visControlPoint + 0ToPart = visConnectionPoint + 0FromCell, ToCell = Cell-Objekte für FromPart, ToPart
A B
Steuerelement zu Shape
Window-Eigenschaften
Zoom Liest oder setzt die Zoomeinstellung
(Fliesskommawert 1.00 = 100%)
Page, PageFromName, PageAsObj Liest oder setzt die angezeigte Seite
Window-Methoden
GetViewRect Liefert Koordinaten des Fensterrahmens
DockedStencils Liefert die Namen aller geöffneten
Schablonen
Activate Aktiviert das entsprechende Fenster
Windows.Add
Damit erzeugen Sie ein neues Fenster im Bereich der Visio-AnwendungActiveWindow.Windows.Add("My Anchor", , _
visAnchorBarAddon)
Kann von folgendem Typ sein: visAnchorbarAddon, visStencilAddon,
oder visDrawingAddon
Windows.Add - 2
Die ideale Basis für Add-Ons und eigene Lösungen innerhalb der Visio Anwendungsoberfläche
Spatial Relations
Mit SpatialRelation stellen Sie die räumliche Beziehung zweier Shapes fest.
Liefert einen der angegebenen Werte:visSpatialOverlap, visSpatialContain,
visSpatialContainedIn, visSpatialTouching
visSpatialOverlap
Query Events
Neu seit Visio 2000Sie können jetzt auf Ereignisse testen und
diese bei Bedarf auch abbrechen
QueryCancelSelectionDelete
SelectionDeleteCanceled BeforeSelectionDelete
Shape wird gelöschtShape wird nicht gelöscht
Was kann angepasst werden?
• Menüeinträge
• Shortcuts
• Symbolleisten
• Statuszeilen
Größe der Änderung sollte beachtet werden, je nach Aufwand zwei Lösungswege
Das Visio-UI anpassen
MenuItems
MenuItem…
MenuItems
MenuItem
Menus
Menu
MenuSets
MenuSet
AccelItems
AccelItem
ToolBars
ToolBar
StatusBarItems
StatusBarItem
ToolBarItems
ToolBarItem
AccelTables
AccelTable
ToolBarSets
ToolBarSet
StatusBars
StatusBar
UIobject
Application
AddOns
Documents
Windows
UI-Objekte im Objektmodell
Umfang der Änderungen
• Kleine Änderungen direkt durchführen
• Große Änderung in UI-File schreiben
Persistenz
• Dauerhafte Änderungen an das Dokument oder an die Applikation binden
• Temporäre Änderungen direkt durchführen oder ein UI-File laden
Mögliche UI-Änderungen
Kann zur Verknüpfung eines Shapes oder eines Masters mit einem Datensatz in einer Datenbank verwendet werden
Als Vorgabe besitzen MasterShapes eine ID, normale Shapes besitzen keine
Beispiel: {2287DC42-B167-11CE-88E9-0020AFDDD917}
Unique Ids für Shapes
Lesen einer UniqueID:IDStr = shpObj.UniqueID(visGetGUID)
Lesen und Erzeugen einer UniqueIDIDStr = _ shpObj.UniqueID(visGetOrMakeGUID)
Löschen einer UniqueIDshpObj.UniqueID(visDeleteGUID)
Arbeiten mit GUIDs
Visio 2002 kann jede Zeichnung im Format XML, alternativ zum Binärformat speichern
Viele Möglichkeiten für Erweiterungen
Spezifikation in „XML for Visio“-Whitepaper (alle Whitepaper auf MSDN verfügbar)
Visio und XML (2002)
Visio lässt sich in Gesamtlösungen einbetten
Aber: Visio muss auf dem System separat installiert sein
Visio-ActiveX-Control in Vorbereitung
Embedded Visio
Planung einer Visio-Lösung
Erst Shapes ... – dann Code!Vorlagen für die Lösung erleichtern den
Benutzern die ArbeitProgramm muss folgende Aufgaben
erfüllen:
• User Interface und Schutz
• Dateioperationen, Datenablage
• Behandlung der einzelnen Shapes
Verteilung & Wartung
Deployment
• Verteilung von Vorlagen und Schablonen
Wartung
• Problematisch, da VBA Code in Dokument
• Alternative: VBA in der Schablone, 'leere' Datei
• Alternative: externe Automation
Weitergehende Anpassungen
• Über die Registry-Settings, PC-spezifisch!
Demo(s)
Automations-Programmierung mit Visio
Automations-Programmierung mit Visio
Konkrete Anwendung inVisio selbst – mitgelieferte Lösungen
Gemeinsame Engine und DateiformatGemeinsame Engine und Dateiformat
StandardStandard EnterpriseEnterpriseTechnicalTechnical ProfessionalProfessional
Datenbankmodellierung mit Visio
Demo
Datenbankmodellierung mit VisioDatenbankmodellierung mit Visio
Gemeinsame Engine und DateiformatGemeinsame Engine und Dateiformat
StandardStandard EnterpriseEnterpriseTechnicalTechnical ProfessionalProfessional
Softwaremodellierung mit Visio
Demo
Softwaremodellierung mit VisioSoftwaremodellierung mit Visio
Wo gibt's Informationen
Online ActiveX Automationsreferenz
• Entwickler-Referenz aus dem Hilfe-Menü
• Installiert in \Visio\Help bei der Installation
• Suche nach Objekt, Eigenschaft, Methode, Ereignis
Im Object Browser (in VBA [F2])Microsoft Developer Network unter
http://msdn.microsoft.com/visio
Im Ordner DVS • Libraries enthalten Informationen für C, VB
• C-cpp
• VB
• Sample Applications
• VB Solutions
• VBA SolutionsDeveloping Visio Solutions Buch
Wo gibt's Informationen (2)
Trainings
Training erfolgt stufenweise
• Anwendertraining (2 Tage)
• Visio Development Training (5 Tage)
• Workshops zu Spezialthemen (1-2 Tage)
Wo gibt’s weitere Info’s? MSDN online
• http://www.microsoft.com/germany/msdn
MSDN quickie• http://www.microsoft.com/germany/msdn/quickie
MSDN TechTalk-Newsgroup• news://msnews.microsoft.com/
microsoft.public.de.german.techtalk
VBA-Magazin• http://www.vba-magazin.de
• 4/99, 6/99, 5/2000, 2/2001
Bücher• Edson, David “Professional Development with
Visio 2000”, Sams, ISBN: 067231813X
Noch Fragen?
Microsoft TechEd 2001
Visio Development Training
Visio Newsgroup bei MS
Fragen!?
Uff...Uff...
Vielen Dank für Ihre Aufmerksamkeit