none
webサービス[Lists.CheckOutFileメソッド]について RRS feed

  • 質問

  • はじめまして、現在、既存システムからMOSSで管理しているドキュメント(OFFICEドキュメント)の操作を

    行うためにどのような技術が必要か調査中なのですが、用意されているwebサービスを利用するため

    サンプルPGを作成していて行き詰ってしまいました。

     

    Lists.GetListItemsを利用してドキュメントの一覧を取得するとこまではSDKにある例で実行できたのですが、

    一覧中の特定のドキュメントを選択し、チェックアウトを行うことができません。

    チェックアウトを行うために、以下の処理を行っています。

     

    使用メソッド:Lists.CheckOutFile(pageUrl, chekuoutToLocal, lastmodified)

    pageUrl : http://Server_Name/  + GetListItemsで取得した際の対象アイテムの『ows_FileRef』より取得した値を設定

    chekuoutToLocal : "true"

    lastmodified : GetListItemsで取得した際の対象アイテムの『ows_Last_x0020_Modified』より日時を取得し、DateTime.ToString("R")で変換した値を設定

     

    メソッド実行直前にCredentialsには認証情報が設定されていることを確認しています。また今回使用しているユーザは

    MOSS上の管理者として登録されているユーザを使用しています。

     

    上記設定を行った後にLists.CheckOutFileを実行するとメソッドの戻り値がfalseとなってしまいチェックアウトが上手く

    行きません。

    予定では対象ドキュメントをMOSS上の一覧で見るとメソッド実行後はチェックアウト状態になるというのを期待していたのですが

    上手くいきませんでした。

     

    そもそもWebサービスを使用してこのような事を実現できるものなのか、上記手順で良いのか?ご存知の方がいらっしゃいましたら

    ご教授願いたく質問させていただきました。

    できましたら、MOSSのWEBサービスの具体的な使用例など参考になりそうなサイト等教えていただけると助かります。

     

    使用OS:Windows2003 Enterprise Edition SP2

    MOSS:version=12.0.6219.1000

    上記処理の実行はVisual Studio2008のデバック実行で行いました。

     

    質問の仕方も良く解らず投稿してしまいました。不備な点等ございましたらご指摘下さい。

    よろしくお願いいたします。

     

     

    2008年6月16日 8:57

回答

  • こんにちは。

    Lists.CheckOutFileメソッドの引数は正しい値になっているか確認されましたか?

    WSS3SDKのLists.CheckOutFileメソッドの説明では、lastmodifiedが対象ファイルの更新日時と

    合っていないと戻り値がfalseになると書かれています。

    デバッグ実行で引数の値を確認してみてください。

    また引数lastmodifiedは省略可能ですので、チェックアウトできるか確認するだけなら省略してもよいかと思います。

     

    Lists.GetListItemsでLists.CheckOutFileに必要な引数を取得するという構成は特に問題ないと思いますよ。

    引数が正しい値で渡せればチェックアウトされるはずです。

    私はLists.CheckOutFileメソッドにリテラルの引数を指定して実行したところちゃんとチェックアウトできました。

     

    MOSSのWebサービスは情報が少ないですが、例えば”Lists.GetListItems”で検索するといくつかサイトが出てきます。

    英語サイトがほとんどですが、中には日本語サイトもありますので検索してみてください。

    2008年7月4日 9:23

すべての返信

  • こんにちは。

    Lists.CheckOutFileメソッドの引数は正しい値になっているか確認されましたか?

    WSS3SDKのLists.CheckOutFileメソッドの説明では、lastmodifiedが対象ファイルの更新日時と

    合っていないと戻り値がfalseになると書かれています。

    デバッグ実行で引数の値を確認してみてください。

    また引数lastmodifiedは省略可能ですので、チェックアウトできるか確認するだけなら省略してもよいかと思います。

     

    Lists.GetListItemsでLists.CheckOutFileに必要な引数を取得するという構成は特に問題ないと思いますよ。

    引数が正しい値で渡せればチェックアウトされるはずです。

    私はLists.CheckOutFileメソッドにリテラルの引数を指定して実行したところちゃんとチェックアウトできました。

     

    MOSSのWebサービスは情報が少ないですが、例えば”Lists.GetListItems”で検索するといくつかサイトが出てきます。

    英語サイトがほとんどですが、中には日本語サイトもありますので検索してみてください。

    2008年7月4日 9:23
  • こんにちは。

    フォーラムオペレーターの鈴木裕子です

     

    clgomi さんのその後の情報が気になるところですが、

    kenkenzi さんがご自身で確認された貴重な情報を、ほかの方にも活用していただきたく、

    勝手ながら私のほうで回答チェックをつけさせていただきました。

    clgomi さんはチェックの解除もできますので、もし不適切でしたら修正をお願いします。

     

    回答チェックはスレッドの終了を意味するものではありませんので、

    引き続き情報がありましたら、ぜひご投稿くださいね!

     

    これからもForumをご活用ください。

    それでは。

    2008年8月11日 6:51
    モデレータ