Hi,
It seems you need to replace 'column="COMPANY_ID=COID"' with 'column="COMPANY_ID"', and 'WHERE COMPANY_ID = #COID#' with 'WHERE COMPANY_ID = #Value#'. This is how we usually do this. Good luck! Regards, Kamiel Wanrooij EveryWeb Solutions From: Benckert, Joe [mailto:[EMAIL PROTECTED] Sent: Wednesday, March 26, 2008 12:44 PM To: [email protected] Subject: mapping problem Hi, I'm trying to get my feet wet using IBatis. I'm attempting to follow the examples I'm seeing in the documentation but I must have my mapping setup wrong. I'm simply trying to load a list of Benefits under a parent object by passing a parameter into the select statement. However, I keep getting the error below. Any advice Here is my map <?xml version="1.0" encoding="utf-8" ?> <sqlMap namespace="PlanPopulation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://ibatis.apache.org/mapping" > <alias> <typeAlias alias="PlanPopulation" type="Trion.Entities.PlanPopulation, Trion.Entities" /> <typeAlias alias="Benefit" type="Trion.Entities.Benefit, Trion.Entities"/> </alias> <resultMaps> <resultMap id="SelectResult" class="PlanPopulation"> <result property="CompanyID" column="COMPANY_ID" /> <result property="PlanYearID" column="PLAN_YEAR_ID" /> <result property="StartDate" column="MASTER_PLAN_START_DATE" /> <result property="EndDate" column="MASTER_PLAN_END_DATE"/> <result property="Benefits" column="COMPANY_ID=COID" select="SelectBenefits" /> </resultMap> <resultMap id="BenefitResult" class="Benefit"> <result property="PlanType" column="PP_PLAN_TYPE"/> <result property="Description" column="PLAN_DESCRIPTION"/> </resultMap> </resultMaps> <statements> <select id="Select" parameterClass="int" resultMap="SelectResult"> select COMPANY_ID, PLAN_YEAR_ID, MASTER_PLAN_START_DATE, MASTER_PLAN_END_DATE FROM EOL_MASTER_PLAN WHERE COMPANY_ID = #CompanyID# AND PLAN_YEAR_ID = #PlanYearID# </select> <select id="SelectBenefits" resultMap="BenefitResult" > Select PP_PLAN_TYPE, PLAN_DESCRIPTION FROM EOL_PLAN_TYPE WHERE COMPANY_ID = #COID# </select> </statements> </sqlMap> And the error TestCase 'IBatisUnitTests.GeneralTests.GetPlanPopulation' failed: System.IndexOutOfRangeException : COID at System.Data.ProviderBase.FieldNameLookup.GetOrdinal(String fieldName) at System.Data.SqlClient.SqlDataReader.GetOrdinal(String name) at IBatisNet.DataMapper.Commands.DataReaderDecorator.System.Data.IDataRecor d.GetOrdinal(String name) at IBatisNet.DataMapper.MappedStatements.PropertyStrategy.SelectStrategy.Se t(RequestScope request, IResultMap resultMap, ResultProperty mapping, Object& target, IDataReader reader, Object selectKeys) at IBatisNet.DataMapper.MappedStatements.ResultStrategy.ResultMapStrategy.P rocess(RequestScope request, IDataReader& reader, Object resultObject) at IBatisNet.DataMapper.MappedStatements.ResultStrategy.MapStrategy.Process (RequestScope request, IDataReader& reader, Object resultObject) at IBatisNet.DataMapper.MappedStatements.MappedStatement.RunQueryForObject[ T](RequestScope request, ISqlMapSession session, Object parameterObject, T resultObject) at IBatisNet.DataMapper.MappedStatements.MappedStatement.ExecuteQueryForObj ect[T](ISqlMapSession session, Object parameterObject, T resultObject) at IBatisNet.DataMapper.MappedStatements.MappedStatement.ExecuteQueryForObj ect[T](ISqlMapSession session, Object parameterObject) at IBatisNet.DataMapper.SqlMapper.QueryForObject[T](String statementName, Object parameterObject) Joseph Benckert Trion(tm) 2300 Renaissance Blvd. King of Prussia, PA 19406 P: 610-945-1166 F: 610-945-1166 E: [EMAIL PROTECTED] W: www.trion.com <http://www.trion.com/> Confidentiality Notice: This e-mail transmission may contain confidential or legally privileged information that is intended only for the individual or entity named in the e-mail address. If you are not the intended recipient, you are hereby notified that any disclosure, copying, distribution, or reliance upon the contents of this e-mail is strictly prohibited. If you have received this e-mail transmission in error, please reply to the sender, so that arrangements can be made for proper delivery, and then please delete the message from your inbox.

