Metainformationen zur Seite
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| anleitung:web:web_server:dolibarr:verwenden_von_extra_feldern [05.11.2015 09:58] – Seite von anleitung:web:web_server:verwenden_von_extra_feldern nach anleitung:web:web_server:dolibarr:verwenden_von_extra_feldern verschoben J. Huber | anleitung:web:web_server:dolibarr:verwenden_von_extra_feldern [09.11.2015 07:39] (aktuell) – [$type] J. Huber | ||
|---|---|---|---|
| Zeile 16: | Zeile 16: | ||
| ====== Verwenden von Extra Feldern ====== | ====== Verwenden von Extra Feldern ====== | ||
| + | ===== Hinzufügen von Extrafeldern (PHP) ===== | ||
| + | <code php> | ||
| + | int function addExtraField( | ||
| + | string $attrname | ||
| + | string $label | ||
| + | string $type | ||
| + | int $pos | ||
| + | string $size | ||
| + | string $elementtype | ||
| + | int $unique = 0 // Is field unique or not | ||
| + | int $required = 0 // Is field required or not | ||
| + | string $default_value = '' | ||
| + | array $param = 0 // Params for field e.g. array(' | ||
| + | int $alwayseditable = 0 // Is attribute always editable regardless of the document status | ||
| + | string $perms = '' | ||
| + | int $list = 0 // Into list view by default (not used yet) | ||
| + | ); // returns int <=0 if KO, >0 if OK | ||
| - | < | + | $extrafieldObj = new ExtraFields($this->db); |
| - | Code | + | |
| + | $extrafieldObj-> | ||
| + | |||
| + | $extrafieldObj-> | ||
| </ | </ | ||
| + | ==== $type ==== | ||
| + | Mögliche Werte: | ||
| + | ' | ||
| + | |||
| + | ==== $elementtype ==== | ||
| + | Mögliche Werte: | ||
| + | | ||
| + | z.B. für Bestellungen von Lieferanten: | ||
| + | |||
| + | ===== Linked Object ===== | ||
| + | |||
| + | In ''// | ||
| + | |||
| + | < | ||
| + | |||
| + | Minimales Grundgerüst einer verwendbaren Objekt-Klasse: | ||
| + | <code php> | ||
| + | |||
| + | class < | ||
| + | var $db; | ||
| + | var $id; /* wird in der Datenbank abgespeichert und aufgrund $id wird $ref ermittelt */ | ||
| + | var $ref; /* Wird im Eingabefeld als Wert angezeigt */ | ||
| + | |||
| + | /** | ||
| + | * Constructor | ||
| + | * @param DoliDB $db Database handler | ||
| + | */ | ||
| + | function __construct($db) { | ||
| + | $this-> | ||
| + | } | ||
| + | |||
| + | /** | ||
| + | * Füllt Object mit Werten | ||
| + | * | ||
| + | * @param int $rowid | ||
| + | * @param string $ref | ||
| + | */ | ||
| + | function fetch($rowid, | ||
| + | $this-> | ||
| + | $this-> | ||
| + | } | ||
| + | |||
| + | /** | ||
| + | * Gibt anzuzeigenden String zurück | ||
| + | * | ||
| + | * @param int $withpicto 0=_No picto, 1=Includes the picto in the linkn, 2=Picto only | ||
| + | * | ||
| + | * @return string String der angezeigt wird | ||
| + | */ | ||
| + | function getNomUrl($withpicto=0) { | ||
| + | return "< | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | <WRAP round alert 60%> | ||
| + | Wird das Extrafield bearbeitet wird die Klassen-Information gelöscht. (Dolibarr Version 3.8.1) | ||
| + | Daher muss das Feld immer erst gelöscht und neu angelegt werden. | ||
| + | </ | ||
| + | |||
| + | <WRAP round important 60%> | ||
| + | $id, d.h. der Wert der in der Datenbank abgelegt wird muss vom Typ ''// | ||
| + | |||
| + | Beim Speichern von anderen Extra-Feldern werden alle Extra-Felder aktualisiert und ein schon gespeicherter Wert | ||
| + | wird der '' | ||
| + | |||
| + | (Dolibarr Version 3.8.1) | ||
| + | </ | ||
| + | |||
| {{tag> | {{tag> | ||
| ---- struct data ---- | ---- struct data ---- | ||
| + | artikelinfo.name | ||
| + | artikelinfo.beschreibung : | ||
| + | artikelinfo.status | ||
| + | artikelinfo.statuslink : | ||
| + | artikelinfo.version | ||
| + | artikelinfo.cats | ||
| + | artikelinfo.catlinks : | ||
| + | artikelinfo.prg | ||
| ---- | ---- | ||