Seit heute morgen ist die erste Beta meines Gemeinschaftprojektes mit dem Marco und Nischi auf riaForge zum download verfügbar.

Fehlt noch das Layout/Design des Admininterfaces und los geht es mit einer neuen BlogEngine für ColdFusion. Das Blogleichtgewicht basiert auf Framework One und ORM und setzt daher ColdFusion in der Version 9 voraus.

BlogCFC (vom Ray Camden) hat sich wohl vom MangoBlog anstecken lassen und nun auch seit letzte Monat eine eigene Seite erstellt. Dort kann man alles mögliche über BlogCFC erfahren. Natürlich inkl. Downloads.

Mit ORM macht es immer mehr Spass mit ColdFusion zu entwickeln – wenn es denn funktioniert. Aber dafür gibt es ja Updates wie dieses.
Besonders wenn man als quasi externe Trigger die preTrigger Funktion nutzt.

Mit cfDocument kommt man leider nicht weit auch nicht in der ColdFusion Version 9. Daher habe ich mir mal, zusammen mit dem Marco, die Programmierung etwas näher angeschaut und festgestellt das ColdFusion da natürlich auch nichts selbst macht, sondern einfach auf bestehende Java-Klassen zugreift. Und genau das haben wir auch gemacht.

Erfolgreich würde ich sagen. Man gibt nun einfach eine xhtml-Datei an und erhält ein fertiges PDF. Natürlich auch mit Kopf und Fusszeilen.

Das eigentlich tolle daran ist das man nun auch die Umbrüche als ganze Einheit (Schusterjungen oder orphans) mitbekommt.

Schön das es mit dem ORM langsam vorwärts geht (auch bei Railo). Bisher musste man immer eine Zeile pro Feld schreiben, was ziemlich mühsam ist.





Nun gibt es auch die Möglichkeit (bei Structs ab cf 8 üblich) das ganze in eine Zeile zusammen fassen zu können, bzw. als Struct zu übergeben.


Wie der Dan Vega in seinem Blog erwähnt. Danke schön für den Tip!

Als Structübergabe dann wie folgt



Um Zeiten in ColdFusion umzurechnen findet man im Internet nichts brauchbares (einfach und schnell), daher habe ich mir mal ein kleines Beispiel gemacht




INDU 
TIME

Die Ausgabe ist dann die industrielle Zeit von 1.25 und als Zeitangabe die 01:15 Uhr.

Zur Feier des 1. Augusts habe ich die Testuser, aus meinen bisherigen Einträgen, nun in eine ZIP-Datei gepackt.
Somit kann ich sie direkt nutzen. Nebenbei ist die CSV-Datei im UFT-8 Zeichensatz.

Ich weiss zwar immer noch nicht warum ColdFusion-Entwickler derartigen „Code“ machen…


Sonntag
Montag
Dienstag
Mittwoch
Donnerstag
Freitag
Samstag

…daher hier mal ein paar Ideen wie es anders gehen kann.

Das es das neue Update zu ColdFusion 9 gibt ist nicht so ungewöhnlich, gibt es doch immer ein schnelles Update, wenn es MasterRelease freigegeben wurde.

Interessant diesmal ist, das es nicht nur die üblichen BugFixes sind, sondern auch viele neue Features. Also auch die weniger leidenschaftlichen Entwickler unter uns, sollten dort mal rein schauen.

Was man direkt in die Seite einbinden kann ist


	setEncoding("form","utf-8");
	setEncoding("url","utf-8");



…, die bereits Erfahrung auf Webplattformen und Datenbankapplikationen, primär in den Bereichen ColdFusion, Java (oder Gleichwertiges), HTML, JavaScript, Microsoft SQL, XML und Datenmodellierung vorweisen können.

Idealerweise kennen Sie sich bereits in bankfachlichen Fragestellungen aus und bringen analytische und konzeptionelle Fähigkeiten mit.

Sie sollten gerne lösungsorientiert arbeiten, schnell auf Kundenbedürfnisse eingehen und diese innerhalb kürzester Zeit umsetzen können.

Als Entwickler sind Sie es gewohnt, selbständig zu arbeiten und gegebenenfalls Projektmitarbeiter zu coachen.

So eine Anzeige ist typisch für Firmen die ColdFusion-Entwickler suchen. Der neue Mitarbeiter sollte 20 Jahre jung sein, mind. 30 Jahre Erfahrung mitbringen und ein durchschnittliches Gehalt verlangen.
Gerade bei ColdFusion, wo doch fast jeder Entwickler ein Quereinsteiger ist. Inklusive der Firmen selbst.

Um UTF-8 Dateien mit ColdFusion anzeigen zu können, gibt es zwar zig Möglichkeiten, aber diese hier ist die wichtigste von allen und MUSS auf jeder Seite inkludiert werden.


HTML 5 Rock wirklich. Habe meiner Landstrasse einfach ein paar Stunden Zeit gewidmet und *schwups*. Wesentlich besserer Code, einfach, sauber, schön.

Gut den meisten ColdFusion-Entwickler (gut 80%) nutzt das leider nichts, weil deren Code jenseits von Gut & Böse ist. Die restlichen 20% werden sich darüber freuen, besonders den Beitrag: „Best Practices for a Faster Web App with HTML5“ finde ich interessant.

Würde jetzt sicher ein Spruch von MediaMarkt sein. Bei Adobe bekommt man 15% Rabatt, wenn man in einer User Group ist. Für ColdFusion und PhotoShop 5 lohnt sich das auf jeden Fall.

Im Formular muss man nur folgendes angeben:
Association Name: User Group
Validation Number: 72360

Das Programmierer sehr wohl fantasievoll sind, zeigt deren Schreibeweise. Ich selbst achte darauf das ich zb. Firmennamen immer so schreibe wie sie sich selbst schreiben.

Beim programmieren ist das leider nicht immer so einfach. Da kommt man dann schnell auf Begriffe wie SCREAMING CASES, was so viel wie GROSSBUCHSTABEN bedeutet. Den meisten Programmierer ist es aber gar nicht bewusst wie sehr eine GrossKleinschreibung den Lesefluss beeinflusst. Mann muss nicht mal die weRksTabeN VeRbuCHseLn um unleserlich zu wirken.

Unter Winddows ist man PascalCase gewohnt, also das schreiben des ersten Buchstabens als Grossbuchstabe und in der javaWelt eher das camelCase, also das Schreiben des ersten Buchstabens in kleinbuchstaben. Schwieriger finde ich dann das Schreiben dann in WIKICASE, was bedeutet das man mind 1 Wortkombination haben muss.

Persönlich finde ich es allerdings wichtiger das man als Programmierer sprechende Variablen schreibt und eben kein i oder so zum loopen nimmt, sondern myCategory oder so und myCategories wenn mehrere Elemente enthalten sind. Allerdings sollte man auch nicht übertreiben und alle Datenbanktabellen mit einem tbl-Prefix versehen oder alle Variabelen mit str als String zu deklarieren etc.

Manchmal praktisch finde ich die zusätzliche Trennung_derWorte_mit_Unterstrich, so kann ich mit ListFunktionen einfach auf bestimmte Teile der Variable zugreifen. Nur kann man solche Variablen in einer URL oft nicht so gut erkennen.

Eigentlich ziemlich hässlich finde ich die benennungvonvariableninreinen Kleinbuchstaben, hat allerdings den Vorteil das sie auch unter Linux immer funktionieren und auch in vielen Frameworks benutzt werden.

Auch im MS-SQL Server kann man alle Meta-Daten einer Tabelle abfragen – bis auf die DefaultValues.

Hier mein Script, was prüft, ob es die benötigten Felder einer Tabelle gibt und diese auch den gewünschten DefaultValue haben.


  
  
  

  
  SELECT * FROM #local.db.table#



  

      
        
        SELECT name FROM SYSOBJECTS
          WHERE id = (SELECT cdefault FROM SYSCOLUMNS
            WHERE id = (SELECT id FROM SYSOBJECTS WHERE name = '#local.db.table#')
        AND name = '#listFirst(local.myField,'=')#')
      
        
        ALTER TABLE #local.db.table# DROP CONSTRAINT #local.getDefaultName.name#
      
    
      
      ALTER TABLE #local.db.table#
        ADD CONSTRAINT DF_#replace(createUUID(),'-','_','all')#
          DEFAULT (#listLast(local.myField,'=')#) FOR #listFirst(local.myField,'=')#
    

  
  
    ALTER TABLE #local.db.table#
      ADD #listFirst(local.myField,'=')# BIT NULL
        CONSTRAINT DF_#replace(createUUID(),'-','_','all')#
          DEFAULT (#listLast(local.myField,'=')#)
  


Sicherheitshalber noch als Download-Link, weil die Anzeige des Quelltexten leider Müll formatiert.