I don't really have a dog in this hunt. :-) I was just pointing out the
render function, in support of your interest. I'll leave others to comment
on what you've added.

/charlie


> -----Original Message-----
> From: [email protected] [mailto:[email protected]] On Behalf Of Fennell,
> Mark P.
> Sent: Wednesday, July 01, 2009 12:25 PM
> To: [email protected]
> Subject: RE: [ACFUG Discuss] NEVERMIND RE: CF in the database?
> 
> Thank you Charlie. While security is always an issue, I'm not sure that
> allowing users to connect to the database as datasource for MS Word
> mail-merges is much more secure. Anyhoo, here's my proof of concept.
> 
> 
> First, I created a table to store the list of fieldnames available for
> users to incorporate into their letters. I will be the one populating
> this table to reduce some security concerns.
> create table mso.letter_fields
> (
>   id    number  primary key,
>   otc   varchar2(128), -- this is an extra column for now
> OwnerTableColumn
>   pk    varchar2(128), -- also extra, indicates primary key column for
> OTC
>   cname varchar2(128), -- common user-friendly name
>   cfcode varchar2(128) -- the #code# that will be evaluated
> );
> 
> Next, a sample row.
> insert into mso.letter_fields values (mso.seq.nextval,
> 'MSO.STAFF.NAMEFIRST||'' ''||MSO.STAFF.NAMELAST||'',
> ''||MSO.DEGREE_DESIGNATION as fullName', 'MSO.STAFF.ID', 'Full Name',
> '#qStaff.fullName#');
> 
> Then, I created the table to store the form letters.
> create table mso.letters
> (
>   id      number  primary key,
>   created date, -- date document created
>   owner   varchar2(64), -- owner's name
>   lmod    date, -- last modified date
>   modby   varchar2(64), -- last modifier's name
>   lname   varchar2(128), -- name of the form letter
>   ltxt    varchar2(4000) -- text of the form letter
> );
> 
> Next, insert a sample row.
> insert into mso.letters values (mso.seq.nextval, sysdate, 'SYSTEM',
> sysdate, 'SYSTEM', 'Welcome Aboard','Dear #qStaff.fullName#,<br>Welcome
> to Athens Regional Health Services.');
> 
> Then I created a cfm file to create sample letters.
> <cfquery name="qLetter" datasource="armc_linux">
>       select * from mso.letters where id=35753
> </cfquery>
> <cfquery name="qStaff" datasource="armc_linux">
>       select MSO.STAFF.NAMEFIRST||' '||MSO.STAFF.NAMELAST||',
> '||MSO.STAFF.DEGREE_DESIGNATION as fullName from mso.staff where rownum
> <= 10
> </cfquery>
> <cfoutput
> query="qStaff"><p>#evaluate("#de(qLetter.ltxt)#")#</p></cfoutput>
> 
> Finally, I ran the page and rendered me some output. Woo-hoo! It's not
> perfect, but with some tidying up, it should work nicely.
> Dear IMA SAMPLE, MD,
> Welcome to Athens Regional Health Services.
> 
> Dear SHEEZA SAMPLE, RN,
> Welcome to Athens Regional Health Services.
> 
> Dear HEEZA TEST, MD,
> Welcome to Athens Regional Health Services.
> 
> Dear PETER PARKER, ,
> Welcome to Athens Regional Health Services.
> 
> Dear BRUCE WAYNE, PHD,
> Welcome to Athens Regional Health Services.
> 
> Dear WALLY WEST, ,
> Welcome to Athens Regional Health Services.
> 
> Dear JOHN STEWART, GL,
> Welcome to Athens Regional Health Services.
> 
> Again, thank you all for your input.
> hth.
> mf
> 
> 
> -----Original Message-----
> From: [email protected] [mailto:[email protected]]on Behalf Of Charlie
> Arehart
> Sent: Wednesday, July 01, 2009 11:43 AM
> To: [email protected]
> Subject: RE: [ACFUG Discuss] NEVERMIND RE: CF in the database?
> 
> 
> FWIW, I'll note that while I appreciate the cons of the idea, I also
> know
> that others have seen the pros of it, and the BlueDragon engineers did
> as
> well, and they added a Render function to let you execute CFML code as
> found
> in any variable, whether from a DB query, a shared scope variable, etc.
> 
> It would suit your needs, Mark, though obviously if you're on CF it
> won't
> help. Not trying to push anyone to BD or OpenBD.
> 
> Just saying that the request has been frequent enough that it's been
> addressed by at least one of the engines, and people have asked for it
> of
> CF, too. Naturally, it has all the security implications mentioned by
> others
> here, and that may be why CF still doesn't have it.
> 
> For more on the Render function, I just found a blog entry in the
> OpenBD
> blog (though it's existed for years in BD):
> 
> http://blog.openbluedragon.org/render.htm
> 
> Just sharing info, as your friendly neighborhood CFML librarian. :-)
> 
> /charlie
> 
> 
> > -----Original Message-----
> > From: [email protected] [mailto:[email protected]] On Behalf Of Mischa
> > Uppelschoten
> > Sent: Wednesday, July 01, 2009 9:05 AM
> > To: Web Site
> > Subject: re: [ACFUG Discuss] NEVERMIND RE: CF in the database?
> >
> > As a last resort I have in the past written out and cfincluded a file
> > based on the contents of a database field. Obviously there are some
> > security and performance implications, but the ability to have CF
> > interpret code (and not just an expression) from a database can
> > sometimes come in handy.
> >
> 
> 
> 
> -------------------------------------------------------------
> To unsubscribe from this list, manage your profile @
> http://www.acfug.org?fa=login.edituserform
> 
> For more info, see http://www.acfug.org/mailinglists
> Archive @ http://www.mail-archive.com/discussion%40acfug.org/
> List hosted by http://www.fusionlink.com
> -------------------------------------------------------------
> 
> 
> 
> 
> 
> -------------------------------------------------------------
> To unsubscribe from this list, manage your profile @
> http://www.acfug.org?fa=gin.edituserform
> 
> For more info, see http://www.acfug.org/mailinglists
> Archive @ http://www.mail-archive.com/discussion%40acfug.org/
> List hosted by http://www.fusionlink.com
> -------------------------------------------------------------
> 
> 




-------------------------------------------------------------
To unsubscribe from this list, manage your profile @ 
http://www.acfug.org?fa=login.edituserform

For more info, see http://www.acfug.org/mailinglists
Archive @ http://www.mail-archive.com/discussion%40acfug.org/
List hosted by http://www.fusionlink.com
-------------------------------------------------------------



Reply via email to