AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Wie Netzplan in DB abbilden?
Thema durchsuchen
Ansicht
Themen-Optionen

Wie Netzplan in DB abbilden?

Ein Thema von Jumpy · begonnen am 19. Feb 2013 · letzter Beitrag vom 20. Feb 2013
Antwort Antwort
Seite 1 von 2  1 2      
Jumpy

Registriert seit: 9. Dez 2010
Ort: Mönchengladbach
1.737 Beiträge
 
Delphi 6 Enterprise
 
#1

Wie Netzplan in DB abbilden?

  Alt 19. Feb 2013, 09:52
Datenbank: Egal • Version: -- • Zugriff über: --
Hallo,

zur Unterstützung der Steuerung eines komplexen Workflows (Releasewechsel) möchte ich ein Hilfstool erstellen. Am RW sind mehrere Abteilungen quer über die Firma verteilt beteiligt. Koordiniert wird das mit einer Papier-Checkliste und viel Telefonieren wer was wann schon gemacht hat.

Da dieser Prozess sowas wie ein kleines, an einem Tag stattfindendes Projekt darstellt ist mit aus der Schule als gute Analogie der Netzplan (s. Bild) eingefallen. Hier ist ersichtlich in welcher Reihenfolge einzelne Schritte erfolgen müssen. Abhängigkeiten sind ersichtlich.

Im Prinzip möchte ich also nachher sowas wie einen Netzplan in meiner GUI sehen, wo dann angeklickt werden kann, was erledigt ist, dadurch wird erst etwas ggf. davon Abhängiges freigeschaltet usw.

(Gedacht ist das nacher als Server-Client-Anwendung, wobei der Server ggf. der Client des Projektleiters ist, der alles koordiniert, aber auch jeder andere kann über seinen Client sehen, was der aktuelle Stand ist und kann auch, die Dinge, die er erledigt hat freischalten).

Zu Anfang fehlt mir aber die Idee, wie man das in einer DB abbildet. Es gibt das ganze als eine Art Tabellendarstellung (s. Bild) aber das ist mMn nich DB-geignet (keine Normalisierung usw.).
Hat jemand in der Richtung mal was gemacht oder eine Idee?
Miniaturansicht angehängter Grafiken
image004.gif   sazsez.jpg  
Ralph
  Mit Zitat antworten Zitat
Benutzerbild von Aphton
Aphton

Registriert seit: 31. Mai 2009
1.198 Beiträge
 
Turbo Delphi für Win32
 
#2

AW: Wie Netzplan in DB abbilden?

  Alt 19. Feb 2013, 10:05
Warum keine Normalisierung?
Normalisiere alles wie gewohnt, passt halt die Darstellung dann dementsprechend an.
Mein erster Gedanke wäre das hier:

Vorgang {[ID, Bezeichnung]}
Vorgänger {[ID, vorID]}
Nachfolger {[ID, nachID]}

Die Beziehung zwischen Vorgäng und Vorgänger/Nachfolger ist 1:n.
Du kannst bei der Darstellung der Vörgänge die Vorgänger und Nachfolger ermitteln und diese auch genauso wie in dieser Tabelle
anzeigen.

Edit: Ich hab mir nur das erste Bild angesehen und direkt daraufhin geantwortet.
Falls es nichts zur Sache tut, dann sry xD
das Erkennen beginnt, wenn der Erkennende vom zu Erkennenden Abstand nimmt
MfG
  Mit Zitat antworten Zitat
Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#3

AW: Wie Netzplan in DB abbilden?

  Alt 19. Feb 2013, 11:19
Die Beziehung zwischen Vorgäng und Vorgänger/Nachfolger ist 1:n.
Du kannst bei der Darstellung der Vörgänge die Vorgänger und Nachfolger ermitteln und diese auch genauso wie in dieser Tabelle
anzeigen.
Nö, eigentlich nicht. Hättest du dir das erste Bild mal genauer angeschaut, wärst du auf eine m:n Beziehung gekommen. Schließlich kann jeder Vorgang mehrere Vorgänge als "Vorgänger" haben und mehrere Vorgänge als "Nachfolger"

Ich würde da jetzt so ein Datenbankdesign machen:

Tabelle "Vorgang"
- id int autoinc primary_key
- duration int (Zeitaufwand in Minuten oder sowas)
- name varchar(255) (Name des Vorgangs, also z.B. "Material bestellen")

Tabelle "VorgangVorgang"
- id int (optional)
- predID int
- succID int

Die Namen könnte man vielleicht noch überdenken
  Mit Zitat antworten Zitat
Benutzerbild von Aphton
Aphton

Registriert seit: 31. Mai 2009
1.198 Beiträge
 
Turbo Delphi für Win32
 
#4

AW: Wie Netzplan in DB abbilden?

  Alt 19. Feb 2013, 11:25
Sry, stimmt. Ich habe nur aus der Perspektive von "Vorgang" gedacht.. Also zu einem Vorgang kann es mehrere Vorgänger/Nachfolger geben..
Danke fürs Korrigieren
das Erkennen beginnt, wenn der Erkennende vom zu Erkennenden Abstand nimmt
MfG
  Mit Zitat antworten Zitat
EarlyBird

Registriert seit: 29. Mär 2007
235 Beiträge
 
#5

AW: Wie Netzplan in DB abbilden?

  Alt 19. Feb 2013, 11:28
Bei DevExpress findest Du eine Komponente "ExpressOrgChart™ Suite"
Die ist DB gebunden.
http://www.devexpress.com/Products/VCL/ExOrgChart/
In der Trialversion gibt es auch eine Demo dazu.
Vielleicht hilft Dir das als Ansatz ja weiter
  Mit Zitat antworten Zitat
Furtbichler
(Gast)

n/a Beiträge
 
#6

AW: Wie Netzplan in DB abbilden?

  Alt 19. Feb 2013, 14:31
Der Renderer ist aber mistig, oder?
  Mit Zitat antworten Zitat
QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
1.944 Beiträge
 
Delphi 12 Athens
 
#7

AW: Wie Netzplan in DB abbilden?

  Alt 19. Feb 2013, 15:18
Einen Graph aus Knoten und gerichteten Kanten abbilden.

nodes{ID,Bezeichnung,Dauer, Farbe...}
edges{ID(der form halber),StartNodeID, EndNodeID, Bezeichnung, LinienArt, Farbe,...}

mehr braucht es nicht
Eine liste von Knoten und eine Adjazenzliste.
Andreas
Monads? Wtf are Monads?

Geändert von QuickAndDirty (19. Feb 2013 um 15:20 Uhr)
  Mit Zitat antworten Zitat
Furtbichler
(Gast)

n/a Beiträge
 
#8

AW: Wie Netzplan in DB abbilden?

  Alt 19. Feb 2013, 19:42
mehr braucht es nicht
Nun ja. Vielleicht einen Layouter und einen Renderer. Der Layouter sollte die Knoten so plazieren, das sie gleichmäßig angeordnet sind und sich die Verbindungen möglichst nicht überschneiden.

Und der Renderer malt.

Also ein klitzekleinwenig mehr braucht es schon. Und -wie ich finde- sind das die größten Humpen, wobei der Renderer auch keine Hürde ist.
  Mit Zitat antworten Zitat
Jumpy

Registriert seit: 9. Dez 2010
Ort: Mönchengladbach
1.737 Beiträge
 
Delphi 6 Enterprise
 
#9

AW: Wie Netzplan in DB abbilden?

  Alt 20. Feb 2013, 08:40
Hallo und guten morgen. Und erstmal danke.

Bevor das ausartet, mir ging es primär um die Datenbankstruktur und da haben apthon und jfheins ja gute Vorschläge gemacht, die ich als Basis nehmen werde.
Ich werde den Vorgängen zusätzlich einen Rang/Ebene/Kategorie o.ä. spendieren, um zu wissen, welche Vorgänge parallel (auf gleicher Höhe) gezeichnet werden sollen.

Aber mir ging es wie gesagt primär um das Speichern in der DB. Zeichnen will ich das gar nicht, vor allem nicht als Graph mit Linien und so, das könnt ich in Visio 100mal schneller. Meine momentane Idee ist, das jeder Rang ein Panel oder Frame ist in den dann die Vorgänge als Checkboxen oder Button kommen. Aber soweit bin ich mit der Planung noch nicht.
Ralph
  Mit Zitat antworten Zitat
jobo

Registriert seit: 29. Nov 2010
3.072 Beiträge
 
Delphi 2010 Enterprise
 
#10

AW: Wie Netzplan in DB abbilden?

  Alt 20. Feb 2013, 10:23
Ich werde den Vorgängen zusätzlich einen Rang/Ebene/Kategorie o.ä. spendieren, um zu wissen, welche Vorgänge parallel (auf gleicher Höhe) gezeichnet werden sollen.
Wenn Du dass machst, wäre das m.E. eine redundante Information. Ob es notwendig ist, diese Info (Rang) bequem auslesen zu können, sei dahingestellt. Es wäre dann aber notwendig, bei jedem Insert/Update zu prüfen, ob sich die Rang-Infos verschoben haben. Das kann 0-n Sätze (u.U. ganz viele) betreffen.
Also wäre zu entscheiden: Aufwändig nachführen und bequem auslesen oder aktuell abfragen/evaluieren.
Gruß, Jo
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:56 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz