月別アーカイブ: 12 月 2007

私の息子は Gamespot をハッキング

だから, この朝, 私の息子が年齢 13 制限ヘイロー参照して判断します。 3 ビデオ Gamespot. 私は雪かき外, ヘルプはまたは妨げることがないので. 必要は、発明の母 … 彼は、交響詩篇エウレカセブン! 瞬間. Gamespot は彼を入力する彼を望んでいるにもかかわらず、彼はそれを実現します。 リアル 出生年月日, 彼は実際に入力することができます。 任意 彼が望んでいる出生年月日. 一度彼は気付いた, 彼は彼自身のビデオを見るには十分に古い作られました。.

私はこれについてどう感じているのかよくわかりません🙂

日曜日面白い: “それは印刷のゴミ”

私の大学からの最初の仕事で 1991, 私は、製造会社のために働くにラッキーだった 13 場所, ニュージャージー州でその企業の本社を除く. 会社は新しい ERP システムのロールアウト時にだけに参加しました. 全体で約 10 人の小規模な IT 部門ができました, 2 人は旅行しなかった. IBM システムの交換関係のプロジェクトの一部 36 HP のハードウェアと HPUX ボックス. 誰もがシステムにアクセスするのに緑のチューブを使用.

プロジェクト ロールに沿って、新しい同僚とボルチモアに下された午前, ジェフ. 私たちの仕事は、Unix のボックスの電源を入れます, オペレーティング システムを実行していたことを確認します。, ERP システムをインストールします。, ERP を構成します。, ERP の人々 を訓練し、スポットでの人々 のためのカスタム作業を行う. (これは、夢の仕事だった。, 特に大学からまっすぐ出てくる). 私たちは本当に地面を離れて得ることができる前に, すべての緑のチューブをアンパックする必要があります。, デスクの上に置くし、それらを配線. 最良の部分は自分自身に RJ11 コネクタを配置しなければならないことと.

何らかの理由を理解していなかったし、当時について尋ねるために決して実際にだと思った, 一緒に来るし、工場全体のケーブルを実行いくつか引き締まる会社を持っていた, コネクタにそれらがなかったが、. だから, "パッチ箱があった" 「コンピューター室でラベル付けされていないケーブルの数十人と" これらは建物の様々 な場所に建物の周り蛇行と.

我々 は週末にわたってそれを通して我々 の方法を働いた, 各ワイヤのテスト, コネクタを置く (ストレート対をされたことを確認. 交差), 正しいされた緑管およびプリンターのビット設定を確保します。, ワイヤのラベル付け, その「getty をを確かめる" 各ポートとおそらく千他のものは私がそれ以来、抑制した正しく走っていた. それはすべてが非常にうまく一緒に来た.

しかし, 我々 は理解できなかったことを 1 つの重要なケーブルがあった. ニュージャージー州の倉庫の場所と関係があったボルティモアの植物. その場所から出荷されたボルティモアのいくつかの注文. HPUX ボックスに接続しなければ 2 つの線があった: 緑色の管とプリンター. 緑色の管は簡単だった, しかし、プリンターは 3 週間の悪夢に変わった.

あなたはそれを知らない場合, またはそれを抑制しています。, このように緑のチューブとプリンターを扱う, 様々 なピンを設定することによって対処する様々 なオプションがあります。. 8-ビット, 7-ビット, パリティ (偶数/奇数/なし), おそらく他の人. これらの設定のいずれかが間違って取得する場合, チューブまたはプリンターはまだものを示しています, それは合計ちんぷんかんぷんになります, 間に多くの認識可能なものとちんぷんかんぷんであろうか. もちろんです, これらのピンは難しいを参照してくださいし、小型のマイナス ドライバーを使用して設定する必要があります。. 標準的なことはありません。.

ニュージャージー州の男と、多数の迅速な呼び出し最初を設定します。 (おそらくこの日に私たちを呪う人白髪交じりコンピューター嫌い). 緑色の管はかなり迅速に作業をしました, 我々 は動作するようにプリンターを得ることができなかったが、. 「印刷こみ」を続けた. RJ11 コネクタの新規作成, クロスとストレートを切り替える. 我々 はポートを削除して、Unix で再作成されます。. 我々 は彼が私たちにプリンターのピン構成を説明することの困難なタスクを経てください。, 彼は正しくそれをやっていた場合実際に確認しません。.

ライブに行く時間です。, ボルティモアですべてのハミングします。, 動作するニュージャージー州呪われたプリンターを得ることができません。! 私たちはニュージャージー州まで戻る人のプリンターで動作するように運転を除いてすべての可能性を使い果たしてください。. すべてが運転を避けるために, 私達最終的に頼む私達をファックスする「ゴミ」のとき、彼が得ている何, たぶんされるいくつかの手掛かり何をやっている私たちを教えてくれるそのゴミで期待して間違っています。.

Fax を得たとき, 我々 はすぐに何が間違っていた知っていた. 参照してください。, 我々 は正しくプリンターを構成していたかどうかのテストの手法」lp を発行することだった" このようなコマンド:

lp/etc/passwd

基本的には, unix パスワード ファイルを出力し. それが常に存在し、箱から出して, 常にちょうど 1 つのページ. 標準的な Unix パスワード ファイルのような:

スミス:*:100:100:8A 74(オフィス):/ホーム/スミス:/usr/bin/shguest:*:200:0::/ホーム/ゲスト:/usr/bin/sh  

私たちがプリント アウトしているパスワード ファイルを繰り返し数週間、それは正しく印刷されました。. ただし, エンドユーザーに, それは「印刷こみ」.

</終了>

まだ別のネットワーク資格情報マルチ チャレンジ問題と解決策

私のクライアントは最近からの魔法のデバイスをインストール ジュニパー どうやら、古い Cisco ネットワーク ロード バランサーを置き換えること (NLB). 同じくらいの時間で, 我々 はインストールされて、 ワークフローの問題を解決する修正プログラム.

一日か二日後, 我々 が共有サービス プロバイダーにアクセスするときに問題が見つかりました (SSP). 我々 はそれを得ることができます。, 我々 のユーザー ID とパスワードは各ページで何度も挑戦するが、. これは主要なポータル アプリケーションで実現しなかった, また、サーバーの全体管理. 当然のことながら, 我々 は 2 つを知っていません。 (ジュニパーまたは修正プログラム) 問題になるだろう, しかし私は強く修正プログラムを疑った, 我々 がインストールされていないそれかなり右を考え出す.

ジュニパーが圧縮設定のいくつかの種類を持っていたことが判明. いずれか、 ローブの数字 以上でネットワーク グループになって設定. それは私たちの問題を解決.

これは初めての圧縮は、私にとって SharePoint 問題の根本的な原因をされていることではないです。. IIS 圧縮悪影響ドット ネット工場で善良な人々 からサードパーティのツール IE 用 6 ブラウザー (IE 7 ブラウザーの難しさなしで働いた).

だから, "圧縮を追加します。" 危険リストに.

</終了>

信用します。: http://www.elfwood.com/art/s/h/sherry/death_colour.jpg.html

Technorati のタグ: ,

ブログのプラットフォームを変更することを考えてください。

私の"ブログのキャリアをスタート" 私に良いされているマイクロソフトのプラットフォームを使用して. それは簡単に作成するには, 良いオプションと「スペース」管理ためのウィジェット, まともなウェブ ストレージなど.

ただし, 私は実際にはほとんどない計画 MS ソリューションに落ちた. 私はどことどこを評価する私のための単独で呼び出し, ブログのプラットフォームの観点から. また気に右今に対して-à-に対して Windows Live スペース 2 つの重要な制限事項があります。.

最初, 非常によい統計量を得ることができません。. 統計があるが、詳細は頻繁に切り捨てられ、分析のあらゆる種類のことができる方法で表示されません。. そこの並べ替えまたはエクスポート機能がないです。. 私の方が情報の種類に基づいて多くのブログのアイデアを得る (特に検索に失敗するか) 私のブログを検索するとき. それは非常にそのための生活スペースを使用するハード ディスク.

2 番目, 「収益化するメカニズムがないようです。" windows 生きているスペースのブログ. 実際, MS の広告を取り除くために (そこから私はない利益を得る), マイクロソフトを実際に支払う必要. (少なくとも, それはどのように私はそれを理解します。; 私がこれに決定的な答えとそれのような質問を得ることができなかった).

今、私は確立されたパターンやブログの習慣のセットを持っています。, 私は他のオプションを評価したいです。. 私はいくつかの研究をやったし、選択肢が多い, ご興味のある他の人が, 特に、SharePoint コミュニティその他 (ブロガーや読者として), 使用したいです。.

この問題関心は、あなたの意見や経験を共有して喜んでいるがある場合, コメントを残すか、直接私にメールしてください。.

おかげで!

<終了/>

Technorati のタグ:

SharePoint デザイナー メール送信 ???? メールで

時折フォーラム ユーザーを求める: なぜ SharePoint デザイナーをしてください。 ???? 私の電子メールには、フィールド値の代わりに?

これが起こる理由の 1 つであるに、参照変数が null です。.

「現在のアイテムからフィールドを参照しようとしているのでこれが起こることができます" しかし、ユーザーは、決してそのフォーム フィールドに値を入力.

<終了/>

Technorati のタグ:

比較 / SharePoint Designer ワークフローで空白の日付をテストします。

シナリオ: SharePoint Designer ワークフローで, 日付フィールドが空白のかどうかを決定する必要があります。.

問題: SPD は日付以外の日付を比較するための直接法を行いません. このような条件を作成することはできません。: 「場合 [フィールド] 空白に等しい」.

ソリューション: 日付を文字列に変換します。. 文字列比較を使用して、日付が空白かどうか.

スクリーン ショット:

次のスクリーン ショットは、どのようにこれを表示します。. このシナリオでは, フィールドのアイテム, 「環境許可:最初の許可通知の日」, 送信とワークフロー発生応答.

イメージ

イメージ

メモ:

私がこれを試みたとき, それが動作することを学ぶに驚いた. SharePoint Designer が文字列割り当てを許可可能性があります心配していた (変数:StringReminderDateDate) しかし、それはそれをすることでした。.

私もそのことを心配, 値が null といずれか、WF ランタイムで爆破か多分地球の温度を上げる 1/2 学位, しかし、これらの懸念が設立されました。.

</終了>

Technorati のタグ:

バーはまだかなり高い MOSS を拡張するには

今日, 私のクライアントで作業され、コンテンツのクエリ web パーツを変更し、コンテンツ タイプから情報の追加ビットを表示する方法を記述します。.

"最初, そのデータ ソースに接続する CQWP を構成します。, その後、ワークステーションにエクスポートします。, 変更します。 <CommonViewFields>, アップロード, オリジナルを削除し、今では ' 準備万端’ その他の列を表示するには. 次, SharePoint デザイナーを開く, サイト コレクションのルートに移動し、ItemStyle.xsl を探します. 有用な出発点としてテンプレートの 1 つをコピーします。. CQWP を変更この新しいテンプレートの使用. 最後に, 新しいフィールドをレンダリングするテンプレートを変更します。! (結果それを取り戻すして他のユーザーを確認することができることを忘れないでください。)."

それは私にはまったく明らかです。 (私たちの SharePoint 開発者の種類のほとんど) 何が起こっているとどのようにそれはとてもいい, 本当に, CQWP のデータ取得の側面がデータ表示に関する側面から独立したのもそうであります。. しかし, 説明するは簡単ではないです。, それは?

<終了/>

コンテンツ クエリ Web パーツの結果をグリッドに表示します。 / テーブル

概要と目標

ボックスのうち, MOSS’ コンテンツのクエリ Web パーツ (CQWP) その結果、一覧形式で表示します。, 検索結果に同じような. また、グリッド形式で結果を表示することが可能です。 (すなわち. HTML テーブルの形式). グリッドのフォーマットはいくつかの状況で優れています。. この記事でその効果を達成するために方法を記述します。.

ビジネス シナリオ

私はモスをエンタープライズ全体に展開のクライアントで働いています。. プロジェクト階層内の最初のクラスの市民は、独自の最上位レベルのサイトを持っている、我々 は彼らの分類を設計しています。. プロジェクト マネージャーは、プロジェクトのサマリー情報の単一リストを維持します。, タイトルなど, 予算, 予想される完了日, 残りの予算と他の集計タイプのフィールド. 「シングルトンで" 私は必ず 1 つだけ項目が含まれ、SharePoint のカスタム リストを意味します。. 簡単に言えば, それはこのように見える:

イメージ

技術的なアプローチは多くの説明と同じ ここで (http://paulgalvin.spaces.live.com/blog/cns!1CC1EDB3DAA9B8AA!447.entry). CQWP は、XSL 変換を使用してレンダリングするブラウザーの HTML を出力するには.

私は常に XSL は悪夢のようなので、XSL に飛び込む前に結果を思い描く. ここでは私の目的の結果:

イメージ

このような HTML は、その結果を生成します。:

<html>
 <>
 <センター>
 <テーブル 境界線= 1>

<!-- ラベル->
 <tr bgcolor青 =>
 <td><フォント = ホワイト><b>プロジェクト名</b></フォント></td>
 <td 位置合わせ= 右><フォント = ホワイト><b>完全な日付</b></フォント></td>
 <td 位置合わせ= 右><フォント = ホワイト><b>予算</b></フォント></td>
 <td 位置合わせ= 右><フォント = ホワイト><b>実際の経費</b></フォント></td>
 <td><フォント = ホワイト><b>全体的な状態</b></フォント></td>
 </tr>

<tr>
 <td>再コンピューター室.</td>
 <td 位置合わせ= 右>02/01/08</td>
 <td 位置合わせ= 右>22,500.00</td>
 <td 位置合わせ= 右>19,000.00</td>
 <td>進行中</td>
 </tr>

<tr>
 <td>SQL アップグレードのサーバをプロビジョニング</td>
 <td 位置合わせ= 右>04/01/08</td>
 <td 位置合わせ= 右>7,500.00</td>
 <td 位置合わせ= 右>0.00</td>
 <td>計画</td>
 </tr>

</テーブル>
 </センター>
 </>
</html>

アプローチ

グリッドを作成する手順します。:

  1. グリッドの各コンポーネントを識別します。 (行/列).
  2. 定義し、必要なサイト内の列を作成します。.
  3. サブ プロジェクトを単一のリストのサイトを作成します。.
  4. Web ページに、CQWP を追加し、あなたのリストを検索するように構成.
  5. 追加の列を収集するために、CQWP の XML を変更します。.
  6. テーブルを生成する XSL を変更します。.

数は 6 に集中するつもり. 番号 1 から 4 は、まっすぐ進むと CQWP ユーザーが既に行われている何か. 5 番は MSDN からこの徹底的なスクリーン ショット満載記事を含む他の人が十分に文書化されています。 ここで (http://msdn2.microsoft.com/en-us/library/bb897399.aspx) ヘザー ソロモンのブログ ここで (http://www.heathersolomon.com/blog/articles/CustomItemStyle.aspx).

ナットとボルト

開始し、ステップ 1 から 5 は、MSDN のドキュメントとヘザー ソロモンの記事に従って.

この時点で, ページに、CQWP を追加したし、するが、 <CommonViewFields> 必要に応じて構成.

通常の手順に従って, これらの中間結果を得る:

1. コンテンツ タイプを作成します。, そのコンテンツ タイプの 2 つのサイト テンプレートのカスタム リスト. ここでは、コンテンツのタイプ:

イメージ

ここでは、サイトの構造:

イメージ

2. 私のプロジェクトのサブサイトとシングルトン プロジェクト サマリー リストを作成した後、CQWP を追加します。:

イメージ

3. 経由するすべての追加情報を追加します <CommonViewFields>:

        <プロパティ 名前="CommonViewFields" タイプ="文字列">Project_x0020_Name;Project_x0020_Expenses;Project_x0020_Status;Project_x0020_Start_x0020_Date;Project_x0020_End_x0020_Date;Project_x0020_Budget</プロパティ>

1 つの行またはそれのすべてのプロパティ フィールドを維持しなければならなかったことに注意が働かないでしょう (CQWP は、クエリ結果項目をないこと私に言うだろう).

4. この時点で, MSDN の記事「を超えて移動する準備整いましたとヘザー ソロモンの記事を上にフリップ. 彼女の手順をステップ付近から #5 作成をカスタマイズする / ItemStyle.xsl の実体化バージョン. ヘザーを忠告します。, ステップ アップ 11 これらの中間結果を得る:

4.1: 私 XSL テンプレートの名前をとおり:

<xsl:テンプレート名 ="グリッド" 一致"の行を =[@Style =「グリッド」]" モード =「itemstyle」>

私も若干示唆彼女を変更します。 <xsl:それぞれ …> 追加することによって、 <br/> クリーナーのリストを提供するタグ:

    <xsl:それぞれ 選択="@*">
      P:<xsl:値の 選択="名前()" /><br/>
    </xsl:それぞれ>

4.2: Web パーツを変更します。, 外観に移動し、私の"グリッドを選択します" スタイル:

イメージ

変更を適用して、ここでは、結果:

イメージ

我々 のフィールドを上から見ることができます。 (プロジェクト名, 経費, ステータス, など) 我々 は、HTML を出力するときに使用するの. それだけでなく, XSL のこれらの列を参照する必要がありますに使用する名前がわかりますが、. たとえば, "Project_x005F_x0020_Name"としてプロジェクトの進捗状況を参照します。.

この時点で, ヘザーのブログから、これらの巨人の肩から出発します。, 自分自身の小さなビットを追加します。.

ContentQueryMain.xsl

メモ: ItemStyle.xsl だけでなく ContentQueryMain.xsl に変更を加えるとき, 変更の効果を確認する前にそれらのファイルを再度チェックインする必要があります。.

グリッド作る目的のため, モスは、CQWP から見る結果を生成する 2 つの XSL ファイルを使用します。. 出力の前のビットを生成するには, ItemStyle.xsl を修正しました. モスは実際に別の XSL ファイルを使用します。, その HTML を生成する ItemStyle.xsl と共にに ContentQueryMain.xsl. その名の通り, ContentQueryMain.xsl は、"メインです。" XSL 変換の全体的な流れを制御します。. 見つかったすべての項目を反復処理し、ItemStyle.xsl 1 つずつテンプレートに渡します. ItemStyle.xsl オープンを生成するを変更します <テーブル> 最初の行のデータおよび閉鎖の出力前にタグ <テーブル> 最後の行を出力後のタグ. これを達成するために, ContentQueryMain.xsl が変更され、"グリッドに 2 つのパラメーターを渡す" ItemStyle.xsl でテンプレート, "最後の行" 「現在の行」. ItemStyle.xsl はこれらを使用して、条件付きで必要なタグを生成するには.

ヘザー ソロモンのテクニックを使用してください。, 我々 は ContentQueryMain.xsl を探します. ItemStyle.xsl と同じ場所にあります。. このスクリーン ショットを助ける必要があります。:

イメージ

次の変更を加える必要があります。:

  • Xsl テンプレートを変更します。, "CallItemTemplate" 実際に ItemStyle.xsl でグリッド テンプレートを呼び出す. それはカバーの開閉を条件付きで生成する必要があるデータがあるのでグリッド テンプレートに 2 つのパラメーターを渡します <テーブル> タグ.
  • "CallItemTemplate を呼び出す ContentQueryMain.xsl の別のビットを変更します。" それを渡す"LastRow" パラメーターを LastRow 私たちグリッド テンプレートに渡される可能性がありますので.

"OuterTemplate.CallItemTemplate という名前のテンプレートを見つける" 文字列で識別されます。:

  <xsl:テンプレート 名前="OuterTemplate.CallItemTemplate">

次のように全体のテンプレートを置き換える:

  <xsl:テンプレート 名前="OuterTemplate.CallItemTemplate">
    <xsl:param 名前="CurPosition" />

    <!--
      LastRow」を追加します。" パラメーター.
      我々 だけがあるとき使用で項目スタイル パス「グリッド」.
    -->
    <xsl:param 名前="LastRow" />

    <xsl:選択してください。>
      <xsl:とき テスト="@Style = 'NewsRollUpItem'">
        <xsl:テンプレートを適用 選択="." モード="itemstyle">
          <xsl:param と 名前="EditMode" 選択="$cbq_iseditmode" />
        </xsl:テンプレートを適用>
      </xsl:とき>
      <xsl:とき テスト="@Style = 'NewsBigItem'">
        <xsl:テンプレートを適用 選択="." モード="itemstyle">
          <xsl:param と 名前="CurPos" 選択="$CurPosition" />
        </xsl:テンプレートを適用>
      </xsl:とき>
      <xsl:とき テスト="@Style = 'NewsCategoryItem'">
        <xsl:テンプレートを適用 選択="." モード="itemstyle">
          <xsl:param と 名前="CurPos" 選択="$CurPosition" />
        </xsl:テンプレートを適用>
      </xsl:とき>

      <!--
              現在の位置と lastrow グリッド itemstyle.xsl テンプレートに渡す.
              ItemStyle.xsl が使用オープンを放出して終了 <テーブル> タグ.
      -->
      <xsl:とき テスト="@Style = 'グリッド'">
        <xsl:テンプレートを適用 選択="." モード="itemstyle">
          <xsl:param と 名前="CurPos" 選択="$CurPosition" />
          <xsl:param と 名前="最後" 選択="$LastRow" />
        </xsl:テンプレートを適用>
      </xsl:とき>

      <xsl:それ以外の場合>
        <xsl:テンプレートを適用 選択="." モード="itemstyle">
        </xsl:テンプレートを適用>
      </xsl:それ以外の場合>
    </xsl:選択してください。>
  </xsl:テンプレート>

コメント、変更の目的を説明します。.

もちろんです, "OuterTemplate.CallItemTemplate" 自体は別のテンプレートから呼び出される. このテキスト文字列を検索してそのテンプレートを特定します。:

<xsl:テンプレート 名前="OuterTemplate.Body">

OuterTemplate.Body の指示をスクロールし、LastRow パラメーターを次のように挿入 (斜体のコメントとして表示されます。):

<xsl:呼び出しテンプレート 名前="OuterTemplate.CallItemTemplate">
  <xsl:param と 名前="CurPosition" 選択="$CurPosition" />
  <!-- LastRow パラメーターを挿入します。. -->
  <xsl:param と 名前="LastRow" 選択="$LastRow"/>
</xsl:呼び出しテンプレート>

これすべての後, 我々 は最終的に私たち ItemStyle.xsl を出すことができるように正しくセットアップされてものを持っています。 <テーブル> 適切な場所にタグ.

ItemStyle.Xsl

メモ: もう一度, これらの変更の効果を確認するように変更を行った後 ItemStyle.xsl でチェックします。.

ここに 2 つのタスクがあります。:

  • グリッド テンプレート全体を置き換える. コピー/ペーストを下からすることができます。.
  • "Formatcurrency できるようにするテンプレート定義の外部のいくつかのちんぷんかんぷんの追加します。" テンプレートを使用. (XSL に関する微妙なハンドルを持って私はことを伝えることができます。).

最初, ItemStyle.xsl の上部にあります。, この行を追加します:

  <!-- 米国を表示させることができますいくつかマンボ ジャンボ. 通貨. -->
  <xsl:10 進形式 名前="スタッフ" ="D" />

  <xsl:テンプレート 名前="既定" 一致="*" モード="itemstyle">

私は追加直接前に注意してください、 <xsl:テンプレート名 ="デフォルト" …> 定義.

次, グリッド テンプレートに戻る. グリッド テンプレート全体を以下のコードに置き換えます. それは徹底的にコメントします。, 私にメールや質問がありましたら、私のブログにコメントを残すことを躊躇しないが、.

  <xsl:テンプレート 名前="グリッド" 一致="行[@Style = 'グリッド']" モード="itemstyle">

    <!--
      ContentMain.xsl は、CurPos と最後に渡します.
      我々 は条件付きでオープンを出力するこれらを使用しての開閉 <テーブル> タグ.
    -->
    <xsl:param 名前="CurPos" />
    <xsl:param 名前="最後" />

    <!-- 次の変数が標準 ItemStyle.xsl から変更されていません -->
    <xsl:変数 名前="SafeImageUrl">
      <xsl:呼び出しテンプレート 名前="OuterTemplate.GetSafeStaticUrl">
        <xsl:param と 名前="UrlColumnName" 選択="「ImageUrl」"/>
      </xsl:呼び出しテンプレート>
    </xsl:変数>
    <xsl:変数 名前="SafeLinkUrl">
      <xsl:呼び出しテンプレート 名前="OuterTemplate.GetSafeLink">
        <xsl:param と 名前="UrlColumnName" 選択="「LinkUrl」"/>
      </xsl:呼び出しテンプレート>
    </xsl:変数>
    <xsl:変数 名前="DisplayTitle">
      <xsl:呼び出しテンプレート 名前="OuterTemplate.GetTitle">
        <xsl:param と 名前="タイトル" 選択="@Title"/>
        <xsl:param と 名前="UrlColumnName" 選択="「LinkUrl」"/>
      </xsl:呼び出しテンプレート>
    </xsl:変数>
    <xsl:変数 名前="LinkTarget">
      <xsl:場合 テスト="@OpenInNewWindow = 'true'" >_blank</xsl:場合>
    </xsl:変数>

    <!--
      ここで我々 は、変数を定義します。, "tableStart".  これは列ラベルと同様に、テーブルの開口部を定義するために使用する HTML を含む.  その場合 CurPos = 1, CDATA タグで HTML が含まれています.
      それ以外の場合, それは空になります.

      ItemStyle は ContentQueryMain.xsl で呼び出されるたびに、tableStart の値はエミッタ.
    -->
    <xsl:変数 名前="tableStart">
      <xsl:場合 テスト="$CurPos = 1">
        <![CDATA[
        <表の罫線 = 1>
          <tr bgcolor ="blue">
            <td><フォントの色「白」を =><b>プロジェクト名</b></フォント></td>
            <td 整列 =「右」><フォントの色「白」を =><b>完全な日付</b></フォント></td>
            <td 整列 =「右」><フォントの色「白」を =><b>予算</b></フォント></td>
            <td 整列 =「右」><フォントの色「白」を =><b>実際の経費</b></フォント></td>
            <td><フォントの色「白」を =><b>全体的な状態</b></フォント></td>
          </tr>
        ]]>
      </xsl:場合>
    </xsl:変数>

    <!--
      別の変数, tableEnd は単に終了を定義タグを表.

      TableStart と同様に, それは常にエミッタ.  だからこそ、その値が割り当てられているかどうか我々 は ContentQueryMain.xsl で最後の行を渡されてきたに基づいて条件付きで.
    -->
    <xsl:変数 名前="tableEnd">
      <xsl:場合 テスト="$CurPos = $Last">
        <![CDATA[ </テーブル> ]]>
      </xsl:場合>
    </xsl:変数>

    <!--
      常に tableStart の内容を出力します。.  これは ContentQueryMain.xsl によって私達に渡された最初の行ではない場合, 我々 はその値が空白になります知っているし、.

      出力エスケープを無効にするとき tableStart ない空白, ブラウザーでレンダリングしたい実際の HTML が含まれています.  我々 は教えていない場合 XSL パーサーを無効にする出力エスケープ, ようなものが生成されます"&lt;テーブル&gt;" 」の代わりに<テーブル>".
    -->
    <xsl:値の 選択="$tableStart" 無効にする出力エスケープ="はい"/>


    <tr>
      <!--
      P:Project_x005F_x0020_Name P:Project_x005F_x0020_End_x005F_x0020_Date P:Project_x005F_x0020_Budget P:Project_x005F_x0020_Expenses P:Project_x005F_x0020_Status
      -->
      <td>
        <xsl:値の 選択="@Project_x005F_x0020_Name"/>
      </td>

      <td 位置合わせ="">
        <xsl:値の 選択="@Project_x005F_x0020_End_x005F_x0020_Date"/>
      </td>

      <td 位置合わせ="">
        <xsl:呼び出しテンプレート 名前="formatcurrency">
          <xsl:param と 名前="" 
選択="@Project_x005F_x0020_Budget"></xsl:param と> </xsl:呼び出しテンプレート> </td> <td 位置合わせ=""> <xsl:呼び出しテンプレート 名前="formatcurrency"> <xsl:param と 名前="" 選択="@Project_x005F_x0020_Expenses">
</xsl:param と> </xsl:呼び出しテンプレート> </td> <td> <xsl:値の 選択="@Project_x005F_x0020_Status"/> </td> <!-- 以下のすべて、物事を明確にコメント アウト. ただし, それを戻すとかに、 <td> その効果を確認するには. --> <!-- <div id ="linkitem" クラス =「アイテム」> <xsl:場合テスト ="文字列の長さ($SafeImageUrl) != 0"> <div クラス =「画像エリア左」> <href ="{$SafeLinkUrl}" ターゲット ="{$LinkTarget}"> <img クラス ="画像-固定幅" src ="{$SafeImageUrl}"
alt ="{@ImageUrlAltText}"/> </は> </div> </xsl:場合> <div クラス「リンク項目」を => <xsl:呼び出しテンプレート
name="OuterTemplate.CallPresenceStatusIconTemplate"/> <href ="{$SafeLinkUrl}"
ターゲット ="{$LinkTarget}" タイトル ="{@LinkToolTip}"> <xsl:値の選択"$DisxslyTitle"=/> </は> <div クラス =「説明」> <xsl:値の select="@Description" /> </div> </div> </div>
--> </tr> <!-- 終了を出力テーブルのタグ. 我々 は最後の行をしている場合, これは空白になります. --> <xsl:値の 選択="$tableEnd" 無効にする出力エスケープ="はい"/> </xsl:テンプレート> <xsl:テンプレート 名前="formatcurrency"> <xsl:param 名前="" 選択="0" /> <xsl:値の 選択='番号の書式設定($値, "$DDD,DDD,DDD。HD ®, 「スタッフ」)' /> </xsl:テンプレート>

標準の WSS ・苔データ入力画面はカスケード ドロップダウンをサポートしていません (または他の内-通信から)

更新プログラム (04/2008): この素晴らしいブログのエントリこの問題への良い javascript をベースのアプローチを示しています。: http://webborg.blogspot.com/2008/04/add-functions-and-events-to-sharepoint.html

アップデート 2: (04/2008): このブログのエントリにも有望します。: http://www.cleverworkarounds.com/2008/03/13/free-mosswss-2007-web-part-hide-controls-via-javascript/

週に数回, 毎日ではない場合, フォーラムのユーザーは、カスケード ドロップダウンを介して通常満たされるだろう要件を記述します。. たとえば, 私は 2 つのドロップダウン コントロールがあります。:

  • 米国の一覧. 状態
  • 米国の一覧. 都市.

責任の UI プロバイダーとして, このような動作がいい:

  • ポール、米国を選択します. ドロップダウン リストから状態.
  • これにより、都市ドロップダウン選択状態に属する都市のみをフィルター処理するには.
  • ポールはこのフィルターされたリストから都市を選択します。.

この機能のボックスのサポートはありません。. 実際, 直接内部形式の通信のあらゆる種類の OOB サポートされていません. これは、プログラムを使用してフォーム上のフィールドの変化に対応した非表示/有効化/無効化フィールドがあります。.

可能な解決策とこれらについて説明するこの記事の本当の目的は、オプションとしてそれらを知っています。:

  1. カスタム列型を開発します。. 開発者はカスタム列, あなたは"世界中のフルコントロールを持っています。" カスタム列の. できますを実装するカスケード ドロップダウン方法.
  2. ワークフローの使用を検討します。. いくつかのケースで, 自動的に別のフィールドの値に基づいてフィールドに値を代入します。. このケースでは, 計算列を使用するよう通常試みるでしょう, しかし、いくつかの回, それは仕事を得ることはありません。. SharePoint Designer ワークフローはコードと visual studio に落としに比較的管理に優しい代替です。. このルートを行く場合, によって対処する問題の注意してください。 この記事 (http://paulgalvin.spaces.live.com/blog/cns!CC1EDB3DAA9B8AA!405.entry).
  3. イベント ハンドラー: ワークフローのような, これは、事実の後のソリューション. イベント ハンドラーは、.NET アセンブリ ((C#), VB.NET) どの SharePoint コントロールを渡します. 開発するオブジェクトがリストのデータへのアクセス (全体のオブジェクト モデル) 必要な計算を行うことができます。.
  4. SharePoint デザイナーを使用して、カスタムの入力フォームを作成. このアプローチに関する直接の経験を持っていません。, しかし、私は彼らがNewForm.aspxこれらの日に良いことをやっている聞きます🙂
  5. ASP.NET データ エントリ関数は、独自のロールします。 (スタンドアロンの web ページと web パーツ) 代わりに使用します.

誰も他のまたはより良いオプションを知っている場合, くださいコメントを投稿して、この記事のボディを更新します.

<終了/>

Technorati のタグ:

はい/いいえ (チェック ボックス) コンテンツのクエリ Web パーツのフィルター処理

クエリに対して、[はい] をフィルターする/チェック ボックスに「PG マイルス トーン「権利なし, CQWP このような構成します。:

イメージ

これはこれらの明白な-一度-を知っている-それが hard-to-find-an-answer-to の質問の別の 1 つです。: はいをフィルターする方法/コンテンツのクエリ web パーツを使用しない] チェック ボックス.

最初 検索結果 検索用語「フィルター [はい/いいえコンテンツ クエリ web パーツを使用してを見つける" 平らな悪事です。, 思ったので私はこれをそこに設置して典型的な検索結果で誤った結果を置き換えることができるかどうかを参照してください。.

それは非常に簡単です。: True の値 =「1" false 値「1 に等しくない" (かなりレトロ, 実際には).

上記の例では、, 私は"はい/いいえ型のサイト列を作成 (チェック ボックス)" 名前付き「PG マイルス トーン」. ドキュメント ライブラリにそれを追加しました, いくつかのドキュメントをアップロード, いくつかの値を設定し、それをテスト.

<終了/>