Question
cfscript
- March 29, 2010
- 1 reply
- 1534 views
ChartDirector Support | Forum Home Search |
cfscript | |
|---|---|
| Posted by kevin on Mar-29-2010 11:00 | |
| I am trying to generate a multi series line graph using 3rd party software. when i loop through the bidders i want data0y and data0x to increment each time i.e. when it goes to bidder 1 it should generate: <CFSCRIPT> data0Y = Array(AllBids); data0X = Array(AllBidDates); </CFSCRIPT> bidder 2: <CFSCRIPT> data1Y = Array(AllBids); data1X = Array(AllBidDates); </CFSCRIPT> bidder 3: <CFSCRIPT> data2Y = Array(AllBids); data2X = Array(AllBidDates); </CFSCRIPT> i have tried things like: <!--- Find Bidder Position ---> <CFSET Bidderpostemp=ListFind(#AllBidders#, "#GetChartData.BidderID#")> <CFSET Bidderpos=Bidderpostemp-1> <CFSCRIPT> data#Bidderpos#Y = Array(AllBids); </CFSCRIPT> but to no avail. the relevant part of the code is.... <!--- Query to find all the Bidders participating in this Lot ---> <CFQUERY NAME="GetAllBidders" DATASOURCE="#Application.Datasource#"> SELECT BidderID FROM Bidders WHERE BidderID IN (<CFQUERYPARAM VALUE="#GetBidders.Bidders#" LIST="YES" CFSQLTYPE="CF_SQL_VARCHAR">) AND (Activated=<CFQUERYPARAM VALUE="Yes" CFSQLTYPE="CF_SQL_CHAR" MAXLENGTH="3">) </CFQUERY> <CFSCRIPT> // ChartDirector for ColdFusion API Access Point cd = CreateObject("java", "ChartDirector.CFChart"); // A utility to allow us to create arrays with data in one line of code function Array() { var result = ArrayNew(1); var i = 0; for (i = 1; i LTE ArrayLen(arguments); i = i + 1) result = arguments; return result; } </CFSCRIPT> <!--- Create a list of all the Bidders ---> <CFSET AllBidders=ValueList(GetAllBidders.BidderID)> <!--- Loop through the Bidders ---> <CFLOOP INDEX="ListBidders" LIST="#AllBidders#"> <!--- Query to find Data for the Graph ---> <CFQUERY NAME="GetChartData" DATASOURCE="#Application.Datasource#"> SELECT Bids.BidID, Bids.BidderID, Bids.LotID, Bids.Bid, Bids.Bid_Date, Bidders.Company FROM Bids INNER JOIN Bidders ON Bids.BidderID = Bidders.BidderID WHERE (Bids.LotID=<CFQUERYPARAM VALUE="#URL.LotID#" CFSQLTYPE="CF_SQL_VARCHAR" MAXLENGTH="50">) AND (Bids.BidderID=<CFQUERYPARAM VALUE="#ListBidders#" CFSQLTYPE="CF_SQL_VARCHAR" MAXLENGTH="50">) ORDER BY Bids.Bid_Date ASC; </CFQUERY> <!--- Create a list of all the Bids ---> <CFSET AllBids=ValueList(GetChartData.Bid)> <!--- Create a list of all the Bid Date/Times ---> <CFSET AllBidDates=ValueList(GetChartData.Bid_Date)> <CFSCRIPT> data0Y = Array(AllBids); data0X = Array(AllBidDates); </CFSCRIPT> </CFLOOP> | |

Forum Home
Search
Message List
Post Message
Subscribe
cfscript