CakePHP 2.0.0-RC1 Hot and fresh

Heiss und Frisch aus dem Ofen!

Heute morgen habe ich – mal wieder – nach dem Release Candidate von CakePHP gegoogelt. Und nun ist er endlich da, gestern auf dem CakeFest in Manchester wurde er veröffentlicht!

The CakePHP core team is proud to announce the immediate availability of CakePHP 2.0.0-RC1[1]. 2.0.0-RC1 marks the beggining of the release candidate process for 2.0.0. From this point forward no additional new features or backwards incompatabile changes will be made to CakePHP 2.0. We plan on having 3 RC releases, and if there are no outstanding large issues we will release the final version.

http://bakery.cakephp.org/articles/markstory/2011/09/04/cakephp_2_0_0-rc1_hot_and_fresh

Seit dem CakePHP 2.0-dev release vom 26. Dezember 2010 hat es eine unendlich Zeit gedauert – gefühlt für einen Bäcker 😉

Einen guten Überblick über die Neuerung gibt CakePHP 2.0 – It’ll rock your world, Under the hood of CakePHP 2.0 und 2.0 New FeaturesCakePHPcakephp.

Und die Dokumentation ist auch schon im Kochbuch.

 

Update: Es ist nun auch 2.0.0-RC2 erschienen.

 

 

 

 

 

http://bakery.cakephp.org/articles/markstory/2011/09/04/cakephp_2_0_0-rc1_hot_and_fresh




Der Weg zum CRM-Erfolg: Wie Sie Stolperfallen vermeiden

Heute haben mein Kollege Ulf Loetschert und ich auf der MEiM in Dortmund den Vortrag

Der Weg zum CRM-Erfolg: Wie Sie Stolperfallen vermeiden

gehalten. In unserem Vortrag stellten wir die typischen Fehler vor, die in CRM-Projekten gemacht werden und zeigten Lösungswege auf. An den Rückmeldungen aus dem Publikum konnte man erkennen, dass wir interessante Aspkete beleuchtet haben, die nicht so offensichtlich waren.




Parallen zwischen Tatort Vergeltung und Big Buck Bunny

Nachdem ich den Tatort Vergeltung mit Harald Krassnitzer gesehen habe, habe ich noch Big Buck Bunny geschaut. An sich wollte ich die HD-Fähigkeiten meines Fernsehers testen, stellte dann aber inhaltliche Parallelen zwischen dem Krimi und dem lustigen Kurzfilm fest 😉

Beide sind sehenswert, ich mag den Krassnitzer halt auch.




Regular Expression für Wildcards in pdi

In einigen Transformations- und Jobschritten, insbesondere die die Handhabung von Dateien umsetzen, gibt es die Möglichkeit, Wildcards anzugeben. Aber natürlich gleich in der mächtigen Variante: Wildcard als Regulärer Ausdruck (Regular Expression)!

Wie es geht wird auf How to process a Kettle transformation once per filename beschrieben

The correct regex to get all files whose extension is .xml is ”.*\.xml”. This isn’t a regex tutorial, go look that up on the web.

Bitte die Anführungszeichen nicht mit angeben, für Excel-Dokumente lautet das z.B.  „.*\.xlsx“ oder „.*\.xlsx$“, wenn man das konkret auf das Zeilen- oder Stringende prüfen will.

Hilfreich bei der Erstellung von Regulären Ausdrücken ist auch der Online Regular Expression Builder

Einlesen von Verzeichnissen

Auch dasEinlesen von Verzeichnissen nutzt reguläre Ausdrücke, nachfolgend ein Beispiel mit der Transformation Get File Names

 

How to process a Kettle transformation once per filename




Fehlermeldung beim Versuch, eine Tabelle in SQL Server 2008 zu speichern: „Speichern von Änderungen ist nicht zulässig“.

Gehen Sie folgendermaßen vor um die verhindern, Speichern von Änderungen, die die Tabelle Neuerstellung erfordern, Option zu ändern:

  1. Öffnen Sie SQL Server Management Studio (SSMS).
  2. Klicken Sie im Menü Extras auf Optionen.
  3. Klicken Sie im Navigationsbereich des Fensters Optionen auf Designer.
  4. Aktivieren Sie oder deaktivieren Sie das Kontrollkästchen verhindern, Speichern von Änderungen, die die Tabelle Neuerstellung erfordern, und klicken Sie dann auf OK.

Hinweis: Wenn Sie diese Option deaktivieren, werden Sie nicht gewarnt beim Speichern der Tabelle, die vorgenommenen Änderungen wurden die Metadatenstruktur der Tabelle geändert. In diesem Fall kann Datenverluste auftreten, wenn Sie die Tabelle speichern.




Autoincrement in SELECT-Statement

-- MS SQL 2005 und höher

SELECT
  ROW_NUMBER() OVER( ORDER BY SomeColumn ) AS 'rownumber'
, *
FROM YourTable

-- MS SQL 2000
SELECT
  IDENTITY(INT, 1,1) AS Rank
‚ VALUE
INTO #Ranks
FROM YourTable WHERE 1=0

INSERT INTO #Ranks
SELECT SomeColumn FROM YourTable
ORDER BY SomeColumn
SELECT * FROM #Ranks
Order By Ranks



Die Turbo-Backstube

In vielen Unternehmen werden Daten in manueller Form auf Papier oder in einfach strukturierten Excel-Tabellen erfasst und weiterverarbeitet. Eingabe- und Übertragungsfehler sind vorprogrammiert, doch der Einsatz einer Software-Anwendung erscheint auf den ersten Blick aufwendig und teuer. Insbesondere dann, wenn keine Standardanwendung zur Verfügung steht, die mit geringem Customizing-Aufwand und geringen Lizenzkosten genutzt werden kann. Dass dennoch eine Individuallösung innerhalb kurzer Zeit und mit begrenzten finanziellen und personellen Ressourcen umgesetzt werden kann, zeigt dieses Beispiel.

In einer Case Study beschreiben mein Kollege Thomas Recke und ich, wie mit CakePHP und MySQL ein Buchungssystem für 900 Mitarbeiter in nur sechs Wochen umgesetzt wurde. Der Artikel ist druckfrisch erschienen im Entwickler Magazin 5/2010 und steht wie gewohnt als Download zur Verfügung.




Automatisches Update von WordPress

Software immer aktuell zu halten beugt Sicherheitsrisiken vor und offeriert meistens auch neue Funktionen. WordPress bietet hierfür im Administrationsbereich die komfortable Möglichkeit eines automatischen Updates an.  Hierbei werden alle notwendigen Einzelschritte mit einem Klick durchgeführt. In meinem Blog hier auf http://www.ralfhohoff.de erhielt ich aber nur eine wenig sagende leere Seite. Nach kurzer Recherche fand ich auf einem Blog den Hinweis,

dass nur in der Datei /wp-admin/includes/file.php die folgende Zeile

if ( getmyuid() == fileowner($temp_file) )

durch diese

if( posix_getuid() == fileowner($temp_file) )

zu ersetzen sei. Nach dieser Änderung erhielt ich schon mal einen Dialog für einen FTP-Zugriff,  das erwünschte Update blieb aber weiterhin aus.

Mehr Erfolg brachte allerdings die Ergänzung der .htaccess wie in WordPress beim 1&1 Webhosting beschrieben:

AddType x-mapp-php5 .php
AddHandler x-mapp-php5 .php

Hiermit werden PHP-Skripte (und damit läuft WordPress nun einmal) immer mit Version 5 und nicht mit 4 ausgeführt.

Dies soll Probleme im Administrationsbereich wie z.B. das Hochladen von Bildern vermeiden.
Und genau das tat es auch!

Selbst nach dem Zurücksetzen der obigen Änderung in /wp-admin/includes/file.php

ist das automatische Update meiner WordPress-Installation nun nur noch ein Klick 😉




Systematisches Kundenmanagement im Mittelstand: Herausforderungen und Potenziale 2010

Heute fand der Innovationstag CRM statt und ich habe die Ergebnisse unserer Studie  „Systematisches  Kundenmanagement  im  Mittelstand: Herausforderungen  und  Potenziale  2010“ vorstellen dürfen.

In Erfahrungsberichten haben meine Kunden Duni und Höcker Polytechnik haben aus ihrer Sicht beschrieben,
wie sie durch gezieltes CRM einen Nutzen für ihr Unternehmen und die Mitarbeiter erzielen konnten:

  • CRM  bei  Duni  Retail: Pragmatische  Unterstützung  für  erfolgreiches Vertriebsmanagement
  • Schlanker  im  Prozess  und  höhere  Transparenz  im  Vertrieb: Höcker  Polytechnik  erstellt  individuelle  Angebote  auf  Knopfdruck



Küche unter Strom – ETL-Prozesse à la carte mit Pentaho Data Integration (Open Source)

Auch in Zeiten der IT-Konsolidierung und SOA stehen Entwickler und Administratoren täglich vor der Herausforderung, Daten direkt von einem in das andere System zu überführen oder strukturierte Im- und Exporte in verschiedenen Formaten bereitzustellen. Doch wie entwickelt man kostengünstig eine fexible und dauerhaft wartbare Lösung für diese Aufgaben?

Erschienen im Entwickler Magazin 3/2010 und steht hier zum Download zur Verfügung.