[seasar-dotnet:558] Re: S2DaoでSQLファイルを使用した場合の更新件数の取得方法について
KIYOSUE Minoru
[E-MAIL ADDRESS DELETED]
2007年 7月 25日 (水) 15:45:36 JST
杉本 様
お手数をお掛けし、大変恐縮に存じます、清末です。
> 大事なことを忘れていました。
>
> Update処理とS2Dao.NETに認識させるためにメソッド名を
> Update, Modify, Storeのいずれかから始める必要があります。
自動生成のメソッドは注意しておりましたが、SQLファイル用の更新は特に意識して
おりませんでした。
更新件数を取得することができました、ありがとうございました。
----- Original Message -----
From: "Kazuya Sugimoto" <[E-MAIL ADDRESS DELETED]>
To: <[E-MAIL ADDRESS DELETED]>
Sent: Tuesday, July 24, 2007 11:08 PM
Subject: [seasar-dotnet:556] Re:S2DaoでSQLファイルを使用した場合の更新件数の取得方法について
> 杉本です。
>
> 大事なことを忘れていました。
>
> Update処理とS2Dao.NETに認識させるためにメソッド名を
> Update, Modify, Storeのいずれかから始める必要があります。
>
> http://s2dao.net.seasar.org/ja/dao.html#Update
>
> PKeyLockはS2Dao.NETはSELECTと判断して結果を返そうとしています。
>
>
> 07/07/24 に KIYOSUE Minoru<[E-MAIL ADDRESS DELETED]> さんは書きました:
>> 杉本 様
>>
>> お手数をお掛けし、恐縮に存じます。
>>
>> SQLファイルは、以下の通りです。
>>
>> UPDATE nttb02User
>> SET
>> ReferDate = (getdate())
>> WHERE
>> nt02UserSeqID =
>>
>> /*nttb02UserEntity.Nt02UserSeqID*/'@@@@@@@@'
>> AND DelFlag = '0'
>> AND ( ReferDate IS NULL
>> OR ReferDate <=
>> CONVERT(datetime, /*strUnlockDateTime*/'2007/07/24
>> 15:27:32.000' ))
>>
>>
>> ちなみにファイル名は、INttb02UserExDao_PKeyLock.sql とし、DAOのソースと同じ場
>>
>> 所においてあります。
>>
>> よろしくお願い申し上げます。
>>
>>
>> ----- Original Message -----
>> From: "Kazuya Sugimoto" <[E-MAIL ADDRESS DELETED]>
>> To: <[E-MAIL ADDRESS DELETED]>
>> Sent: Tuesday, July 24, 2007 7:05 PM
>> Subject: [seasar-dotnet:553] Re:S2DaoでSQLファイルを使用した場合の更新件数の取得方法について
>>
>>
>> > 杉本です。
>> >
>> > SQLファイルの中身も確認させていただけますでしょうか?
>> >
>> > 07/07/24 に KIYOSUE Minoruさんは書きました:
>> >> 杉本 様
>> >>
>> >> 大変お世話になります、清末です。
>> >> おかげさまで順調にDIを進めることができております。
>> >>
>> >> さて、ご回答について更に質問となってしまいますが、以下のDAOの結果が常に0
>> >> となってしまいます。
>> >>
>> >> Imports System
>> >>
>> >> Imports Seasar.Dao.Attrs
>> >> Imports Nttb02UserEntity = NtkProjectCore.entity.Nttb02UserEntity
>> >>
>> >> <Bean(GetType(Nttb02UserEntity))> _
>> >> Public Interface INttb02UserExDao
>> >>
>> >> ''' <summary>
>> >> ''' PrimaryKey Lock
>> >> ''' </summary>
>> >> ''' <param name="nttb02UserEntity">バリューオブジェクト。 </param>
>> >> ''' <param name="strUnlockDateTime">論理ロックを強制解除とみなす日時</param>
>> >> ''' <returns> 処理対象件数。 </returns>
>> >> Function PKeyLock(ByVal nttb02UserEntity As Nttb02UserEntity, _
>> >> ByVal strUnlockDateTime As String) As
>> >> Integer
>> >>
>> >> End Interface 'INttb02UserExDao
>> >>
>> >> S2Daoをデバッグモードで確認すると
>> >>
>> >>
>> >> namespace Seasar.Dao.Interceptors
>> >> {
>> >> public class S2DaoInterceptor : AbstractInterceptor
>> >> {
>> >> private IDaoMetaDataFactory daoMetaDataFactory;
>> >>
>> >> public S2DaoInterceptor(IDaoMetaDataFactory daoMetaDataFactory)
>> >> {
>> >> this.daoMetaDataFactory = daoMetaDataFactory;
>> >> }
>> >>
>> >> public override object
>> >> Invoke(Seasar.Framework.Aop.IMethodInvocation
>> >> invocation)
>> >> {
>> >> MethodBase method = invocation.Method;
>> >> if(!method.IsAbstract) return invocation.Proceed();
>> >> Type targetType =
>> >> GetComponentDef(invocation).ComponentType;
>> >> IDaoMetaData dmd =
>> >> daoMetaDataFactory.GetDaoMetaData(targetType);
>> >> ISqlCommand cmd = dmd.GetSqlCommand(method.Name);
>> >> ⇒ object ret = cmd.Execute(invocation.Arguments);
>> >>
>> >> Type retType = ((MethodInfo) method).ReturnType;
>> >> ret = ConversionUtil.ConvertTargetType(ret, retType);
>> >> return ret;
>> >> }
>> >>
>> >> }
>> >> }
>> >>
>> >> 「⇒」の部分の ret がNULLになっており、結果戻り値がZeroとなっております。
>> >>
>> >>
>> >> なにか指定がたりないのでしょうか?
>> >> 使用しているS2Daoのバージョンは「s2dao.net-1.0.4」です。
>> >>
>> >> ご多忙中大変恐縮に存じますが、よろしくお願いします。
>> >>
>> >>
>> >>
>> >>
>> >>
>> >> ----- Original Message -----
>> >> From: "Kazuya Sugimoto" <[E-MAIL ADDRESS DELETED]>
>> >> To: <[E-MAIL ADDRESS DELETED]>
>> >> Sent: Tuesday, July 24, 2007 5:32 PM
>> >> Subject: [seasar-dotnet:551] Re:S2DaoでSQLファイルを使用した場合の更新件数の取得方法について
>> >>
>> >>
>> >> > 杉本です。
>> >> >
>> >> > 清末さん、こんにちは。
>> >> >
>> >> > Java版と同様に戻り値で取得することが出来ます。
>> >> >
>> >> >
>> >> >
>> >> > 07/07/24 に KIYOSUE Minoru さんは書きました:
>> >> >> 度重なる質問で大変恐縮に存じます、清末です。
>> >> >>
>> >> >> 順調にDIを進めている最中なんですが、S2DaoでSQLファイルを使用した場合に
>> >> >> 更新件数の取得が可能か知りたくてメールいたしました。
>> >> >>
>> >> >> Java版のS2Daoでは、以下のようにDaoのメソッドの戻りをIntegerにすると件数
>> >> >>
>> >> >> が取得できますが.Net版でも同様に行えるのでしょうか、ご教授お願い申し上
>> >> >> げます。
>> >> >>
>> >> >> public int update(Employee employee);
>> >> >>
>> >> >>
>> >> >>
>> >> >> _______________________________________________
>> >> >> seasar-dotnet mailing list
>> >> >> [E-MAIL ADDRESS DELETED]
>> >> >> https://ml.seasar.org/mailman/listinfo/seasar-dotnet
>> >> >>
>> >> >
>> >> >
>> >> > --
>> >> > Kazuya Sugimoto
>> >> > Microsoft MVP Visual Developer - Solutions Architect
>> >> > http://d.hatena.ne.jp/sugimotokazuya/
>> >> > _______________________________________________
>> >> > seasar-dotnet mailing list
>> >> > [E-MAIL ADDRESS DELETED]
>> >> > https://ml.seasar.org/mailman/listinfo/seasar-dotnet
>> >> >
>> >>
>> >> _______________________________________________
>> >> seasar-dotnet mailing list
>> >> [E-MAIL ADDRESS DELETED]
>> >> https://ml.seasar.org/mailman/listinfo/seasar-dotnet
>> >>
>> >
>> >
>> > --
>> > Kazuya Sugimoto
>> > Microsoft MVP Visual Developer - Solutions Architect
>> > http://d.hatena.ne.jp/sugimotokazuya/
>> > _______________________________________________
>> > seasar-dotnet mailing list
>> > [E-MAIL ADDRESS DELETED]
>> > https://ml.seasar.org/mailman/listinfo/seasar-dotnet
>> >
>>
>> _______________________________________________
>> seasar-dotnet mailing list
>> [E-MAIL ADDRESS DELETED]
>> https://ml.seasar.org/mailman/listinfo/seasar-dotnet
>>
>
>
> --
> Kazuya Sugimoto
> Microsoft MVP Visual Developer - Solutions Architect
> http://d.hatena.ne.jp/sugimotokazuya/
> _______________________________________________
> seasar-dotnet mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-dotnet
>
seasar-dotnet メーリングリストの案内