Hello,

I'm wondering if it is possible to use SQL in a custom ResultSource as shown in 
the cookbook, and then binding an array parameter to an 'in' condition. This is 
against a SQL Server 2005 db.

>From my Tasks class, copied straight from the cookbook:

####

# Make a new ResultSource based on the Tasks class
my $source = __PACKAGE__->result_source_instance();
my $new_source = $source->new($source);
$new_source->source_name('CommonTasks');

# Hand in your query as a scalar reference
# It will be added as a sub-select after FROM,
# so pay attention to the surrounding brackets!
$new_source->name( \<<SQL );
( select t.sectionid,t.termid,t.taskid,t.taskname
from webapps.vOpenGradingTasks t
where t.sectionid in (?)
        and t.termid = ?
group by t.sectionid,t.termid,t.taskid,t.taskname
having count(t.sectionid) = ? )
SQL

# Finally, register your new ResultSource with your Schema
ScoreCommenter::Warehouse->register_source('CommonTasks' => $new_source);

####

Then, in my Catalyst controller, I have:

####

  my $task_rs = $c->model('Warehouse')->resultset('CommonTasks')->search( {},
    {
      bind => [ @section_list, $termid, $section_ct ]
    }
  );

####

Obviously this doesn't work, because I'm sending 4 parameters and the 
resultsource is only expecting 3.

Is there a way to get my array into that 'in(?)'?

Thanks in advance,
Chris



Chris Burch
Data Analyst/Web Programmer
Planning/Research & Evaluation
Madison Metropolitan School District
(608) 663-1916
[email protected]
 



_______________________________________________
List: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/dbix-class
IRC: irc.perl.org#dbix-class
SVN: http://dev.catalyst.perl.org/repos/bast/DBIx-Class/
Searchable Archive: http://www.grokbase.com/group/[email protected]

Reply via email to