Um den Data Access Layer nutzen zu können muss einfach die DataMgr.zip herunter geladen, in ein beliebiges Verzeichnis kopiert und abschliessend ein Mapping "DataMgr" im ColdFusion-Administrator angelegt werden.
Um den DataManager dann zu nutzen muss er einmalig initialisiert werden und gegebenenfalls die Tabellen angelegt werden. In meinem Beispiel wird eine Tabelle "navi_left" im MS-SQL Server angelegt.
Weitere Details "RTFM", daher hier nur die QuickSteps zum copy&pasten.
application.cfm
application.DataMgr = createObject ( "component" , "DataMgr" ).init( "myODBCName" , "MSSQL" ) >
application.DataMgr.DBModel = createObject ( "component" , "navigation" ).init(application.DataMgr) >
Die CFC die die Tabellen per XML ausliest und dann schlussendlich im SQL-Server erstellt.
navigation.cfc
name= "navigation" output= "false" >
name= "init" returntype= "any" output= "false" >
name= "DataMgr" type= "any" required= "true" >
var myTables = "navigation" >
variables.DataMgr = arguments.DataMgr >
variables.datasource = variables.DataMgr.getDatasource() >
list= "#myTables#" index= "myTable" >
variables.DataMgr.loadXml( XMLParse ( "#getDirectoryFromPath( getCurrentTemplatePath() )##myTable#.xml" ), true , true ) >
Hier die XML-Datei die die Tabellen definiert.
navigation.xml
xml version = "1.0" encoding = "UTF-8" ?>
< tables >
< table name = "navi_top" >
< field ColumnName = "Ident" CF_DataType = "CF_SQL_INTEGER" PrimaryKey = "true" Increment = "true" />
< field ColumnName = "Board" CF_DataType = "CF_SQL_VARCHAR" Length = "80" />
< field ColumnName = "Info" CF_DataType = "CF_SQL_LONGVARCHAR" />
< field ColumnName = "isActive" CF_DataType = "CF_SQL_BIT" Default = "false" />
table >
tables >