Shape-Datensätze

Sehr geehrter Herr Martin,
vielen Dank für das freundliche Gespräch und die Unterstützung. Hier noch einmal die Fehlerbeschreibung von meiner Seite.
• Ich habe ein Mastershape erzeugt. Die Datensätze des Mastershapes wurde nicht manuell erzeugt, sondern wurden von einer Shape-Datensatz Vorlage (hier „EMS_Instrument“) übernommen. Bei den Shapedaten habe ich eine „Variable Liste“ erzeugt mit fest hinterlegten Einträgen aus der Shapedaten-Vorlage.
• Nutze ich nun dieses Mastershape in einer Zeichnung und definiere unter „Funktion“ einen frei gewählten Text welcher nicht in der vordefinierten Auswahl besteht z.B. ABC. Dieser wird jedoch nach dem Schließen und erneuten Öffnen der Zeichnung aus dem verwendeten Shape wieder entfernt/gelöscht:
• Aus meiner Sicht gleicht Visio beim Laden der Zeichnung alle in der Zeichnung verwendeten Shapes mit den Mastershapes bzw. eigentlich mit der verknüpften Datensatzvorlagen ab. Da bei diesem der Eintrag „ABC“ nicht existiert wird der Eintrag ABC gelöscht bzw. die einzelnen Datensatzvorlage einfach wieder überschrieben. (Hinweis am Rande: Dieses passiert nur, wenn die variable Liste bereits in der Datensatzvorlage Einträge enthält. Ist die variable Liste in der Datensatzvorlage leer, werden freie Eingaben in der Zeichnung nicht überschrieben.)
• Ich habe mir nun über den Weg geholfen, dass ich im Mastershape die Verknüpfung „User.CPMSetList“ zur Datensatzvorlage entfernt habe und so kein Abgleich mehr Datensatzvorlage besteht.
• Ich würde mich freuen, wenn sie mir dieses Phänomen bei ihnen auch einmal gegenprüfen könnten.
• Zur Info: Ich nutze Visio Professional 2016 im „Verfahrenstechnik“ Modus
Best Regards
#####
Hallo Herr T.,
es geht einfacher: erstellen Sie ein Shape mit Daten. Fügen Sie die Daten zu einem ShapeDatensatz hinzu:
Übertragen Sie die Daten auf ein zweites Shape. Die Daten sind auf dem zweiten Shape vorhanden. Löschen Sie den Shape-Datensatz. Die Datenfelder (und mit ihnen die Daten) werden ebenfalls gelöscht. Das kann nicht im Sinne des Erfinders sein.
Ich habe hier Visio in Office 365 Version 1905; Build 11629.20246 – das dürfte die neueste Version sein.
 
Umgekehrt: mir ist aufgefallen: wenn ich das Shape mit den Daten, die aufgrund eines Daten-Satzes erzeugt wurden, in eine andere Datei kopiere, wird der Shape-Datensatz mitkopiert.
Sie haben recht: der Verweis auf den Daten-Satz steht im ShapeSheet – wird die Zelle „User.CPMSetList“ gelöscht, wird die Verknüpfung aufgehoben – alles klappt wieder.
Was mich wundert: ich finde die Shape-Datensätze nicht! Weder im ShapeSheet des Dokuments noch des Zeichenblattes. Auch nicht im Zeichnungsexplorer. Irgendwo müssen sie doch gekapselt sein … Witzig: wenn ich mit dem Makro diese Aktionen aufzeichne, erhalte ich: NICHTS!
 
Sorry – ich muss es deutlich sagen – das ist wohl ein Bug! Heißt: „vorsichtig“ bis gar nicht mit den Shape-Datensätzen umgehen!
 
Ich habe in meinem Buch „Visio 2013/2016 für Entwickler“ aufgelistet:
Erstaunlicherweise stehen einige Dinge nicht im ShapeSheet. Man kann sie nur per Programmierung auslesen. Hierzu gehören:
• Der Text
• Werden Informationen aus einer Datenquelle mit einem Shape verknüpft, kann man aus den ShapeSheet nicht die Verknüpfung ablesen. Die Daten werden bei jeder Aktualisierung neu in die Daten des Shapes geschrieben.
• Der Name des Zeichenblattes
• Der Name des verwendeten Hintergrundblattes
 
Ich werde es in der nächsten Auflage um den Punkt „Shape-Datensätze“ erweitern.
 
schöne Grüße
 
Rene Martin
 

OneNote

Morgen unterrichte in OneNote. Natürlich werde ich in der Schulung zeigen, wie man eine Visio-Zeichnung in sein Notizbuch einbindet.

Datengrafik

Hallo Herr Martin,
Noch eine Frage zu Visio:
Ich würde die Prozesslandkarte gerne für eine Reifegradanalyse nutzen.
Das heißt konkret, dass in jedem Shape der Reifegrad in drei Stufen angegeben werden kann. Abhängig von der Angabe des Reifegrads (Bsp. niedrig, mittel, hoch) soll in oder neben dem Shape eine Ampel mit entsprechender Ampelfarbe angezeigt werden.
Die Angaben über die Reifegarde sollten aus Visio nach Excel für Auswertungen exportiert werden können.
Wie schätzen Sie die technische Umsetzung dieser Idee ein?
#####
Hallo Herr H.,
ich würde das mit einer Datengrafik lösen: definieren Sie ein Datenfeld (z.B. „Reifegrad“). Sie können sich den Text als Feld anzeigen lassen (Einfügen / Feld).
Dann wechseln Sie in die Registerkarte „Daten“, öffnen den Dialog „erweiterte Datengrafiken“ und erstellen eine Datengrafik.

Daten visualisieren

Man muss in Visio nicht immer mit den Datengrafiken visualisieren. Man kann auch eine Beziehung zwischen Shape und Daten herstellen – schon kann man über die Größe eine Beziehung der einzelnen Elemente zueinander darstellen (hier: Passagiere / Flughafen)

Suche nach Shape-Name

Übrigens – wenn Sie den Namen eines Shapes in Visio wissen (beispielsweise, weil Sie ihn mit einem Bericht oder per Programmierung ausgelesen haben), können Sie nach dem Shape suchen lassen. Im Suchen-Dialog müssen Sie allerdings explizit die Option „Shape-Name“ auswählen.

Reihenfolge der Shape-Daten

Interessant.
Die Reihenfolge der Shape-Daten eines Visio-Shapes kann nicht geändert werden.
Um die angezeigte Reihenfolge zu ändern, müssen Sie einen Sortierschlüssel eingeben.
So wird aus der ursprünglichen Reihenfolge
Anschaffungsdatum-Preis-Standort-Verantwortlicher
wenn Sie die Werte 400-300-200-100 eingeben:
Verantwortlicher-Standort-Preis-Anschaffungsdatum.
Ändert man nun den Wert von „Standort“ auf „50“, erscheint der Standort nicht an erster Stelle, wie erwartet, sondern an letzter Stelle.
Der Grund: der Sortierschlüssel wird alphanumerisch gelesen (also von links nach rechts) und nicht numerisch (der Größe nach).
Die Lösung:
Tragen Sie 050 ein – dann steht der Standort an erster Stelle.

Daten

Sehr geehrter Herr Martin,

ich benötige Ihre Hilfe.

Mein Ziel wäre es über eine Excel (Standardflussdiagramm – Datenschnellansicht…) in Visio ein fertiges Flussdiagramm zu bekommen und wenn sich im Prozess etwas ändert möchte ich die über Excel aktualisierten.

Ist dies sooo einfach abzuwickeln? Wenn ja was benötige ich an Software und was kostet mich Ihre Unterstützung.

Vielen Dank schon mal im Voraus.
#####
Hallo Herr W.,

SO geht das leider nicht.
Sie können in Visio eine Zeichnung (bspw. ein Flussdiagramm) erstellen und dann, wenn Sie Visio Professional (!) haben (mit der Standard-Version klappt das nicht!) eine Excel-Tabelle an die Zeichnung binden und per Drag & Drop die Excel-Datensätze mit den Shapes verbinden. Ändern sich die daten, können Sie die Daten in der Zeichnung aktualisieren.

Was Sie programmieren müssen: generiere per Knopfdruck eine Zeichnung. Kann man programmieren – ist aber sehr aufwändig!

Hilft Ihnen das?

schöne Grüße

Rene Martin

Diagramm aktualisieren

Bald beginnt die Fußballweltmeisterschaft in Russland. Das Land bereitet sich darauf vor.
Ich habe das Diagramm vor vier Jahren in Visio erstellt. Habe die mir damals bekannten Daten und Ort in eine Visio-Zeichnung eingetragen. Heute stelle ich fest, dass die Zahlen nicht mehr korrekt sind – ebenso sind einige Austragungsstätten verschwunden; andere hinzugekommen. Nun – kein Problem – die Zahlen werden korrigiert; einige Shapes gelöscht; das Diagramm aktualisiert – und schon ist das Diagramm mit den korrekten Zahlen fertig.

Shapedaten im Shape und auf dem Zeichenblatt

Amüsant. Ein Zeichenblatt hat Shape-Daten. Wenn nun ein Shape darauf verweist, also mit
=ThePage!Prop. …
einen Bezug herstellt, dann erhält ein neues, leeres Blatt die Shapedaten, sobald das Shape hinüber kopiert wird.
Das heißt: Speichert man das Shape in einer Schablone, bekommt das Blatt die Daten. Diese können gefüllt werden. Auf dem Shape werden sie dann angezeigt.

Datenexport

Guten Tag Herr Martin,

ich habe mal versucht eine Kombination von Visio und Excel, wie von Ihnen aufgezeigt zu realisieren. Dabei sind noch einige Schwierigkeiten aufgetaucht:

Welche Einstellung muss vorgenommen werden damit in der Spalte Beschreibung gleiche Einträge zusammen gefasst werden?

Die Antwort:
Sie haben beim Export die Möglichkeit, im dritten Schritt zu gruppieren und in den Optionen gleiche Werte zusammenzufassen: