adobe photo shop font download

cs5 web premium cheapest adobe photoshop 7 free download adobe photoshop cs3 v10 download for windows buy cheap download adobe acrobat pdf writer free download for adobe distiller pc

adobe reader download mac osx

cheap adobe photoshop adobe after effects download adobe reader tar gz download buy cheap find free adobe download adobe 8 download

adobe download interuption

photoshop elements buy cheap download adobe reader version 5 download adobe acrobat 9 cheap internet explorer crashes upon adobe download free adobe acrobat software download

download adobe photoshop cs3 rapidshare

buy cheap adobe dreamweaver adobe acrobat 8 update download adobe photoshop cs3 iso file download cheap free adobe 8 download adobe fine reader free download

adobe flash video exporter download

adobe fireworks cheap adobe pagemaker download full free adobe acrobat 7 pro download buy cheap adobe illustrator cs 2 download for windows adobe illustrator crack download

download adobe documents

buy cheap creative suite 4 adobe master collection torrent download where to download adobe acrobat buy cheap adobe photoshop album download free download adobe illustrator cs3 mac

free adobe photoshop software download

Adobe Creative Suite 5.5 buy cheap how do i download adobe reader for free adobe version 5 download cheap download madden 2005 strategy guides to adobe reader for safe and secure free adobe flash download

unable to download adobe acrobat reader

Adobe Flash CS5.5/a> download adobe illustrator cs download adobe acrobat megaupload cheapest freeware adobe acrobat download free software download adobe reader

adobe live motion download

buy cheap Adobe After Effects CS5.5 free safe download of adobe acrobat reader download free adobe acrobat cheapest download a older version of flash player adobe free to download adobe illustrator

adobe photoshop cs 3 download

adobe software cheap download adobe acrobat reader free adobe reader slowenian download cheapest adobe acrobat 6 full download adobe acrobat 6 pro download

free trial download adobe photoshop mac

creative suite 5 cheapest download record adobe flash movie adobe patch download cheapest internet explorer crashes upon adobe download adobe flashplayer active x download

get free download of adobe flash cs3

buy online adobe incopy adobe photoshop download discount software download adobe 9 free cheap acrobat reader adobe download download the adobe photoshop cs2 book for digital photographers

adobe reader kostenloser download

adobe creative suite 5 cheap adobe 7 free download adobe premiere download cheapest adobe acrobat download vista where to download adobe acrobat

download trial version of adobe acrobat 8 professional

cheap photoshop lightroom 3 download stand alone adobe flash adobe flash palyer download cheap adobe acrobat viewer download free adobe professional download

adobe download

buy online cs5 master collection free download adobe acrobat reader professional 6 cracked adobe indesign cs2 mac download cheap adobe pdf printer download download adobe premiere pro cs3

free adobe acrobat writer download

buy online adobe premiere pro adobe cs3 patch download free adobe flshplayer 9 download buy online free adobe premiere download adobe acrobat pdf writer download

adobe illustrator and download

adobe web premium buy online download free edition adobe photoshop instructions on how to download documents on to adobe reader buy online adobe illustrator cs download adobe flash player downloader free download hunter grabber

ColdFusion Builder 1.0 shipped! Whoo Hooo!


The first version of ColdFusion Builder out of the door.  It is now available at the stores.  Apart from all the basic features a IDE should have, it has innovative features like extensions which allow you to extend CFB by writing code in CFML!

This is my FOURTH major release in ColdFusion.  I had released ColdFusion 7, ColdFusion 8 and ColdFusion 9.  Five years ago, when I had just joined the team, Damon Cooper used to say it is difficult to join ColdFusion team and also difficult to get out of it.  Now I know what exactly he was talking about – Great technology and a great team!

Coming back to the point, here are some handy resource pointers:

Try/Buy Links:
Try Adobe ColdFusion Builder
Buy Adobe ColdFusion Builder

Couple of Good Articles/Blogs on ColdFusion Builder:
Introducing Adobe ColdFusion Builder
Things to watch out while Installation CFB

Documentation Links:
ColdFusion Builder release notes
Getting started with various tasks in ColdFusion Builder
Getting started tutorials and videos
Installing ColdFusion Builder documentation
Using ColdFusion Builder documentation

Do provide feedback (bugs/enhancements) here.


ColdFusion AIR Integration session on connect


Chennai CFUG is having its October month meeting on 22nd.  Rakshith will take a connect session on ColdFusion 9 and AIR Integration.  More details on Chennai CFUG site at Adobe Groups.


ColdFusion-ORM: Auto-generation of tables, Naming Strategy and automatically populating data


Task:
Example to demonstrate Auto-generation of tables, Naming strategy and automatically populating data in ColdFusion-ORM

Previous Related Posts:
Getting Started with ORM
ColdFusion-ORM: Using CRUD Functions
ColdFusion-ORM: Define One-to-Many and Many-to-one relationships
ColdFusion-ORM: Collections
ColdFusion-ORM: Define Computed Properties

Stuff that you would learn:
- To auto-generate tables in ORM
- To fill data into the auto-generated tables
- To use the DDL-only attributes
- To define custom Naming Strategy

Steps to Run the example:
-  Create a datasource by name ‘test_datasource’ pointing to a empty database. Note that the example will take care of creating the tables and populating data into it.
-  Create a directory say "orm_autogen" under webroot.
-  Create the following files – Application.cfc, Art.cfc, Artists.cfc, mysqlscript.sql, lcasestrategy.cfc and index.cfm.
-  Run the URL “http://<ip>:<port>/orm_autogen/index.cfm”

Application.cfc

<cfcomponent>
    <cfset this.name = "ORM_Autogen">
    <cfset this.ormenabled = "true">
    <!---
    * 'test_datasource' is a datasource which should be created
    * as a pre-requisite for this example. Artists table contains
    --->
    <cfset this.datasource = "test_datasource">

    <!---
    * To auto-generate tables, dbcreate should be specified.
    * dbcreate is 'none' by default.
    * It can be 'dropcreate' or 'update'.
    * Setting it to 'update' creates the table if it does not
    * exist or update the table if it exists.
    * Setting it to 'dropcreate' drops the table if it
    * exists and then creates it.
    --->
    <cfset this.ormsettings.dbcreate = "dropcreate">

    <!---
    * Path to the SQL script file that should be executed after
    * ORM is initialized.
    * Note that this applies only if dbcreate is set to dropcreate.
    * This must be the absolute file path or the path relative
    * to the application.
    * The SQL script file lets you populate the tables before
    * the application is accessed.
    --->
    <cfset this.ormsettings.sqlscript="mysqlscript.sql">

    <!---
    * (Logical column name is the name of the property OR the value
    * of the column attribute if specified)
    * By default, when auto-generating the tables, the logical column
    * name is used as the column name.
    * If you want to change it, you should use the namingstrategy setting.

    * By default, namingstrategy="default". 

    * namingstrategy="smart": This strategy changes the logical table or
    * column name to uppercase. Also, if the logical table or column name
    * is in camel case, this strategy breaks the camelcased name and separates
    * the broken words using '_'.
    * For eg: firstName -> FIRST_NAME, dateOfBirth -> DATE_OF_BIRTH.

    * If you want to use a custom strategy, then, you should create a CFC,
    * implement the cfide.orm.INamingStrategy interface and specify the CFC
    * name for this setting.  In this example, I have demonstrated the
    * custom strategy.
    --->
    <cfset this.ormsettings.namingstrategy="lcasestrategy">
</cfcomponent>

Art.cfc

<cfcomponent persistent="true" table="Art">
      <cfproperty name="artId" generator="identity" fieldtype="id">
    <!---
    * Note that the attributes 'ormtype' and 'length' are used
    * only when the tables are auto-generated.  There are other
    * similar attributes like dbdefault, index, notnull, precision,
    * scale, sqltype, unique and uniquekey.
    --->
      <cfproperty name="artName" ormtype="string" length="50">
      <cfproperty name="price" ormtype="double">
      <cfproperty name="largeImage" ormtype="string" length="30">
      <cfproperty name="mediaId" ormtype="integer" length="10">
      <cfproperty name="isSold" ormtype="boolean" dbdefault=1>
      <cfproperty name="artist" fkcolumn="artistid" fieldtype="many-to-one" cfc="Artists">
</cfcomponent>

Artists.cfc

<cfcomponent persistent="true" table="Artists">
      <cfproperty name="artistId" fieldtype="id" ormtype="integer" length=10>
      <cfproperty name="firstName" ormtype="string" length="20" notnull="true">
      <cfproperty name="lastName" ormtype="string" length="20" notnull="true">
      <cfproperty name="address"  ormtype="string" length="50">
      <cfproperty name="city" ormtype="string" length="20">
      <cfproperty name="state" ormtype="string" length="2">
      <cfproperty name="postalCode" ormtype="string" length="10">
      <cfproperty name="email" ormtype="string" length="50" unique="true">
      <cfproperty name="phone" ormtype="string" length="20">
      <cfproperty name="fax" ormtype="string" length="12">
      <cfproperty name="thePassword" ormtype="string" length="20">
</cfcomponent>

lcasestrategy.cfc

<cfcomponent implements="cfide.orm.INamingStrategy">
    <!---
    * ColdFusion calls this method for each table name to generate
    * the new table name. The logical table name is the input.
    --->
    <cffunction name="getTableName" returntype="String" access="public">
        <cfargument name="tableName" type="String"> 

        <cfreturn lCase(tableName)> 

    </cffunction>

    <!---
    * ColdFusion calls this method for each column name to generated the
    * new column name. The logical column name is the input.
    --->
    <cffunction name="getColumnName" returntype="String" access="public">
        <cfargument name="columnName" type="String">

        <cfreturn lCase(columnName)> 

    </cffunction>
</cfcomponent>

mySQLScript.sql

--This SQl script will be automatically executed after the tables are auto-generated.
--Note that each SQL should be separated by a ';'.
insert into Artists(artistid, firstname, lastname, address, city, state, postalcode, email, phone, fax, thepassword)
values(1, 'Aiden', 'Donolan', '352 Corporate Ave.', 'Denver', 'CO', '80206-4526', 'aiden.donolan@donolan.com', '555-751-8464', '555-751-8463', 'peapod');
insert into Artists(artistid, firstname, lastname, address, city, state, postalcode, email, phone, fax, thepassword)
values(2, 'Austin', 'Weber', '25463 Main Street, Suite C', 'Berkeley', 'CA', '94707-4513', 'austin@life.com', '555-513-4318', '510-513-4888', 'nopolyes');
insert into Art(artname, price, largeimage, mediaid, issold, artistid)
values('Michael', 13900, 'aiden02.jpg', 1, 0, 1);
insert into Art(artname, price, largeimage, mediaid, issold, artistid)
values('Space', 9800, 'elecia01.jpg', 2, 1, 2);

index.cfm

<!---
* This example demonstrates Auto-generation of tables.
* This example will teach you
* - how to auto-generate tables in ORM
* - to fill data into the auto-generated tables
* - DDL-only attributes
* - how to use custom Naming Strategy

* 'test_datasource' is a datasource which should be created
* as a pre-requisite for this example. Artists table contains
* a list of artists records.  Art table contains a list of art
* records.  Artists table has a one-to-many relationship with
* Art table. These table would be created used in this example.
--->

<!---Load the artists and dump it--->
<cfdump var="#EntityLoad("Artists")#">