Я думаю (если я понимаю вашу логику), что вы пытаетесь сделать, это просто одна строка кода в Coldfusion:
<cfset binList = ValueList(getParts.binnum) />
Если вы посмотрите на свой код дальше, похоже, что вы встраиваетеlist в массив, а затем преобразовать массив в список.Если у вас есть список, разделенный запятыми, вставьте его в середину другого списка, разделенного запятыми, они будут интерпретироваться как отдельные элементы, а не как набор.
Посмотрите, что произойдет, если вы изменитеваш разделитель, отличный от запятой, чтобы его нельзя было перепутать с большим списком:
<cfset binList = ValueList(getParts.binnum, ';') />
Обновление:
ОК, я вижу, у вас проблема с группировкой деталей.Позвольте мне обновить мое решение:
<!--- loop over unique parts -->
<cfoutput query="getParts" group="partnum">
<cfset binlist = "" >
<!--- loop over bin numbers for each part --->
<cfoutput>
<cfset binlist = ListAppend( binlist, getParts.binnum, ';' ) />
</cfoutput>
<!--- do row level stuff here --->
<cfset aColumns = [ partnum, shortchar08, partdescription, binlist, inventory.currinv , staged.stagedqty, alloc.allocqty, available, shelfCount, shipdtl.shipqty, getNumberofStores.numStores, tordered, APS, paddedLeadTime, LWM, storesRemain] />
<!---add the column data to the spreadsheet--->
<cfset SpreadsheetAddRow(SpreadsheetObj, ArrayToList(aColumns)) />
</cfoutput>
По сути, вы не смешиваете CFOUTPUT и CFLOOP.Если вы используете CFOUTPUT для группировки, для получения внутренней группировки необходим внутренний CFOUTPUT (за исключением параметра group).