Archive for the ‘リスト・ライブラリ’ Category

SharePointの活用をするためには??【TIPS】~疑似ワークフロー~

月曜日, 9 月 7th, 2009

以前のSaruhikoさんのブログのコメントをもとに、以前からネックだったWF(ここでは、厳密に言うとワークフローっぽいこと)を社内に導入しました!

ちなみにこのWFはドキュメント(Wordとか)をそのままWFで利用したい場合です(InfoPathフォームですべて実装するのは手間がかかるので…)

やっていることはSimpleなんですが意外と良い感じです。SharePoint標準提供のWF(SPD含む)で差し戻しっぽいことをしようとすると、承認のワークフローで割り当ての変更依頼を利用するという方法しかなかったのですが、どうもユーザーの操作性が原因で使ってもらってないみたいです(まぁ、インストラクションだしても誰も読まないですしね・・・)

で、どんなのを実装したのかというと下記の感じです。あくまでイメージであり、詳細な設計ではありません

(ひさびさに図を作った気がします)。

これ、ライブラリの移動はSPDのWFを利用し、プロパティの値でどこのライブラリに移動するかを制御してます。

さて、何が嬉しいかというと…

  • エンドユーザはプロパティのステータスを変えるだけでOK(わざわざWFタスク開かなくてOK!、作業負荷が減)
  • エンドユーザーは開くだけで、自分の作成しているコンテンツ、承認するコンテンツが一目で把握できます(期限を設定して、有効期限順にならべているのでさらに良い感じです←どうせタスクで有効期限つけたところで、強制力はないので…ちなみにがんばれが上司が部下の期限を把握するビューも可能で)。
  • ライブラリを分けることで、通知メールをそのまま流用できます。1つのライブラリだと定型のメールしかこないので、WFステータスのどのステータス(承認、申請など)かがわからないのですが、この場合、ライブラリを分けているので、ライブラリの名前(WFのステータス)=メールの件名となり、定型メールでも十分いけます!
  •  Saruhikoさんのブログのコメントを参考させて頂いて、ある程度ライブラリ単位で権限管理ができている!
  • もちろん一部イレギュラーな操作に関しては手動でWFを起動するなどの操作がありますが、そのインストラクションをページに直接表示しているので、問題ナシ!(たまに問合せきますけど…)

と書かせて頂きましたが、これOffice2007があるかないかでかなりユーザーの操作感が変わります。

ただ、一番のポイントはWF製品を買わなくてもある程度イケル!です

(もちろん、法律のしばりとかでWF製品を購入しなくてはいけない場合もあると思いますが…)

ということで、Saruhikoさんありがとうございました!

SharePointの活用をするためには??【機能編】~スケジュール設定~

水曜日, 8 月 26th, 2009

SharePointの活用ネタ(というかTIPSですね)

発行機能を有効にすると、ライブラリでドキュメントの「スケジュールの設定の管理」機能が利用できます。

これをOnにするとスケジュールの開始日とスケジュールの終了日という列が追加されて、設定した値通りに

承認済みのコンテンツが公開・非公開が実施されるというものです(アクセス権ではなく、表示・非表示を制御してるみたいです)。

ちなみに、ドキュメントライブラリやページライブラリだと自動的に列が追加されますが、

そうでないものもサイト内の列を追加して利用可能になります(現実的にはコンテンツタイプだと思いますが)

ちなみに、ステータスの変化は

下書き⇒(発行)⇒承認待ち⇒(承認)⇒承認済み⇒期限付き⇒(公開終了)⇒下書き

自動昇格されるプロパティ

火曜日, 5 月 26th, 2009

メモです。Office ドキュメントをUploadした際にサーバーのプロパティとして自動的に昇格されるプロパティがあります。

Author、Title、Subject、Keywords、Category、Status、および Comments

です。ちょっと知らなかったのですが、InfoPathをドキュメント情報パネルとして利用できるんですね。

確かに、設定を見るとありますね…(もう、全部の機能は試せません…)

下記リンク先でできること大体わかります。

http://msdn.microsoft.com/ja-jp/magazine/cc500578.aspx

まずは標準機能で…

SharePoint Desingerの「アイテムをコピー」アクション

木曜日, 5 月 14th, 2009

編集用ライブラリと公開用ライブラリというものを作成し、編集が終わったら、SPDの「アイテムをコピー」を利用して公開ライブラリにアイテムを移動する(コピー後、元のファイルを削除)という実装をしています。このときに、コピー元のファイルの情報をコピー先のライブラリに持っている条件を確認しました。結論から言うと、

「列の内部名が同じ(最初に列を作成した名前が「内部名」として利用されます。ですので、表示名だけが同じ場合でも内部名が違う場合はNGになります)」

場合は、プロパティの値もコピーされます。サイト内の列を利用した場合は勿論、各ライブラリで作成した列で内部名が同じであればOKです。注意点は以下の2点です。

  • WFを実行したユーザーがアイテムのコピーを実行するアカウントになるので公開先に編集権限が必要になる
  • WFを実行したユーザーが更新者になる(当たり前ですが)

できれば、公開先は全ユーザー閲覧権限にしたいのですが、そうするとコピー自体ができないので…MSDNのサンプルをもとに、リストイベントを利用して権限を自動的に設定する必要があります…とりあえず、そこは無視して実装しています(ログとっているし…)。アイディア求む…

InfoPathデータの移動について

火曜日, 12 月 9th, 2008

今回、トラブルがあったせいでいろいろサイトの復元などをしていたのですが、ある特定のサイトだけサイトテンプレートをコンテンツを含んだ状態で移動する必要がありまして…

で、既存のフォームデータ(*.xml)が参照するフォームテンプレートのパスが以前のパスが登録されていまして・・・さてさてと思っていたら、InfoPathフォームからコンテンツタイプを発行するとライブラリの設定画面で下記のようなこのライブラリへのドキュメントの再リンク というメニューが表示されます。(追記:フォームライブラリに標準で再リンクメニューがありました…)
で、クリックすると以下の画面になります。で、再リンクのチェックボックスをチェックして、選択したドキュメントを再リンクをクリックするとテンプレートのリンクが置き換わります。



最悪、フォームのXMLの参照パスをすべて置き換えようと思っていたので助かりました…フォームが100オーダーであったので…

また、ビューに下記のようなドキュメントの結合というビューも表示されていました。ちょっと試したのですがどう動作するのかの解明はあきらめました…(追記:複数フォームのフィールドのデータを結合する機能でした…)





 

 

リストの値をグラフ化

日曜日, 8 月 31st, 2008

リストの値を利用してグラフを作成したいってことありませんか?Excel Servicesを利用する場合は、リストの値をExcelで取得するという仕組みが必要になってなんだかしんどい感じです。で、実はSharePoint Designer Team BlogにSilverlightを利用したリストの値をグラフ化するという記事がありました。ちなみに以下の感じになります(値とか適当ですので・・・)。

0901-01.jpg

ちなみに、図をクリックすると詳細がわかります。

0901-02.jpg

上の図のコンポーネントはvisifireが出しているsilverlightコンポーネントです。このコンポーネントはHTMLで吐き出された値をJavascriptで加工し、グラフ化するというものになります。ですので、MOSSで利用する際は、データビューを利用して、リストの値をXMLとして吐き出し、そのデータをこのコンポーネントで利用するという形になります。

データを表示するページに、visifire.jsとvisifire.xapを同じディレクトリに配置し、その後、データビューの下記のコードを(この時点では、データビューにグラフ化したいリストをデータソースとして設定します。

<xsl:template match="/">

<xsl:call-template name="dvt_1"/>

</xsl:template>

以下のコードに置き換えます(下記例は、TitleとValueというプロパティを利用するものです)。
<xsl:template match="/">   

<!-- Load the chart tools -->   

<script type="text/javascript" src="Visifire.js"></script>   

<!-- Create the JavaScript variable that holds the data to plot. -->   

<!-- Note the xsl:for-each statement which loops over all the    -->

<!-- list items and creates the necessary DataPoint entries      -->

<!-- in the Chart XML.                                           -->

<xsl:text disable-output-escaping="yes"><

![CDATA[<script type="text/javascript">var xmlString = ' <vc:Chart xmlns:vc="clr-namespace:Visifire.Charts;assembly=Visifire.Charts"' + ' Theme="Theme1" AnimationType="Type4" >' + ' <vc:Title Text="Visifire Pie Chart"/>'+' <vc:DataSeries RenderAs="Pie" ShowInLegend="False" Bevel="False">']]>

</xsl:text>

<xsl:for-each select="/dsQueryResponse/Rows/Row">

<xsl:text disable-output-escaping="yes">

<![CDATA[  + ' <vc:DataPoint AxisLabel="]]></xsl:text>

<xsl:value-of select="./@Title" />

<xsl:text disable-output-escaping="yes">

<![CDATA[" YValue="]]></xsl:text>

<xsl:value-of select="@Value" />

<xsl:text disable-output-escaping="yes">

<![CDATA["/>']]></xsl:text></xsl:for-each>

<xsl:text disable-output-escaping="yes">

<![CDATA[ + ' </vc:DataSeries>' + ' </vc:Chart>';    </script> ]]></xsl:text>

<!-- Create the div to hold the chart and then run   -->

<!-- the JavaScript code to actually show the chart. -->

<div id="myChart" style="width:500px;height:300px;">

<script language="javascript" type="text/javascript">

var vChart2 = new Visifire("Visifire.xap");

vChart2.setDataXml(xmlString);

vChart2.render("myChart");

</script></div></xsl:template>
で、完成です。

ちなみに、visifireにはいろいろなテンプレートが用意されているので、受け渡すデータさえ、きちんと設定すれば棒グラフ折れ線などが利用できます。

マイナ・メジャバージョンでの最大値

水曜日, 8 月 6th, 2008

超小ネタです。

リスト・ライブラリのバージョン数のさいだいちは50,000 です。

以上

追記

数値入力時のバリデーションにより、50000という数字に設定されていましたが、SQLのテーブルをみるとマイナは512、メジャはINT32で定義されていました。

ディスカッション掲示板の移動方法

木曜日, 7 月 24th, 2008

小ネタです。

リスト単位の移動・コピーをしようとすると、SPDの個人用パッケージを利用するか、リストテンプレートという手段を考えると思いますが、容量が多い場合はSPDだと動作は不安定だし、リストテンプレートも使えなかったりします(拡張すればOKですが)。で、ディスカッション掲示板のみに利用できる方法がありました。Outlook 2007で 移動元のディスカッション掲示板とリンクさせておき、移動先のディスカッション掲示板とリンクします。そして、あとはDrug & DropでOK!。ただし、基本的には移動(移動元からなくなる)になってしまうので、一度PSTとして保存してやるとOKです。

リスト入力フォームのカスタマイズ方法

日曜日, 6 月 29th, 2008

0629-02.jpg0629-01.jpg

SharePoint Designerのデータビューを利用すると以下のページをカスタマイズをすることができます。

リスト:AllItems.aspx, DispForm.aspx,NewForm.aspx,EditForm.aspx

ライブラリ:AllItems.aspx, Upload.aspx,EditForm.aspx

以下、お客様リストというリストのNewForm.aspxをカスタマイズする方法を説明します。例えば、以下のような新規アイテム追加フォームであるNewForm.aspxをカスタマイズしてみます。

 
まずは、NewForm.aspxの代わりになるページを作成します。SharePointで利用するページはマスタページを参照している必要があるので、以下のようにフォルダの一覧から該当マスタページを選択し、右クリックから、マスタページから新規作成を選択します。

 
そうすると、以下のようなPlaceHolderをもつページができあがります。既定では、PlaceHolderは編集できないので、「>」からカスタムコンテンツの作成をクリックします。そうすると編集できるようになります。

 0629-03.jpg
カーソルをPlaceHolderの中を選択している状態で、メニューのデータビューデータソースの管理データソースライブラリからお客様リストを選択し、下図のようにデータの表示を選択します。

 0629-04.jpg
そうすると、下図のようなデータソースの詳細という画面に変わり、NewForm.aspxに存在していたプロパティを選択した状態で、選択したフィールドの挿入新しいアイテムのフォームを選択します。

 0629-05.jpg
そうすると、下図のような画面になるので、ここで、AddNewItem.aspxという名前を付けて、お客様リストのFormsフォルダの下に保存します。

 0629-06.jpg
そして、フォルダ一覧からお客様リストのプロパティを選択します。そして、プロパティ関連ファイルタブ新しいアイテムのフォームの参照先をAddNewItem.aspxに設定します。

 0629-07.jpg
この時点で、リストの新規コマンドをクリックすると、AddNewItem.aspxが参照されます。あとは、AddNewItem.aspxに色付けたり、並び順を変えたりすると以下のような入力フォームにカスタマイズできます!

 0629-08.jpg

IRMライブラリでダウンロードしたファイルが開けない

日曜日, 6 月 22nd, 2008

Office クライアントではIRMを設定することができるのですが、IRMライブラリからダウンロードしたファイルがどのユーザでも全く開けなくなるという現象に遭遇したことがあります。

その際の回避策は…

1.「iisreset /stop」でIISのサービスを停止する
2. 下記のフォルダにアクセスし、配下にあるフォルダすべてを削除する
3. 「iisreset /strat」でIISのサービスを開始する

でとりあえずIRMライブラリが正常に動くようになりました。
原因はわからずじまいです…


ホットワード ライブラリ background border SharePoint
割引クーポンまとめ情報 - クー割