Exit
  • Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
  • 한국 커뮤니티
0

CF10 and CFSpreadsheet

New Here ,
Feb 15, 2013 Feb 15, 2013

So this is my first time using CFSpreadSheet. I'm pulling a 3500 row Excel spreadsheet in as a query. I'm the looking at the email addresses as a Valuelist and querying a database table to pull in additional elements. Then I use a query of queries to match the data and write the rows to a new Excel file. Just outputting the results to HTML is very fast, but CFSpreadsheet seems like an incredible hog! I do have some logic associated at the row level, highlighting records of a certain status.

Does everyone have this issue? Is there any way to speed it up?

And, when I wasn't using QoQ to match the sets, just running a query for each individual row, it would get to 575 lines and crap out with the following error.

"String index out of range: -1 "

Not very descriptive. It wasn't data related because I used different datasets, but it would always stop at that row count, on both my local instance on my desktop machine and on my dedicated test server as well.

Now, since moving it to QofQ, reducing the calls to the database server to only  one, I'm getting the error repeatedly at 1347 and it still can't be attributed to a specific data record.

String index out of range: -1

The error occurred in C:/ColdFusion10/cfusion/wwwroot/Excel/cf~QofQExcel.cfm: line 48
46 : 47 :      <cfset myRow = "'#myFile.ATTRIBUTE_VALUE#','#myFile.EMAIL1#','#myFile.FIRSTNAME#','#myFile.LASTNAME#','#myFile.ORDERS_ID#','#myFile.ORGNAME#','#Trim(NumbersOnly(myFile.PHONE1))#','#myFile.TIMEPLACED#','#myFile.TOTALPRODUCT#','#myFile.TOTALSHIPPING#','#myFile.TOTALTAXSHIPPING#','#getStatus.cust_name#','#getStatus.cust_num#','#getStatus.curr_order#','#getStatus.delete_date#',#DateFormat(getStatus.date_Entered,'MM/DD/YYYY')#"> 48 :      <cfset SpreadsheetAddRow(sObj, "#myRow#")> 49 :      <!--- <cfif #getStatus.curr_order# NEQ "IN"> 50 :           <cfset SpreadsheetFormatRow(sObj, {color="red"}, dataRow)> 

945
Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
LEGEND ,
Feb 15, 2013 Feb 15, 2013
LATEST

When in doubt, look at your data.

Do a cfdump on the myRow Variable before you run the SpreadSheetAddRow function.  Chances are that one of your variables is an empty string.  If so, that is probably messing you up.

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Resources