User Tools

Site Tools


part_db

This is an old revision of the document!


Part Database

Die PartDatabase (im folgenden PartDB) soll eine einfache Möglichkeit zur Verwaltung von Bauteilen (elektrisch, mechanisch, optisch, etc.) sein.

Als Grundfunktion stellt sie ein Inventar von Teilen zur Verfügung. Erweiterte Funktionen wie Baugruppenverwaltung und Bestellungserzeugung folgen.

Struktur

Die Struktur der Datenbank lässt sich wie folgt zusammenfassen: Gruppen von Dingen mit Eigenschaften.

Eigenschaften (Attribute)

Die Eigenschaften der Teile werden über Attribute definiert.

Attribut Einheiten

Attribute-Einheiten (Tabelle attribute__units) haben die folgenden Felder:

  • Name (name): Ausgeschriebener Name der Einheit (z.B. Ampere)
  • Symbol (symbol): (Physikalisches) Symbol für die Einheit (z.B. A)

Attribute

Attribute (Tabelle attributes) haben die folgenden Felder:

  • Name (name) : Ausgeschriebener Name des Attributs (z.B. Ausgangsstrom)
  • Symbol (symbol) : Symbol bzw. Abkürzung für das Attribut (z.B. Iout)
  • Art (value_type) : Art des Attributs (s. Attributarten)
  • Einheit (unit): Einheit des Attributs (Fremdschlüssel aus Tabelle attribute__units)
Attributarten

Die Art des Attributs kann eine der folgenden sein:

  • NUMBER : Eine Zahl (int oder float)
  • TEXT : Eine Zeichenkette
  • ENUM : Ein Wert aus einer Liste (s. Attributwertlisten)
  • IMAGE : Ein Bild (Falls nur Dateiname: lokal abgelegtes Bild in einem Ordner mit Namen des Attributs)
  • FILE : Eine Datei (Falls nur Dateiname: lokal abgelegte Datei in einem Ordner mit Namen des Attributs)
  • URL : Eine URL
Attributwertlisten

Je nach Art des Attributs kann die Darstellung in der GUI gewählt werden (Formatierung, Icon, etc.)

Typgruppen & Typen

Um die Einträge zu kategorisieren und die Navigierbarkeit der Datenbank zu verbessern werden die Teile Typen zugeordnet. Die Typen sind in Typgruppen zusammengefasst.

Typgruppen

Typgruppen (Tabelle part__type_groups) haben die folgenden Felder:

  • Name (name): Name der Typgruppe

Typen

Typen (Tabelle part__type) haben die folgenden Felder:

  • Name (name): Name des Typs
  • Gruppe (group): Name einer Typgruppe.(Fremdschlüssel auf Tabelle part__type_groups).
  • Formgruppe (shape_type_group): Name einer Formtypgruppe.

Die Referenz auf ein Formtypgruppe ordnet einem Teiletypen eine Gruppe von Formtypen zu. Die Auswahlmöglichkeiten in der GUI können so auf sinnvolle Werte beschränkt werden.

Z.B. wird dem Typ Schraube die Formtypgruppe Mechanische Bauteile zugeordnet. Bei der Auswahl des Formtyps für eine Schraube werden so keine Elektronikbauteilformen angezeigt.

Distributoren

In der Tabelle distributors werden die Bezugsquellen der Teile abgelegt. Über die Relationstabelle part__variant_distributors werden jeder Teilvariante einer oder mehrere Distributoren zugeordnet.

Die Distributoren haben folgende Felder:

  • Name (name): Name des Lieferanten (z.B. Farnell)
  • Versandkosten (shipping_cost): Versandkostenbetrag (z.B. 4,95€)
  • Freiversandgrenze (free_shipping_limit): Betrag, ab dem der Versand kostenlos ist (z.B. 50€)
  • Webseite (website): URL der Lieferantenwebsite (z.B. http://de.farnell.com)
  • Produkturlmuster (product_url_pattern): URL-Muster zur Erzeugung von Produktlinks (z.B. http://de.farnell.com/{part_id}

Formtypen & Formtypgruppen

Allen Bauteilen muss eine Form zugeordnet werden. Die Form repräsentiert das physische Erscheinungsbild dieses Teils. Formen sind untergliedert in Formtypen und Formtypgruppen.

Teiletypen referenzieren eine Formtypgruppe (s. Typen)

Part & Shape Rendernames

Die Rendernames von Part- und Shapetypen definieren wie die Bezeichnungen der Parts bzw. Shapes gerendert werden.

Part Rendernames

Beispiel:

Rendername des Parttyps Widerstand : {partname} {attr:'Widerstand'} ({attr:'Toleranz'})

PartTypeGroup: Passive Elemente
PartType : Widerstand
Part : Kohleschichtwiderstand
Variante : 10kΩ
Attribute : Widerstand=10kΩ, Art=Dickschicht, Toleranz=5%, etc.

Renderergebnis ⇒ Kohleschichtwiderstand 10kΩ (5%)

Shape Rendernames

Shapetype hat

  • Name : Name des Shapetypes (zum Referenzieren)
  • Rendername : Labeldefinition für Shapes dieses Typs (kann Shape-long/shortname und Shape/Shapevariant-Attribute benutzen)

Shape hat

  • Longname : Kann Shapevariant-long/shortname und Shape/Shapevariant-Attribute benutzen
  • Shortname : Kann Shapevariant-long/shortname und Shape/Shapevariant-Attribute benutzen

Shapevariant hat

  • Longname : Kann Shape/Shapevariant-Attribute benutzen
  • Shortname : Kann Shape/Shapevariant-Attribute benutzen

Syntax

Felder {<feldname>} : z.B: {var-shortname}
Attribute {attr:'<attribut-name>'} : z.B. {attr:'Durchmesser'}

Falls Attribut nicht vorhanden, nichts anzeigen.

part_db.1444914546.txt.gz · Last modified: (external edit)