CFScript Evaluate () выбрасывает ошибку в цикле - PullRequest
0 голосов
/ 04 января 2012

Я пытаюсь выгрузить кучу get функций в электронную таблицу, используя cfspreadsheet - вместо передачи каждой отдельной функции, я решил создать список и просмотреть его. Я думаю, что я неправильно использую Evaluate(), но я не уверен, что лучший способ сделать это. Буду признателен за любые предложения / оптимизации, так как мой Cold-Fu не так уж и хорош.

Выдается ошибка Variable GETFIELDS is undefined.

<cfset var fields = "Function1,Function2" />
<cfspreadsheet action="read" src="#strDestinationPath#information.xls" name="xlsInfo" headerrow="1" />
<cfset var row = xlsData.rowcount + 1 />
<cfset var count = 1 />
<cfloop list="fields" index="f" delimiters=",">
   <cfscript>
    SpreadsheetSetCellValue(xlsInfo,Evaluate('get' & f & '()'),row,count);
    count++;
   </cfscript>  
</cfloop>   
<cfspreadsheet action="write" overwrite="true" filename="#strDestinationPath#information.xls" name="xlsInformation" />

1 Ответ

2 голосов
/ 05 января 2012

cfloop ожидает список элементов в качестве аргумента.

Попробуйте изменить значение с

<cfloop list="fields" index="f" delimiters=",">

на

<cfloop list="#fields#" index="f" delimiters=",">

илидо

<cfloop list="Function1,Function2" index="f" delimiters=",">
...