We help IT Professionals succeed at work.

ColdFusion Language

10K

Solutions

3K

Contributors

ColdFusion is a server-side rapid application development platform originally created by Allaire and now sold by Adobe, implementing the dynamic general purpose CFML programming language. The term ColdFusion is sometimes colloquially used to refer to the CFML language (Cold Fusion Markup Language), but can also include discussions of the server software implementation. ColdFusion runs using a customised version of Apache Tomcat. Earlier versions are bundled with JRun.

Hello. I'm having an issue returning an XPath value. The statement runs and I see the 4 nodes returned but when I try to get the "Text()" value for them. Nothing returns. Can you please let me know why the syntax is failing?  

This works:  
/w:document/w:body[1]/w:tbl[1]/w:tr[1]/w:tc/*[1]

This does not work:
/w:document/w:body[1]/w:tbl[1]/w:tr[1]/w:tc/*[1][attribute::text()]
nor this
/w:document/w:body[1]/w:tbl[1]/w:tr[1]/w:tc/*[1].text()
nor this
/w:document/w:body[1]/w:tbl[1]/w:tr[1]/w:tc/*[1].HtmlText()
TheDocumentXML.txt
0
Good day,

I would like to display the image which is stored in an MS SQL database. However, so far we have been unable to do so.

The field as defined in MS SQL is shown in capture.jpg

When viewing the content of the field, it is displayed as shown in capture1.jpg

When running the below program, the content is displayed as in capture2.jpg

<cfquery name="q1" >
      select top 1
            *
      from
            Portrait
</cfquery>



<cfoutput>
      <table border='1'>
            <cfloop query="q1" >
                  <tr>
                        <td>#q1.poImage# /></td>
                  </tr>
            </cfloop>
            
            
      </table>
</cfoutput>

Any help is highly appreciated
Capture.JPG
Capture1.JPG
Capture2.JPG
0
Greeting Experts! I have a coding issue that I could use some help with. I'm using ColdFusion 10 to try and parse a Microsoft Word document, extract the contents, keep it's formatting, and put it into a SQL Server database in multiple parts. For example if the word doc were HTML, each row would go into the database separately. This is turning out to be a tough nut to crack. I'm having trouble with the XPath part. I can find individual cells with the XML structure that ColdFusion creates but I can't seem to list all child nodes for a given element. This is all an attempt to keep the MS Word formatting, including special characters. I know parsing HTML would be easier but the goal is to do it with the original MS Word document. Given the key words from the left hand column, the Word Doc will filter out the Details Text in the right column. For example if the key word search was "Bob" then only the rows that have "Bob" in the first column will be displayed. I'd like to stay away from third party plug-ins. Any help is appreciated.  Thank you.
EE_CFM_XML_DB.txt
TheDocument.docx
0
I have a scenario where I need to automatically upload client file(CSV, Excel, etc...) to CF Server.

However, no user intervention is allowed. The process will be done using the Coldfusion's job scheduler.

We use to use CFFTP but this is not allowed on the host server anymore.

Some experts guided us in the direction of using CFHTTP. However, we have never use this before.

Any suggestion is highly appreciated
0
I have code that I have used on three other projects without issue but for some reason on this site, the autocomplete (jquery) will not show the dropdown.   Dev tools is showing that it is reading the .cfc file and returning the values it should be but nothing shows up.  I tried various CSS fixes for z-index but that didn't help either.  I can't figure out what else i am missing or have wrong...

http://ahlefacademicbeta.scholarshipapps.org/app_enroll2.cfm

Open in new window

1
Hello everyone. I need some help with this Colfusion component.. I need to pass the values extracted form the cfqueries into the values in the cscript...

<cfcomponent>
<!--- I have the following queries --->
<cffunction name="GetNumbers">
<cfquery name="Fall2006" datasource="#db#" > 
      select sum(transfer_y1_2y_public) as y12y, sum(transfer_y2_2y_public) as y22y, sum(transfer_y3_2y_public) as y32y, sum(transfer_y4_2y_public) as y42y, sum(transfer_y5_2y_public) as y52y, sum(transfer_y6_2y_public) as y62y from transfer where transfer_entry_sector = <cfqueryparam cfsqltype="cf_sql_varchar" value="TWO_YEAR_PUBLIC">
      and transfer_year = <cfqueryparam cfsqltype="cf_sql_integer" value="2006">
</cfquery>

<cfquery name="Fall2008" datasource="#db#" > 
      select sum(transfer_y1_2y_public) as y12y, sum(transfer_y2_2y_public) as y22y, sum(transfer_y3_2y_public) as y32y, sum(transfer_y4_2y_public) as y42y, sum(transfer_y5_2y_public) as y52y, sum(transfer_y6_2y_public) as y62y from transfer where transfer_entry_sector = <cfqueryparam cfsqltype="cf_sql_varchar" value="TWO_YEAR_PUBLIC">
      and transfer_year = <cfqueryparam cfsqltype="cf_sql_integer" value="2008">
</cfquery>

<cfquery name="Fall2010" datasource="#db#" > 
      select sum(transfer_y1_2y_public) as y12y, sum(transfer_y2_2y_public) as y22y, sum(transfer_y3_2y_public) as y32y, sum(transfer_y4_2y_public) as y42y, sum(transfer_y5_2y_public) as y52y, sum(transfer_y6_2y_public) as y62y from transfer where …
0
I need to be able to push notification to users phone. I am trying to use ColdFusion to do that. However, I have issues. I found the site that supposed to explains how to do that with coldfusion .http://www.rickgroenewegen.nl/?p=77

However there is still some problems . If I doing thing on the fly I do not know what their phone type is (apple or android).
0
I have the below program. Can somebody point out why the content of parmArray in function "doCalc"  changes whle
no operation is being performed on it.

I have been pulling my hair on this issue for about 2 days now.

Any help is greatly appreciated.



<cfset aAr1 = arrayNew(1)>
<cfset s = structNew()>
<cfset s.date = 'xx'>
<cfset s.interest = '250'>
<cfset aAr1[1] = s>
<cfset s = structNew()>
<cfset s.date = 'yy'>
<cfset s.interest = '300'>
<cfset aAr1[2] = s>
<cfset s = structNew()>
<cfset s.date = 'zz'>
<cfset s.interest = '350'>
<cfset aAr1[3] = s>


<cfinvoke   method="doCalc" returnvariable="aResult1">
    <cfinvokeargument name="parmArray"  value="#aAr1#">
</cfinvoke>


<cffunction name="doCalc" returntype ="array">
    <cfargument name="parmArray" required="true" type="array">

      <cfdump var = "#parmArray#" label="before">
      <cfset LOCAL.aAr2 = parmArray>
      
      <cfloop index="LOCAL.nIDX" from="1" to="#arrayLen(LOCAL.aAr2)#" >
            <cfset LOCAL.aAr2[LOCAL.nidx].date = LOCAL.nIdx>
      </cfloop>

      <cfdump var = "#parmArray#" label="after">      
      
    <cfreturn LOCAL.aAr2>
 </cffunction>
0
ColdFusion 9

Create 2 excel files at once

I use this to create a single excel file:

<cfquery database="somedb" name="somequery">
       ... my query ...
</cfquery>

<cfspreadsheet action="write" query="somequery" filename="/C-Items_#custno#_#contractid#.xls" sheetname="temp" overwrite="true">
<cfheader name="Content-Disposition" value="attachment; filename=C-Items_#custno#_#contractid#.xls">
<cfcontent type="application/vnd.ms-excel" file="/C-Items_#custno#_#contractid#.xls" deletefile="yes">

I have found myself in a situation where I need a second excel file created (under certain circumstances).

EG.  
<cfif filedneeded eq "yes">
      ... my code above ...
</cfif>
<cfif secondfileneeded eq "yes">
     ...different query than above, but <cfspreadsheet/cfheader/cfcontent> code similar ...
</cfif>

When I try this I only get the first excel file and not the second ... as if the <cfheader> or <cfcontent> aborts the code and the second <cfif> never runs.  I can easily create either spreadsheet from 2 separate links on my page that directs the user to the correct chunk of code, but I'd like to automate this because the need for a second excel file is only sometimes, and my users seems to often forget to click the second link.

Hope that makes sense.

Regards,
Max
0
FormEntry ErrorServer Settings Page 1Server Settings Page 2Hi,
I am running Coldfusion v9 (migrated from Coldfusion v7) and running on error on the same cfm page that used to run just fine in CF7 environment.
I found an article where they talk about this type of error and apparently one person in that discussion pointed out that we can turn this feature off.
Here is the link:
https://www.bennadel.com/blog/767-new-coldfusion-error-form-entries-incomplete-or-invalid.htm

However it does not say exactly what feature/function to turn off in CF admin.

Can you help?
0
I have a form that allows for multiple file uploads using the "multiple" attribute on an input type="file" field. The results are being passed to a cfc that should upload the files, resize them, crop them for thumbnails, etc.

I have the photoUpload argument of the cfc (the name of my field being photoUpload) set to type=any, because if you upload a single file it's passed as a string while multiple files are passed as an array. My question is how to tell the code that comes after if there's one file or many. Should I test to see if photoUpload is a simple value, then if it is do ListToArray and just "loop" over the one? Or is there a better way to handle this before it even gets to the cfc?

Additionally, when I loop over the array it's always giving me the last file name as the name, causing overwrite issues. Can you tell where I'm going wrong? (Ignore all the CFCATCH messages being returned with the message, that's just for my own troubleshooting.) It's similar to this question but she had multiple fields and loops.

<cfif IsSimpleValue(ARGUMENTS.photoUpload)>
			<cfset photoArray = ListToArray(photoUpload)>
		<cfelse>
			<cfset photoArray = ARGUMENTS.photoUpload>
		</cfif>
<!--- upload image(s) --->
		<cfloop from="1" to="#ArrayLen(photoArray)#" index="i">
			<cftry>
				<cffile action="upload" 

Open in new window

0
Web page errorCF Admin Data Source ErrorCFM Page ErrorCF Datasource Connection ErrorHi,

 I have Coldfusion V9 running on Windows Server 2008R2. I created new datasource "Promo" using Microsoft ACCESS database. When I submit the configuration, it displays an error message in red color "Unable to update the NT registry. Variable DRIVEPATH is undefined".
 Also when I click [Verify All Connections] button at the bottom of Data Source section, I get an message in yellow color regarding "Connection verification failed for data source: Promo".
 In the Internet browser, when I try to display a specific CFM page, it generates and error message "Error Executing Database Query.
[Macromedia][SequeLink JDBC Driver][SequeLink Server]Required user name is missing.".

 Can you help?
0
I have create a .jsx file from photoshop and using cfexecute to run it. If I use cfexecute from the web it does not execute the script . If I take the script and execute it locally using ExtendScript Toolkit then it works like a charm. I do not know what do to make it work through  the web .

<cfexecute name="C:\Program Files (x86)\Adobe\Adobe Photoshop CS2\photoshop.exe" 
arguments="C:\inetpub\wwwroot\websites\myscript.jsx" timeout="6000" variable="returnedResults" 
      errorVariable="returnedError"  ></cfexecute>

Open in new window


the script is here

#target photoshop

$.localize = true;

var inputFolder = new Folder("/c/work_space/2018/pdfs")
var saveFolder  = new Folder("/c/work_space/2018/JPEG")

function createFolder(fptr) {
  if (!fptr) {
    Error.runtimeError(19, "fptr");  // Bad Argument
  }

  if (fptr.constructor == String) {
    fptr = Folder(fptr);
  }

  if (fptr instanceof File) {
    return createFolder(fptr.parent);
  }
  if (fptr.exists) {
    return true;
  }
  if (fptr.parent && !fptr.parent.exists) {
    if (!createFolder(fptr.parent)) {
      return false;
    }
  }
  return fptr.create();
}; 


createFolder(saveFolder)



if (inputFolder != null)
{
var inputFiles = inputFolder.getFiles("*.pdf")

for(var i=0;i<inputFiles.length;i++)
{

var fileRef = File(inputFolder + "/" + inputFiles[i].name)
var pdfOpenOptions = new PDFOpenOptions
pdfOpenOptions.antiAlias = true
pdfOpenOptions.mode = OpenDocumentMode.RGB
pdfOpenOptions.cropPage = 

Open in new window

0
CF ErrorHi,
 
 I installed Coldfusion V9 on Windows Server 2016 and I am getting an error when I run Web Server Configuration.
 Is CF9 not compatible with W2016?

 I saw Windows Server 2008 in its OS compatibility list. But I wonder if there are updates that I can install to make CF V9 compatible with Windows Server 2016 or 2012R2.


Thanks.
0
I can't seem to find why these two pages are showing the header areas differently. I don't see a difference w/in the code that would cause this. Both reports use the same styles and configuration for the tables and images. Only difference is one is an html file and one is a cfm. See below for screenshots and code comparison.

Showing correctly - index.html:

<cfset #date# = #DateFormat("#Now()#","mmmm dd, yyyy")#> 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML LANG="EN-US">

<head>
<title>XXXXXXXX Report Query</title>

<script language="JavaScript" type="text/JavaScript">
function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);
</script>

<link href="../css/home.css" rel="stylesheet" type="text/css" />
<LINK rel="Home" title="Index page of FINCEN Intranet site"
      type="text/html"
      href="https://<cfoutput>#CGI.SERVER_NAME#</cfoutput>">  
</head>

<BODY >
<table width="100%" height="100%" border="0" cellpadding="0" cellspacing="0" background="../images/grad2b.gif">
   <tr>
      <td width="10%">&nbsp;</td>
      <td width="80%" valign="top">
	     <table border="0" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF" >
            <tr>
   

Open in new window

0
I have created the system DSN and as well User DSN on my system control panel successfully by ODBC Connector  against MySQL 8 server DB. now i want to use this this database on my ColdFusion server and for this i am creating the Data-source on my ColdFusion server. But there showing errors . Please guide me that how can i use this database or DSN on my ColdFusion server and what type of driver i have to select in ColdFusion administration for creating Data-source .

Thanks In advance!
0
I am getting an error when trying to run a SQL query/report from within a cfm file. The error is being throw due to the fact that there's no data to pull from for one of the options in the drop down menu for the last couple of years. No information to pull from. Any ideas on how to fix the query or CF to prevent the error when there's  no data to pull from in the db?

Error and queries below:

The error occurred in D:/inetpub/wwwroot/CASAPay/casapay_out.cfm: line 116
 
114 :                   
115 : <!--Summing columns with CFSET declaration... -->                  
116 : <cfset countttl = #invcounts.15Count# + #invcounts.1530C# + #invcounts.30plusC#>
117 : <cfset dollarttl = #invcounts.less15days# + #invcounts.15to30Days# + #invcounts.30plusDays#>
 

<cfcomponent>
	<cffunction name="casapay1" access="public" returntype="query">
 
<!--Set global datasource variable -->
<cfset #dsn# = "mirrepuser">

<cfparam name="form.agency" default="">
<cfparam name="form.period" default="">

<cfquery name="invCounts" datasource="#dsn#">
SELECT
   /*+ INDEX (f FV_INV_SELECTED_DUEDATE_IDX) */
   --Within 15 days
   SUM(
   CASE
      WHEN
         P.ACCOUNTING_DATE BETWEEN i.terms_date AND i.terms_date + 15 
      THEN
         i.invoice_amount 
      ELSE
         0 
   END
) "less15days", SUM(
   CASE
      WHEN
         P.ACCOUNTING_DATE BETWEEN i.terms_date AND i.terms_date + 15 
      THEN
         1 
      ELSE
         0 
   END
) "15COUNT", 	--Between 15-30 Days
   SUM(
   CASE
      WHEN
      

Open in new window

0
How to Detect Traffic From China language hu-hu (reported in google analytics) and divert to a not available in your region page

I notice traffic with language hu-hu in my google analytics with a high bounce rate.

What is the best way of detecting traffic from China -   with language hu-hu?

I have a cold fusion 2016 site.  Thank you
0
Create multiple PDF using coldfusion and cfcontent. I have the CF query and I need for each person generate the PDF file. The way I do is cfoutput through the query into the variable and then put that variable into cfdocument and then use <cfcontent to produce PDF through the browser. But the broser only producing the PDF for 1 person . I think this is because cfcontent but how can i produce as many PDFs  as people produced by the query  

<cfoutput query="rc.getResultByCompetency" group="rateeID">
    	<cfsavecontent variable="output">
               output here
       </cfsavecontent>
<cfdocument
						name="certificate_#rateeID#"
						orientation ="portrait"
						mimetype="application/pdf" overwrite="true" 
						format="PDF">
					#output#
				</cfdocument>		
	<cfset test = evaluate("certificate_#rateeID#")>
				<cfheader name="content-disposition" value="attachment;filename=#rc.getResultByCompetency.rateeName#.pdf">
				<cfcontent type="application/pdf" variable="#toBinary(test)#" >	
 </cfoutput>

Open in new window

0
I'm attempting to use the following code to upload files in Redactor. The directory path exists. The permissions for the directory are currently overly permissive just for testing. But the file upload box keeps turning red and no file is uploaded. Any ideas where I might be going wrong? Thanks!

Code from the index page:
<script>
  	$R('.redactor', {
		fileUpload: 'js/redactor/file-upload.cfm'
	});
</script>

Open in new window



Content of file-upload.cfm:
<cfsetting enablecfoutputonly="true">

<cfset relativePath = "/modules/downloads/">
<cfset dir = ExpandPath(relativePath)>
	
<cfset files = {}>
<cfif StructKeyExists(FORM, "file")>
	<cfset fileNumber = 1>
	<cfloop list="#FORM.file#" index="i">
		<cffile action="upload" destination="#dir#" nameconflict="makeunique" filefield="file">

		<cfset files["file-"&fileNumber]["name"] = cffile.serverFile>
		<cfset files["file-"&fileNumber]["url"] = relativePath & cffile.serverFile>
		<cfset files["file-"&fileNumber]["id"] = CreateUUID()>
		<cfset fileNumber = fileNumber + 1>
	</cfloop>
<cfelse>
    <cfset files["error"] = "no file uploaded">
    <cfset files["path"] = dir>
</cfif>
<cfheader name="Content-Type" value="application/json">
<cfoutput>#serializejson(files)#</cfoutput>
<cfsetting enablecfoutputonly="false">

Open in new window

0
ColdFusion 9
Windows Server 2008
JQuery

I have captured a signature (Json value - TicketSignature) that I save to database.  I am using JQuery UI Signature to capture the signature (http://keith-wood.name/signature.html).  I can re-generate the signature on a web page without problem by using:

<cfoutput>
          <textarea style="display:none;" name="TicketSignature" id="sig">#TicketSignature#</textarea>
</cfoutput>

<script>
       $(function() {
		$('#redrawSignature').signature('enable').
		signature('draw', $('#sig').val());
		signature('disable'); 
	});
	$('#redrawSignature').signature({disabled: true});
</script>
<div style="margin-top:10px;font-size:12px;margin-bottom:7px;">
          <div id="redrawSignature"></div>
</div>

Open in new window


But when I try to embed the code above in a CFMAIL tag, it will not redraw the signature ... the "redrawSignature" box remains blank ... is this possible within CFMAIL tags?  Works fine on a regular .cfm page to display on the screen, but I need a copy emailed to my customers with their signature.

I have tried moving the TEXTAREA and SCRIPT outside (above) the CFAMIL tags, and also with them inside the tags, with no success.  Any ideas?

Max
0
I am setting up an integration with a third party.   They already have an existing POST to a former affiliate, so I ask them to just put my URL in there and hit our site.  I figured I would just deserialize the JSON and see what comes in, then code to that.  

So I created a   index.cfm file (Coldfusion 11)  on    www.mysite.com/api/order/    

The index.cfm file does nothing but email me a CFDUMP of the URL and FORM variables.
I gave the URL to the company and they hit it.   I receive the email and both CFDUMPs are empty structures.   No URL variables, no FORM variables.

They say they are doing a POST call to the site.   And are using this path:     www.mysite.com/api/order/   

They have hit it multiple times, they get a 200 OK response.   But each time, my mailed dump show empty values even though they are sending JSON over.

What am I missing?    What do I have to do differently to see the data they are sending?

Thanks!
0
My scheduled tasks in ColdFusion 9 are no longer executing.

They attempt to run (I can see that in the log files) but we get a no connection error.

While in the cfadmin, if we try to run a task manually we get this:

There was an error running your scheduled task. Reasons for which scheduled tasks might fail include:

    The scheduled task is paused
    The URL is a redirection URL.
    The URL is protected by IIS NT Challenge/Response or Apache .htaccess password. The Username and Password text fields for editing a scheduled task are intended to support Basic Authentication only.
    The Domain Name lookup failed. Try using the IP address of the domain whenever possible.
    The URL is an SSL site, but the SSL port was specified incorrectly.
    The Web site is not responding.
    The directory specified for published results does not exist.

The scripts will run fine if I paste their URLs into a browser.

I read that its because tasks use CFHTTP and that needs a SSL connection.  So I created a page with CFHTTP calling one of the scripts used in the tasks.
and here is the dump from that.

       struct
Charset      [empty string]
ErrorDetail      I/O Exception: peer not authenticated
Filecontent      Connection Failure
Header      [empty string]
Mimetype      Unable to determine MIME type of file.
Responseheader      
struct [empty]
Statuscode      Connection Failure. Status code unavailable.
Text      YES


These scheduled tasks ran great for years.  But this week the tech support …
0
How do I add to my original SQL statement, a sum of values in a particular field?
I want the same output from my original SQL statement with the receivedQty field totals.
Software: ColdFusion with MS Access

Original SQL Statement:
SELECT OMaterials.KeyID, OMaterials.*, Ship.*, Materialm.*, DO.*, Materialm.projectQty,'' AS RCVDBY
FROM ((Ship INNER JOIN DO ON Ship.KeyID = DO.ShipID) INNER JOIN OMaterials ON DO.KeyID = OMaterials.DOID) INNER JOIN Materialm ON (Ship.KeyID = Materialm.ShipID) AND (OMaterials.MaterialmID = Materialm.KeyID)
WHERE (((Materialm.projectQty)<>0))

Open in new window


How do I add this statement to the above statement? (this statement produces all the related records an adds up the receivedQty totals)
SELECT DISTINCTROW Materialm.KeyID, Sum(OMaterials.receivedQty) AS SumOfreceivedQty
FROM Materialm INNER JOIN OMaterials ON Materialm.KeyID = OMaterials.MaterialmID
GROUP BY Materialm.KeyID;

Open in new window

0
Connection refused: connect
The root cause was that: java.sql.SQLNonTransientConnectionException: [Macromedia][SQLServer JDBC Driver]Error establishing socket to host and port: someipaddress:1433. Reason: Connection refused: connect

Ok we have done the obvious which is opening up the TCP/IP ports of 1433 and the named pipes also.  So please don't suggest that.  From an exteranl station SSMS connects with no problems so it is not a firewall problem.  This is a brand new server setup and I have not encountered this before.  Of course when you google this all the advise is to open up the TCP/ blah blah blah. Obviousely that is not the problem.

That is why I am here.  Any help is greatly appreciated.
John
0

ColdFusion Language

10K

Solutions

3K

Contributors

ColdFusion is a server-side rapid application development platform originally created by Allaire and now sold by Adobe, implementing the dynamic general purpose CFML programming language. The term ColdFusion is sometimes colloquially used to refer to the CFML language (Cold Fusion Markup Language), but can also include discussions of the server software implementation. ColdFusion runs using a customised version of Apache Tomcat. Earlier versions are bundled with JRun.

Top Experts In
ColdFusion Language
<
Monthly
>