Strict Standards: Declaration of Walker_Page::start_lvl() should be compatible with Walker::start_lvl(&$output) in /www/htdocs/v167612/wplog/wp-includes/classes.php on line 1199

Strict Standards: Declaration of Walker_Page::end_lvl() should be compatible with Walker::end_lvl(&$output) in /www/htdocs/v167612/wplog/wp-includes/classes.php on line 1199

Strict Standards: Declaration of Walker_Page::start_el() should be compatible with Walker::start_el(&$output) in /www/htdocs/v167612/wplog/wp-includes/classes.php on line 1199

Strict Standards: Declaration of Walker_Page::end_el() should be compatible with Walker::end_el(&$output) in /www/htdocs/v167612/wplog/wp-includes/classes.php on line 1199

Strict Standards: Declaration of Walker_PageDropdown::start_el() should be compatible with Walker::start_el(&$output) in /www/htdocs/v167612/wplog/wp-includes/classes.php on line 1244

Strict Standards: Declaration of Walker_Category::start_lvl() should be compatible with Walker::start_lvl(&$output) in /www/htdocs/v167612/wplog/wp-includes/classes.php on line 1391

Strict Standards: Declaration of Walker_Category::end_lvl() should be compatible with Walker::end_lvl(&$output) in /www/htdocs/v167612/wplog/wp-includes/classes.php on line 1391

Strict Standards: Declaration of Walker_Category::start_el() should be compatible with Walker::start_el(&$output) in /www/htdocs/v167612/wplog/wp-includes/classes.php on line 1391

Strict Standards: Declaration of Walker_Category::end_el() should be compatible with Walker::end_el(&$output) in /www/htdocs/v167612/wplog/wp-includes/classes.php on line 1391

Strict Standards: Declaration of Walker_CategoryDropdown::start_el() should be compatible with Walker::start_el(&$output) in /www/htdocs/v167612/wplog/wp-includes/classes.php on line 1442

Strict Standards: Redefining already defined constructor for class wpdb in /www/htdocs/v167612/wplog/wp-includes/wp-db.php on line 306

Strict Standards: Redefining already defined constructor for class WP_Object_Cache in /www/htdocs/v167612/wplog/wp-includes/cache.php on line 433
iFool » IT

Archiv

Archiv für die Kategorie ‘IT’

Autoinkrementierung bei bestehenden DB2/400 Tabellen

2. Januar 2009

Die im “alten Stil” erstellten DB-Tabellen wurden über DDS-Sourcecodebestimmungen beschrieben und anschließend mit CRTPF erstellt. Views (logische Sichten) wurden ebenfalls mit DDS beschrieben und mit CRTLF erstellt.

Heute sollte man Tabellen  mit SQL erstellen und ändern. Wer jedoch eine mit DDS beschriebene Tabelle später um ein Auto-Inkementierungsfeld erweitern möchte hat schlechte Karten: Es existiert kein entsprechendes DDS-Schlüsselwort und ein ALTER-Table der folgenden Art schlägt ebenfalls fehl:

ALTER TABLE AULICH/M$SE009PA ADD COLUMN ID BIGINT NOT NULL GENERATED
 ALWAYS AS IDENTITY
                                                
M$SE009PA in AULICH für Operation ungültig.                        

Die genaue Fehlermeldung lautet SQL7008 M$SE009PA in AULICH für Operation ungültig.   14 - DATALINK-, LOB- oder IDENTITY-Spalte kann einer Nicht-SQL-Tabelle
nicht hinzugefügt werden.                                              

Autoinkrementierung mit DDS-beschriebenen Datenbankdateien geht nicht. Jedenfalls nicht auf normalem Weg! Wer sich damit nicht abfinden kann und die bestehenden Tabellen nicht auf SQL-Tabellen migrieren kann, dem bietet sich ein halbwegs eleganter Ausweg über die Erweiterung der DDS-Tabellenbeschreibung um ein “normales” ID-Feld (numerisch, 18,0) und das Füllen dieses Feldes über ein Triggerprogramm.

Mehr…

AS400, Groovy & Grails

Groovy & Grails

2. Januar 2009

Grails Logo

Webanwendungen zu erstellen kann sehr mühsam sein. Ich hatte in der Verganagenheit häufig Probleme mit

  • komplexer Softwarearchitektur
  • fehlenden Konzepten für eine einheitliche Anwendungsstruktur
  • Entscheidungen für das “richtige” Framework

Webanwendungen spielen aber eine immer größere Rolle im LAN bzw. Intranet auch mittelständischer Betriebe. Wenn ich dort als Systemintegrator unterwegs bin um z.B. unser DMS MultiArchive in die Systemlandschaft zu integrieren habe ich schnell die Anforderung auf dem Tisch kleinere Funktionen als Bindeglieder zwischen den Anwendungssystemen neu zu erstellen. Ein Beispiel: Die Wareneingänge zu einem bestimmten Lieferschein sollen direkt aus dem Browser-Frontend von MultiArchive über ein weiteres Browserfenster angezeigt werden können. Das ERP-System bietet diese Funktion aber nicht!

Mehr…

Groovy & Grails ,