Blubb - Change-Log und Anleitungen

Status
Für weitere Antworten geschlossen.

itari

Benutzer
Mitglied seit
15. Mai 2008
Beiträge
21.900
Punkte für Reaktionen
14
Punkte
0
Change-Log 0.1:

Die erste Version. Es wird noch schlanker. Es gibt noch einige JavaScript-Fehlermeldungen, die aber keine negativen Effekte haben.


Die Diskussion soll bitte hier laufen.

Itari

===============================================================================

Anleitungen

1] Wie installiert man Blubb?

Blubb steht als .spk-Paket zur Verfügung und kann über den DSM Paketmanager installiert werden (genauso wie man es mit dem AdminTool macht).
Daran denken, dass nach der Installation erst ein Browser-Refresh stattfinden muss, damit die Start-Icon im DSM-Desktop erscheint.
Blubb erschient nicht in der Liste der 3rd-Party-Applications, da es dies ja eh mit dem DSM 3.0 nicht mehr so gibt.

2] Wie navigiert man im Blubb?

Nach dem Aufruf wird eine Datenbank-Fenster angezeigt. Hier steht mit einem Rechtsklick ein Kontextmenü zur Verfügung, mit dem man neue Datenbanken und Datenbanktabellen anlegen, ändern und löschen kann.
Das ist natürlich mit Vorsicht zu genießen, da man sich damit auch viel zerschießen kann. Wer will, kann auch alle Datenbankoperationen mit dem PhpMyAdmin ausführen.

Sobald man eine Tabelle auswählt und klickt, wird ein Tabellenfenster mit der ersten maximal 15 Zeilen angezeigt.
In die Spaltenüberschriften kann man klicken und die Anordnung sowie Sortierung/Gruppierung und Auswahl von Spalten eingreifen.
Hat die Tabelle mehr als 15 Zeilen oder stellt man in der Kopfzeile die Zeilenanzahl geringer, dann kann man über die Zeilen der Tabellen vorwärts und rückwärts blättern.
Ein Abfragemöglichkeit für eine horizontalen Selektion steht zur Verfügung. Hier wird exakte SQL-Syntax für die Formulierung einer 'where'-Klausel erwartet (dazu später noch mehr).

Die Fenster lassen sich verschieben und in der Größe verändern. Eine Ablage (durch den Verkleinerung-Button) am unteren Rand des Bildschirm ist möglich.
Mit der Auswahl einer Zeile steht per Rechts-Klick ein Kontextmenü zur Verfügung. Wählt man die 'View', dann erscheint eine Formulardarstellung der Tabellenzeile.

Refresh- und Print-Button erklären sich von selbst.

Hinzufügen von einer neuen Zeile geht mit dem Button 'Add'. Danach sollte man in die 'View' gehen.

3] Wie legt man eine neue Datenbank bzw. eine Tabelle an?

Datenbank anlegen geht über das Datenbank-Fenster und dem Kontextmenü. Achtung, auf der aller obersten Ebene funktioniert es noch nicht. Also auf eine vorhandene Datenbank stellen und Rechtsklick.
Das Anlegen einer Tabelle geht ebenfalls über das Kontextmenü. Eine neue Tabellen erhält automatisch eine Ident-Spalte. Diese muss genauso beibehalten werden.

Man kann die Tabellen händisch anlegen über die 'column editor'-Funktion oder mittels des SQL-Fensters laden, sofern man eine gültige SQL-Definitionsdatei für eine Tabelle hat (Zwischenablage nutzen))
Selbstverständlich kann man alles auch über PhpMyAdmin erledigen.

Konventionen für das Blubb-Datenbank-Schema:

* alle Spalten/Felder bekommen als Präfix den Namen der Tabelle, also heißt die Tabelle Adresse, dann heißen die Spalten Adresse_Name, Adresse_Ort usw.
* Ausnahmen: technische Spalten, wie 'links', 'attachments' (sollten noch mehr dazu kommen, werde ich die Liste hier ergänzen)
* in manchen Spalten steckt mehr drin als man sieht: 'links', Spalten die den Text 'url' oder 'content' oder 'category' enthalten
* manche Spalten haben ein festgelegte Bedeutung:
- attachments: sind für Dateianhänge gedacht (Pfadangaben); Trennung zwischen mehreren Dateianhängen erfolgt durch ein ', '
- links: sind Verknüpfungen zu anderen Tabellenspalten (in anderen Datenbanken, in anderen Tabellen). Sie haben den Aufbau 'datenbank.tabelle.index'
- category: ist die erste Gruppierungsspalte
- url: enthält Links auf externe Webseiten
- content: wird in der Formularansicht mit einem HTML-Editor ausgestattet
* ich schreibe fast immer alles klein (datenbanknamen, tabellennamen, spaltennamen ...)
* Spalten, die häufig für Abfragen genutzt werden, können/sollten indiziert werden (siehe auch später die Erläuterungen zum Volltextindex)
* bei der Festlegung der Datentypen sollte man darauf achten, dass alle Spalten ja im Browser 'Text-Felder' sind, und bei der Einspeicherung bzw. Verarbeitung keine Konvertierungen erfahren.

4] Wie erfasst man Daten?

Man kann die Daten am besten über die Formularansicht erfassen. Allerdings ist auch ein Doppelklick in die Tabellenfelder möglich. Dann muss man über das Kontextmenü die Zeile auch wegschreiben.
Es ist daran gedacht, auch Lade-Skripte für die Tabellen zu nutzen. Sie werden mit der folgenden Version sukzessive vorgestellt.

5] Wie erfasst man ein 'attachment'?

Damit man auch auf die Attachments zugreifen kann, braucht man einen Pfad, den der Webserver auch späterhin gut gehen kann. Mein Vorschlag wäre daher, den Stammpfad von Blubb zu erweitern.
Also /var/packages/blubb/target/bag zu verwenden und hierhin einen Link aus einer Share hinzu legen. Dann kann man einfach auf die Attachments per https://syno:5001/webman/3rdparty/blubb/bag darauf zugreifen.
Das wird aber sicherlich eh heftig diskutiert werden ... :D

6] Wie erfasst man eine 'url'?

Ganz einfach: http://www.google.de ...

7] Wie erstellt man einen Link?

Voraussetzung ist das Vorhandensein eine Tabelle 'link' in der Datenbank 'blubb'. Die Struktur ist recht einfach im Moment: link_id, link_1 varchar(64) null value, link_2 varchar(64) null value
Rich (BBCode):
--
-- Tabellenstruktur für Tabelle 'link'
--

CREATE TABLE IF NOT EXISTS link (
  link_id int(11) NOT NULL AUTO_INCREMENT,
  link_1 varchar(64) COLLATE latin1_general_ci DEFAULT NULL,
  link_2 varchar(64) COLLATE latin1_general_ci DEFAULT NULL,
  PRIMARY KEY (link_id)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;

In der Tabellenansicht stellt man sich auf die Zeile die als erstes in den Link aufgenommen werden soll und klickt im Kontextmenu auf 'get link source'.
Dann stellt man sich (z.B. in einem anderen Fenster) auf die zweite Tabellenzeile und klickt nun auf 'make link'.
Wenn alles richtig gelaufen ist, dann kann man nun den neuen Link als Eintrag in der Tabelle 'link' sehen. Hier könnte man ihn auch löschen oder bearbeiten.

Mit dem Link wird jetzt in den beiden Tabellenzeilen eine zusätzliche Eintragung in der Zeilenansicht sichtbar;
man muss auf das Zeilenerweiterungsymbol am Anfang der Zeile klicken, dann sieht man die Verknüpfungen als klickbare Links.

8] Wie erstellt man eine Notiz bzw. einen Wiedervorlage-Termin?

Voraussetzung ist das Vorhandensein einer Tabelle 'note' in der Datenbank 'blubb'. Die Struktur sieht wie folgt aus:
Rich (BBCode):
--
-- Tabellenstruktur für Tabelle 'note'
--

CREATE TABLE IF NOT EXISTS note (
  note_id int(11) NOT NULL AUTO_INCREMENT,
  note_date datetime DEFAULT NULL,
  note_done varchar(20) COLLATE latin1_general_ci DEFAULT NULL,
  note_content varchar(4096) COLLATE latin1_general_ci DEFAULT NULL,
  links varchar(1) COLLATE latin1_general_ci DEFAULT NULL,
  PRIMARY KEY (note_id)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;

Ansonsten läuft es ähnlich ab, wie bei der Verlinkung. Man beginn damit, dass man sich auf eine Tabellenzeile stellt, die eine Notiz (note) erhalten soll und klick im Kontextmenü auf 'add note'.
Auch hier kann man ändern und löschen, in dem direkt die Tabelle 'note' aufruft.

.
 

Anhänge

  • blubb_0_1.jpg
    blubb_0_1.jpg
    139 KB · Aufrufe: 147
Zuletzt bearbeitet:

itari

Benutzer
Mitglied seit
15. Mai 2008
Beiträge
21.900
Punkte für Reaktionen
14
Punkte
0
Anbei ein paar Datenbanktabellen für den Blubb (angelegt in der Datenbank 'blubb').

Adressen
Rich (BBCode):
--
-- Tabellenstruktur für Tabelle 'address'
--

CREATE TABLE IF NOT EXISTS address (
  address_id int(11) NOT NULL AUTO_INCREMENT,
  address_name varchar(81) COLLATE latin1_general_ci DEFAULT NULL,
  address_firstname varchar(60) COLLATE latin1_general_ci DEFAULT NULL,
  address_tag varchar(60) COLLATE latin1_general_ci DEFAULT NULL,
  address_category varchar(128) COLLATE latin1_general_ci NOT NULL,
  address_country varchar(60) COLLATE latin1_general_ci DEFAULT 'Deutschland',
  address_city varchar(60) COLLATE latin1_general_ci DEFAULT NULL,
  address_zip varchar(10) COLLATE latin1_general_ci DEFAULT NULL,
  address_street varchar(60) COLLATE latin1_general_ci DEFAULT NULL,
  address_city2 varchar(60) COLLATE latin1_general_ci DEFAULT NULL,
  address_zip2 varchar(10) COLLATE latin1_general_ci DEFAULT NULL,
  address_street2 varchar(60) COLLATE latin1_general_ci DEFAULT NULL,
  address_phone varchar(100) COLLATE latin1_general_ci DEFAULT NULL,
  address_fax varchar(30) COLLATE latin1_general_ci DEFAULT NULL,
  address_email varchar(60) COLLATE latin1_general_ci DEFAULT NULL,
  address_weburl varchar(100) COLLATE latin1_general_ci DEFAULT NULL,
  address_unvalid_date date DEFAULT NULL,
  address_unvalid varchar(60) COLLATE latin1_general_ci DEFAULT NULL,
  address_type set('company','person') COLLATE latin1_general_ci DEFAULT NULL,
  links varchar(1) COLLATE latin1_general_ci NOT NULL,
  PRIMARY KEY (address_id)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;

Die erste Adressen wird meist für die postalische Zuordnung (Postfach) verwendet; die zweite Adresse für die örtliche Zuordnung (Zustelladresse für Lieferungen).

Web-Lesezeichen
Rich (BBCode):
--
-- Tabellenstruktur für Tabelle 'bookmark'
--

CREATE TABLE IF NOT EXISTS bookmark (
  bookmark_id int(11) NOT NULL AUTO_INCREMENT,
  bookmark_name varchar(128) COLLATE latin1_general_ci NOT NULL,
  bookmark_keywords varchar(128) COLLATE latin1_general_ci NOT NULL,
  bookmark_url varchar(1023) COLLATE latin1_general_ci NOT NULL,
  bookmark_category varchar(128) COLLATE latin1_general_ci NOT NULL,
  links varchar(1) COLLATE latin1_general_ci NOT NULL,
  PRIMARY KEY (bookmark_id)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;

Damit kann man seine Browser-Lesezeichen verwalten.

Dokumentenverwaltung
Rich (BBCode):
--
-- Tabellenstruktur für Tabelle `document`
--

CREATE TABLE IF NOT EXISTS `document` (
  `document_id` int(11) NOT NULL AUTO_INCREMENT,
  `document_date` datetime NOT NULL,
  `document_status` varchar(20) COLLATE latin1_general_ci DEFAULT NULL,
  `document_tag` varchar(1024) COLLATE latin1_general_ci DEFAULT NULL,
  `document_content` text COLLATE latin1_general_ci,
  `document_attachments` varchar(4096) COLLATE latin1_general_ci NOT NULL,
  `document_type` varchar(20) COLLATE latin1_general_ci NOT NULL,
  `links` varchar(1) COLLATE latin1_general_ci NOT NULL,
  PRIMARY KEY (`document_id`),
  FULLTEXT KEY `document_content` (`document_content`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;

Das Statusfeld kann für verschiedene Zwecken verwenet werden. Ich geb da meist ein, ob ich das Dokument auch in materieller Form (Buch, Zeitschrift, Kopie) habe. Man kann aber auch einen Bearbeitungszyklus damit kennzeichnen: Entwurf, in Arbeit, fertig, Abgabe, Archiv usw.
Das Typfeld verwende ich, um die Art des Dokuments anzudeuten (Rechnung, Beleg, URL, Zeitschrift, Buch, usw.).
Das Tag-Feld wird für Schlagworte verwendet.
Und auf das Content-Feld hab ich einen Volltext-Index liegen, denn ich kopiere mir den OCR-Inhalt eines Scans, wenn verfügbar hinein.

Kennwortverwaltung
Rich (BBCode):
--
-- Tabellenstruktur für Tabelle 'password'
--

CREATE TABLE IF NOT EXISTS `password` (
  password_id int(11) NOT NULL AUTO_INCREMENT,
  password_name varchar(128) COLLATE latin1_general_ci NOT NULL,
  password_username varchar(64) COLLATE latin1_general_ci NOT NULL,
  password_password varchar(64) COLLATE latin1_general_ci NOT NULL,
  password_url varchar(128) COLLATE latin1_general_ci NOT NULL,
  password_type set('web','pin','email') COLLATE latin1_general_ci NOT NULL,
  links varchar(1) COLLATE latin1_general_ci NOT NULL,
  PRIMARY KEY (password_id)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
Für meine viele Kennworte und Webaccounts :D

Einfach in die Zwischenablage kopieren und im Blubb-SQL-Fenster ausführen oder mit dem PhpMyAdmin erledigen. Selbstverständlich kann man auch noch seinen eigenen Vorstellungen in die Tabellen integrieren.
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat