Hi,

It's my first post in this mail-list ... so hi everybody.

I writing this mail, because I don't know if it's possible to reuse some
previous statements in an other statement ? ...

Let me explain myself :

I have a class *UniverseFilter* which is mapped. Every thing works.
I have an class *UniverseDefinition *which contains a list of *
UniverseFilter*.

I get every *UniverseFilter* in my object with a resultMap like this :

<resultMaps>
    <resultMap id="UniverseDefinitionMap" class="UniverseDefinition"
groupBy="IdRessource">
      <result column="id_universedef" property="IdUniverseDefinition" />
      <result column="id_ressource" property="IdRessource" />
      <result column="dateval" property="Date" />
      <result column="generatortype" property="GeneratorType" />
      <result column="filterorder" property="FilterOrder" />

      *<result column="id_universedef" property="FilterList"
select="UniverseFilterSelectByIdUnivRef" />*
[...]

Every works well for the select statements.


But, i'd like to make an insert statement, and reuse the insert statement i
made for the class *UniverseFilter*.

    <insert id="UniverseDefinitionInsert"
parameterClass="UniverseDefinition" resultClass="int">
      insert into dbo.r_universedef (id_universedef, id_ressource, dateval,
generatortype, filterorder)
      values (#IdUniverseDefinition:int#, #IdRessource:int#,
#Date:DATETIME#, #GeneratorType:int#, #FilterOrder:VARCHAR# );

      <dynamic prepend="">
       <isGreaterThan prepend="" property="FilterList.Count"
compareValue="0">
          <iterate prepend="" open="" close="" property="FilterList"
conjunction="; ">

*                       REUSE OF STATEMENT "INSERT_UNIVERSEFILTER" ... with
paramater FilterList[]* (typed *UniverseFilter*)

          </iterate>
        </isGreaterThan>
      </dynamic>
    </insert>

Is it possible ?

Thanks

Régis



NB: iBatis is really great !
NB2: sorry, i'm french and my english is suffering ...

Reply via email to