Hi,
Denk ich auch. Und die Dateien bleiben besser handlebar, wenn sie separat auf dem Server liegen.
Lade ich die Dateien wiederum auf den Server, so stellt der Dateiname (d.h. die Teilenummer) die einzige Verknüpfung dar.
Die Teilenummer wiederum ändert sich, falls z.B. eine Umordnung in eine andere Kategorie erfolgt. Dies sollte zwar nicht passieren, doch in der Anfangszeit ist dies durchaus vorstellbar, dass man da nochmal Teile etwas neu ordnet.
Zumindest beim Testen. Aber spätestens sobald von anderen externen Stellen aus, wie zB. einer BOM-Liste von einem Projekt Bauteile referenziert werden, dürfen sich die Nummern nicht mehr ändern. Du kannst zwar kontrollieren was in der DB und im Katalog passiert, aber halt nicht in fremden Projekten.
Es ist aber sicher nicht verkehrt an dieser Stelle mal grundsätzlich kurz zu überdenken, wie man mit Grenzfällen umgeht, die vielleicht doch eine Änderung erforderlich machen bzw. ob es solche überhaupt gibt, wobei ich speziell an Löschungen denke.
Soll heissen, intuitiv tendiere ich dazu davon auszugehen, das für Löschungen kein Grund besteht. Wenn in der Darstellung eines Teils Fehler sind, dann kann man das ja inhaltlich ändern und wenn es eine neue Version gibt, dann bekommt die eben eine neue Teilenummer.
Ansonsten fällt mir jetzt auf Anhieb keine weitere Situation ein die eine Löschung erforderlich macht.
Und was inhaltliche Änderungen betrifft, die sollten sich m.E. nur auf Fehlerkorrekturen beschränken, also sowas wie ein Tippfehler z.B. Meinetwegen kanns auch in einer Geometriedarstellung eine solche Fehlerkorrektur geben, wenn zB. in einer Teilansicht ein falsches Mass angegeben oder dargestellt wurde, das aber in anderen Ansichten oder sontigen Beschreibungen dieses Teils eindeutig ist.
Selbst für den „Autor“ eines Bauteils sollten diese Beschränkungen gelten, d.h., soweit es Versionsentwicklungen gibt kann er ja neue Teilnummern bekommen, aber es sollte z.B. nicht möglich sein, das einer etwa aufgrund persönlicher Querelen oder eines Streites Teile wieder löschen kann, die er einmal freigegeben hat…
aber das regelt sich wohl schätzungsweise schon damit, dass alle Teile im Katalog automatisch publicdomain- bzw. creativecommons-lizensiert werden sobald sie eingefügt werden.
Demzufolge bleibt nur die datenbankinterne Part_id.
Da einer Part_id jedoch mehrere „untergeordnete“ Versionen zugeordnet sind, d.h. die Part_id eigentlich nur den ersten Teil der Teilenummer , d.h. das BA0001
aus BA0001-M4001ST darstellt und sich die einzelnen Teileversionen durch die Zuorndung der Varianten ergeben, so sieht es auf dem Server dann statt BA0001-M4001ST eben 2-M4001ST aus, wenn man die Part_id als Verknüfung nutzt.
Wenn ich darauf verlinke, würde der Nutzer sich die 2-M4001ST.stp herunterladen, was ich ungünstig finde.
Finde ich auch.
Aber kannst Du der Datei nicht als Name die ganze Nummer in voller Länge, also BA0001-M4001ST, geben ? Das wär doch dann eindeutig.
Achja, ich vergass, es geht ja um die Änderung. In der DB steht ja nun BB0002 und stimmt nicht mehr mit dem Dateinamen überein.
Also habe ich beide Versionen auf den Server abgelegt und die mit Part_id verknüpfte Version in einen „backup“ - Ordner gelegt. Wenn nun aus dem BA0001-… ein BB0002-… werden würde, würde der Link zu BA0001-… nicht mehr funktionieren. In diesem Falle würde das Script im „backup“ Ordner nach der 2-… schauen und dort das File finden, dieses File dann zur Kopie nach BB0002 nutzen und somit wäre die Verknüpfung wieder hergestellt.
Ah. Wenn ich das richtig verstehe baust damit sowas ähnliches wie einen symbolic_link nach. Aber wozu der extra-backup ordner ? Wär doch nicht so schlimm, wenn das Teil sozusagen doppelt im Hauptordner vorliegt, solange Du nicht die BA0001-Nummer wieder freigeben und für ein anderes Teil verwenden willst. Aber davon würde ich intuitiv abraten, ich glaub damit handelt man sich mehr Chaos ein als einem lieb ist, und wie gesagt, spätestens sobald die Teile in Projekten referenziert werden gehts eh nicht mehr.
Wiegesagt, an sich sollten dies Ausnahmefälle sein, doch sind es solche Dinge, welche man meist erst im Laufe der Entwicklung feststellt und eine solche Entwicklung auch etwas in die Länge zieht.
Ja, der Deubel steckt immer im Detail, das stell ich auch immer wieder fest. Je gründlichr man über eine Sache nachdenkt desto mehr wenns und abers gibt es
Aber ich bin nun in einer intensiven Testphase, ist diese dann die nächsten ein zwei Wochen abgeschlossen, werde ich das Teil zum Beta-Test freigeben und dann können wir loslegen mit der Eingabe der Daten und Hochladen der Files.
TF
Cool ! I am looking forward !
Frohes schaffen und Gruss,
Oliver