SharePoint 店談開放 Q&一個會話 (星期四) 08/13 @ 12:30 路透社

Arcovis 將主辦我們"SharePoint 店談"的第二屆會議在本星期四 12:30 路透社. 帶著您的 SharePoint 問題,我們會盡我們所能用班卓琴笑話娛樂你, 聰明但無害奚落的我們的同事和也許甚至還可以回答一兩個問題. 本周的"官方"面板包括你真正, 我 Arcovis 合作夥伴 (婭 Voskresenskaya 和哈裡 · 鐘斯) 和蘿拉 · 羅傑斯 (的 twitter & EndUserSharePoint 名人堂). 鮑勃 · 福克斯威脅要加入太, 但我也不會太認真. 最後一次, 我們有很高級別觀眾參與節目的嘉賓和出席者的界限模糊,預期同樣會發生 (星期四).

此事件是由集成的系統和服務集團共同主辦 (www.issgroup.net).

請在這裡註冊: https://www323.livemeeting.com/lrs/8000043750/Registration.aspx?pageName=9xrzxfs9x34sb0sm

如果您有問題,你想讓我們帶, 只是撥入的呼叫,問它. 如果你想讓我想一想吧, 發送一封電子郵件給我們 或者在這裡留下評論.

然後看看你!

</結束>

訂閱我的博客.

跟我在 Twitter 上 http://www.twitter.com/pagalvin

預先存在的條件: 拯救 SharePoint 警報範本 (?)

我的一個客戶共事前的承建商,打造出了企業小但有用 HR 應用程式. 那個承包商 SharePoint 設計器用於實現該解決方案的工作流部分. 它是有點亂. 例如, 有九個 SPD 工作流支援單個邏輯工作流進程和達五人可能在任何給定的時間,給出了正確的條件同時開槍. 調試起來並不容易 🙂

我的客戶擁有一些仍然懸而未決的要求, 其中之一是通常提供更多的上下文時,系統會發送電子郵件通知 — — 無論是在電子郵件本身以及相關聯的任務形式. 作為 SPD 工作流執行者知道, "從使用者收集資料"SPD 行動實際上與自訂內容類型創建一個任務. 當我們使用該操作, 我們不去指定很多. 我們可以提示輸入一些值 (例如:. "批准"或者"拒絕") 我們可以指定一個硬式編碼值中的標題和說明. 這大概就是.

我的客戶的要求是兩折:

  1. 當 SharePoint 發送郵件任務分配, 電子郵件正文中包含大量的有關任務的資訊.
  2. 更重要的是, 到目前為止 – 當使用者按一下電子郵件中的任務連結, 工作表單應該有核准者使其批准或拒絕的決定所需的所有資訊. 馬上, 經理需要點擊專案連結本身向下切入到底層的細節,沒人喜歡,. 您必須按一下電子郵件中. 然後您需要按一下任務專案上有點晦澀的連結. 然後你可以看看基礎資料 (在這種情況下形成的 InfoPath). 然後你點擊後面或後面, 等. 每個人都討厭它.

我繼承了這個有點淩亂的技術解決方案和我想要盡可能的少侵入性的方式進行更改.

馬上帶的方法是創建一個自訂的警報範本. 這裡你可以閱讀有關的. 像這樣工作流程:

  • SPD 工作流運行.
  • 在一些點, 它將任務分配給經理.
  • SharePoint 系統會自動發出警報,對那位經理. 這不是一部分的 SPD 工作流,而是"什麼 SharePoint?" (SharePoint 定時服務, 我相信).
  • 支援標準的警報進程調用自訂報警處理 (下面魔法規則如上文所述參考文章).
  • 我自訂的警報處理常式運行時, 它生成一個漂亮的電子郵件. 更重要的是, 因為它有任務在手, 它還裝飾具有滿足業務要求所必需的所有上下文資訊的實際任務.
  • 獲取使用者的電子郵件,它是有用的上下文資訊的完整.
  • 使用者點選連結任務的任務本身是完整的有用的上下文資訊,.
  • 每個人都回家來了西瓜和霜淇淋.

我做快速的 POC 和它的作品在實驗室環境中. 我得到我的自訂電子郵件警報按預期. 我也要更新的任務說明和標題本身.

唯一麻煩的地方, 到目前為止, 是為了避免地方警報更新專案情況, 觸發另一個警報. 這並不讓我擔心.

到目前為止似乎有希望...

偉大的事情是,我不需要再亂動任何現有的 SPD 工作流. 他們是無所不知的警報處理常式是"IIZ 狂奔在 DA BAKGROUND, 天藝 TEH 工作清單火爆莫瓦爾上下文”.

</結束>

訂閱我的博客.

跟我在 Twitter 上 http://www.twitter.com/pagalvin

Technorati 標籤: ,

住在 SharePoint Q&一個會話 (星期四) 07/30/09 @ 12:30 下午美國東部時間結束 1:30路透社

更新: 為此格式基本上是與幾個 PPT 幻燈片設置舞臺的電話會議. 我們有一個 SharePoint 環境臺上以火起來,以防它來幫忙, 但這是主要人群大聲談論. 將有機會跟隨了通過電子郵件.

我第一次回到曾經 SharePoint 會議, 就在一年前, 我被感動寫得多麼出色直播 Q&會話可以是. 會議主辦方把放在一起排序問題特設專家組的"" (e 小節. 就掛在和無所畏懼的舞臺上看起來到愚蠢的人) 回答來自觀眾在房間裡的任何問題. 當時在我的腦海, 並定期自那時以來, 舉辦類似的會議,但卻對線和電話線. 我不認為它可以作為人在 Q 一樣好&一個會話, 但我認為它可能會很酷.

我終於到它和下週四, 07/30, 我的公司 (Arcovis) 與業務合作夥伴, 集成的系統和服務組, 將主辦 Q&這樣的 A. 我希望能經常做這些, 經常作為每週.

這首屆會議可能會有點顛簸, 但這是一個概念:

  • 如果您有疑問,您想要在會議期間回答了, 只顯示出來,並要求.
  • 如果需要幫助,, 您可以通過電子郵件發送的問題提前.

我們打算花上半年 Q&A 對通過電子郵件發送的問題,然後打開它之後,有人問起的東西.

上週四發生會話, 07/30 從開始的 12:30 和在結束 1:30 路透社.

如果你有興趣, 請在此處註冊: https://www323.livemeeting.com/lrs/8000043750/Registration.aspx?pageName=pxlsd9fpsm2md7h9

這個小組將包括我和其他 SharePoint 燈具. 您必須註冊才能確定他們是誰🙂

如果您想要的那些照明器未來 Q 之一&一個會話, 讓我知道.

</結束>

訂閱我的博客.

跟我在 Twitter 上 http://www.twitter.com/pagalvin

Technorati 標籤:

嵌入內部 InfoPath 表單開發人員說明

我仍然生活在 InfoPath 表單的世界,使那些"小"的變化之一向表單所需的, 不幸的是, 打破了我兩個星期前通過與它的命名約定. 我對自己說, "人去看看這東西一年從現在,說, ' 保羅在想些什麼? 由朱庇特, 他的命名約定沒有任何意義!”

我意識到我能為此創造一個表單上的視圖,然後, 再來一次, 意識到,我可以一直一直這樣的事情. 我添加到 InfoPath 表單這樣的"開發人員備註"視圖:

image

這樣,使用者不能訪問這種觀點已經將表單配置,因此, 它只是與 InfoPath 用戶端在設計檢視中可見. 現在我感覺到有點接種反對一些未來的未知開發人員看著我的表單和關於我的壞想法. 恍惚之間!

</結束>

訂閱我的博客.

跟我在 Twitter 上 http://www.twitter.com/pagalvin

Technorati 標籤:

管理 InfoPath 視圖

我似乎走到了 InfoPath 的階段,, 從藍色, 我製作一大堆表格. 我的手指學習如何使用該工具好,然後經過九個月的乾旱得再從頭學習.

我在 InfoPath 階段中,我感到了很多意見與創建 InfoPath 表單. 您可能注意到的是,在 InfoPath 的一件事 2007 用戶端顯示視圖按字母順序排列. 這是一個真正的滋擾幾次. 這些天我最好的技術是將視圖名稱號碼開頭,他們總是在我想要的順序顯示, 此處所示:

image

我希望我已經一直在做這.

</結束>

訂閱我的博客.

跟我在 Twitter 上 http://www.twitter.com/pagalvin

Technorati 標籤:

InfoPath 表單小賣部, 基於表單的身份驗證 (FBA) 與檔的唯一名稱

已經對某些 InfoPath 表單本周在 MOSS 中 FBA 環境中工作和學習, 後要部署到生產環境中使用 FBA 表單區域的使用者名() 功能不起作用. 我用它來生成唯一的檔案名.

井, 該函數不會在 FBA 環境中工作 (至少, 不走出困境). 和, 經過思考, 我曾計畫的方式使用使用者名不會保證了唯一的檔案名在任何事件.

我的解決辦法是使用現在() 函數和觸發表單的載入規則. 我需要將檔案名稱分配資料元素,當它是空白:

image

image

這種方法的優點是只有一次集檔案名稱. (再不在螢幕抓圖, 但只有火當"myFilename"為空時的規則放一個條件). 我用來在資料來源級別設置的檔的名稱. 通常, 我會做的東西 (壞) 喜歡這個:

image

問題是,如果在週一打開表單,使用者 A 和使用者 B 改變了它在週二, 由於兩個不同的使用者將其保存為不同的使用者名稱,你就會最終具有兩種不同形式.

所以, 煩人 FBA 可以是一般和使用 InfoPath 特別是, 它讓我重新思考小但很重要的技術細節和做法,否則不會做!

</結束>

訂閱我的博客.

跟我在 Twitter 上 http://www.twitter.com/pagalvin

Technorati 標籤:

確保 SharePoint 清單/文件庫視圖,似乎 (排序的) JQuery 的可能

這是另一個帖子中的我 系列 有關如何使用 jQuery 使用 SharePoint.
如果您想要瞭解更多關於 jQuery, 我強烈建議你: jQuery 在行動 由熊 Bibeault 和 Routes.

第一件事我還以為, 一旦我開始玩 jQuery, 是是否我們可以用它來確保 SharePoint 視圖. 答案是"不" (或至少, 我不宣稱自己可能). 不過, 很有可能要讓人看見的特定視圖的困難.

我的沙箱環境時這項工作的開始. 我寫了關於此處的環境: 快速而方便地: 為 SharePoint 創建您自己的 jQuery 沙箱.

以"安全"視圖, 請按照這些步驟操作:

  1. 創建的視圖如果想要確保. 我那樣做了,稱之為"擔保視圖".

    這是它看起來像當它不"安全":

    image

  2. 將內容編輯器 web 部件添加到視圖的頁面使用沙箱條所述的訣竅 (e 小節. 添加"流覽量 = 共用&ToolPaneView = 2"到的 URL).
  3. 找出您的 SharePoint _spUserId 由以下這些瘋狂的步驟, 信不信:
    1. 登錄到您的 SharePoint 環境.
    2. 在 web 瀏覽器的位址欄位, 類型: "javascript:警報("_spUserId).
    3. 記錄結果 (它是"13"在我的例子).

      image

  4. 將下面的 javascript 代碼添加到您在代碼視圖中的 CEWP:

    <腳本類型 ="文本 javascript"
        src ="../../jQuery Library/jquery-1.3.2.min.js">
    </腳本>
    
    <腳本類型 ="文本 javascript">
      $(功能() {
    
        警報(_spUserId);
    
        var theSecuredView = $(iframe[FilterLink * = 擔保的  view]');
    
        如果 ((theSecuredView.length > 0) && (_spUserId = = 13))
          $(iframe[FilterLink * = 擔保的  view]').父().父().父().html("<背景色 tr = 紅色><運輸署>沒有你的看法!</運輸署></tr>");
      });
    
    </腳本>
    

我已經包括了該警報(_spUserId) 線在那裡展示如何,這不是真的"確保安全"視圖, 但只使它更難見. 更多的時刻.

基本上, jQuery 尋找那些具有一個包含"安全 view"在其值的屬性頁面上的 iFrame. 一旦找到了,它, 我們檢查當前使用者是否是"13". 如果它是, 我們走到 DOM <TR> 標記 (其中我想通了,通過查看源和追蹤它) 然後替換那 TR 標籤與我的消息. 我真的不知道這是多麼旺盛 (我很懷疑, 事實上), 但它在我的沙箱工作. 如果找到了更好的方式, 關於它的博客,我會. 這是的結果:

image

按一下 OK 按鈕,資料會被替換大紅色的消息:

image

正如你可以告訴, 種方式讓我實現這個"安全"解決方案是允許 web 部件來呈現自己. 它完成後, 我用我"沒有視圖為你改寫其內容!"消息.

儘管它不是真的"擔保"視圖, 它是可能是有用的和與一些聰明的工作, 它最終可能安全更正式的意義上. 根本的問題是,用戶端獲取的所有資料,然後, 它獲取的資料後才, 它擦乾,再. 如果用戶端獲取資料, 聰明的使用者可以防止 jQuery 在所有運行並查看想看到什麼.

有其他缺點. 這種"安全"的方法基於 _spUserId. 我們想要真正安全的基礎完整的 SharePoint 安全模型, 或者說,至少按使用者名稱. 那變得越來越難, 但我看到就此主題寫一些好的東西, 所以我希望這一問題的好答案.

應修整自己的視圖清單, 如果可能的話. 我還沒有嘗試去弄明白. 是它可能, 但真的並不能解決根本的安全問題,因為有人可能仍然只是鍵入 URL 的他們想要的視圖 (如果他們知道它). 不過, 切邊有道理. 這是一個良好的可用性功能,它有助於混淆的東西. 如果最終使用者並不知道查看事件的存在, 他們可能不會嘗試使用它. 有時, 這就是不夠好.

運氣好的話, 我會有更多的要寫上這一問題隨著時間的推移.

</結束>

訂閱我的博客.

跟我在 Twitter 上 http://www.twitter.com/pagalvin

快速而方便地: 更好的對使用 jQuery 隱藏 SharePoint Form 上的文字欄位

這是另一個帖子中的我 系列 有關如何使用 jQuery 使用 SharePoint.
如果您想要瞭解更多關於 jQuery, 我強烈建議你: jQuery 在行動 由熊 Bibeault 和 Routes.

以前, 我寫了關於如何使用 jQuery 來查找和隱藏表單的文字欄位. 我不在乎的具體辦法 (我被束縛的父母 — — 那只是不做這些天, 至少在家庭的品質).

當開始去想它, 我知道我需要去找 <TR> 我可以調用隱藏() 方法. 我找到正確的早期努力 <TR> 這像是:

$(' tr:已(輸入[標題 = 隱藏我!])');

問題是它會找到每個 <TR> 我有任何父關係到隱藏的標記! 欄位, 即使隱藏我! 是多層深的嵌套 <TR>的. 原來,在我的沙箱表單, 該運算式找到 9 不同 TR 的有隱藏我! 作為一個孩子在其 DOM 樹的某個地方. 我意識到,能回到上一棵樹從輸入欄位本身走, 這就是我如何結束濫用父母, 但它不好我坐在一起.

給這一些想法和我讀了最後的事情之一是合情合理的: 我可以用不() 方法以修剪出 <TR>我不想在我包裝一套. 我被引到這:

$(' tr:已(輸入[標題 = 隱藏我!])').不(' tr:已(tr)').隱藏();

第一位發現所有 <TR> 我有隱藏的標記! 他們自己層次結構中任何位置的欄位. 它然後帶出任何 <TR> 那也有一個孩子 <TR>. 這使我們與單 <TR> 那:

1) 有無 <TR> 子記錄

2) 沒有輸入的欄位作為孩子.

然後,我們可以應用隱藏() 設置到結果的方法和我們做完了.

我還是有點緊張, 但作為連結的父母不一樣緊張.

我不知道這不是是一種最佳做法. 可能更適當的方式確定的只是 <TR> 我們關心的 SharePoint 表單中. 如果你知道, 請張貼評論.

</結束>

訂閱我的博客.

跟我在 Twitter 上 http://www.twitter.com/pagalvin

快速而方便地: 使用 jQuery 隱藏 SharePoint Form 上的文字欄位

這是另一個帖子中的我 系列 有關如何使用 jQuery 使用 SharePoint.
如果您想要瞭解更多關於 jQuery, 我強烈建議你: jQuery 在行動 由熊 Bibeault 和 Routes.

更新 (已經!): 我沒有想到更好的方法來定位 <TR> 我想要隱藏的標記和 在這裡寫了關於它. 你可能仍然覺得這篇文章有趣反正所以我 leavnig 起來.

我想要隱藏的文字欄位, "隱藏我!"如圖所示:

image

下面的 jQuery 我的戲法:

<腳本類型 ="文本 javascript">

  $(功能() {


    $(' 輸入[標題 = 隱藏我!]').父().父().父().隱藏();

  });

</腳本>

該代碼說, "查找我所有輸入欄位的標題 = 隱藏我!. 然後, 獲取其父,然後下一步父和 * 下一步 * 父 (籲!) 和調用隱藏() 關於那件事的方法, 不管它恰好是.

我想出這種父結構通過查看 HTML 的表單的 SharePoint 創建如圖所示:

<TR>
    <TD nowrap="true" 底邊對齊="強" 寬度="190px" ="ms-formlabel">
        <H3 ="ms-standardheader">
            <nobr>隱藏我!</nobr>
        </H3>
    </TD>

    <TD 底邊對齊="強" ="ms formbody" 寬度="400px">
        <!-- FieldName ="隱藏我!"
                 FieldInternalName ="Hide_x0020_Me_x0021_"
                 FieldType ="SPFieldText"
        -->
        <大跨度 dir="none">
            <輸入
                名稱="ctl00$ m$ g_bdb23c2c_fde7_495f_8676_69714a308d8e$ ctl00$ ctl04$ ctl02$ ctl00$ ctl00$ ctl04$ ctl00$ ctl00$ 文字欄位"
                類型="文本"
                maxlength="255"
                id="ctl00_m_g_bdb23c2c_fde7_495f_8676_69714a308d8e_ctl00_ctl04_ctl02_ctl00_ctl00_ctl04_ctl00_ctl00_TextField"
                標題="隱藏我!"
                ="ms 長" />
                <br>
        </大跨度>


    </TD>
</TR>

此圖片顯示了相同, 但標有父母:

image

第一父 (1) 是 span 標記. 跨度的父 (2) 是 TD 標籤,然後最後我們來到了真正的我想要隱藏的父 (3) 哪個是 TR 標籤本身.

這是一個相當可怕的方法,我認為因為它非常依賴于這種形式非常特定的結構. 當 SharePoint 2010 出來, 這整個的結構可以改變,打破這種方法. 我真的想做是一個 jQuery 選擇器,是沿著線的工藝"找到我所有 TR 的 (和唯一 TR 標籤) 有某個地方在它們的子項目一個輸入的欄位的標題 = 隱藏我!”. 我從底部開始,向上移動. 假設我把這弄, 我會發佈最新"快速和容易 ' 開機自檢.

</結束>

訂閱我的博客.

跟我在 Twitter 上 http://www.twitter.com/pagalvin

del.icio.us 標籤: ,

快速而方便地: 為 SharePoint 創建您自己的 jQuery 沙箱

這是另一個帖子中的我 系列 有關如何使用 jQuery 使用 SharePoint.
如果您想要瞭解更多關於 jQuery, 我強烈建議你: jQuery 在行動 由熊 Bibeault 和 Routes.

在 SharePoint 中的 jQuery 入門是非常的簡單 (對我來說). (我有嚴重的問題,關於"最佳做法"的做法對生產部署這些東西, 但這是另一天). 我剛開始玩這種技術,並為此目的, 我創建了一個沙箱環境使用. 如果你想要瞭解的 jQuery 入門, 您可能會發現這種方法很有用.

1. 創建一個空白網站

在您的網站在某個地方創建一個空白網站和叫它像"jQuery 沙箱"聰明的東西.

2. 下載 jQuery

您可以從這裡下載的 jQuery javascript 庫: http://docs.jquery.com/Downloading_jQuery

要保存到您的桌面.

我一直在用的"還是測試"的版本.

3. 創建一個 SharePoint 文件庫

在沙箱網站, 創建文件庫.

4. 上載到 SharePoint 的 jQuery 庫

訪問您剛剛創建的文件庫和上傳的 jQuery 庫.

5. 創建自訂 SharePoint 清單

因為我想要標準 SharePoint 形式再亂動,我已經開始自訂清單. 您還可以創建頁面庫中的網頁或 web 部件頁和可能很多其他的地方.

將一些列添加到自訂清單,所以,你有什麼要運行 jQuery 反對. 我最初的目標是 ︰:

  1. 隱藏欄位.
  2. 將一個值分配給欄位.

與這一目標, 我添加了兩個文字欄位. 隨著時間的推移, 我會玩的連結, 圖像, 查找, 等.

6. NewForm.aspx Web 組件頁面修改和添加內容編輯器 Web 組件

這是一個小的黑色 magic-ish , 它是一個新的概念,對我. 我第一次聽說這從 保羅翼, SharePoint jQuery 超級巨星, 他 CodePlex 專案工地: http://spff.codeplex.com/.

請按照以下步驟添加到同一頁,為任何自訂的清單中顯示 NewForm.aspx 的布魯塞爾:

  1. 訪問自訂清單,並按一下新建.
  2. 將以下內容追加到 URL: 流覽量 = 共用&ToolPaneView = 2

這將改變你無聊的香草的資料輸入表單從這樣的事情:

image

到這:

image

向頁面添加內容編輯器 web 部件.

7. 寫你的第一個 jQuery 代碼

開放,CEWP 在代碼視圖中,添加以下內容:

image

這是實際的代碼,如果你想要複製/粘貼:

<腳本類型 ="文本 javascript"
    src ="../../jQuery Library/jquery-1.3.2.min.js">
</腳本>

<腳本類型 ="文本 javascript">
  $(功能() {

    $('' #resultsID).html(' 有 ' + $('' a).大小() + ' 標記此頁上標籤 '。);

  });
</腳本>

結果:
<div id ='' resultsID></div>
/結果

請注意,第一次 <腳本> 標記引用實際的 jQuery 庫. 大概是, 這些東西隨著時間的推移改變, 所以你要確保你) 使用合適的名稱,b) 它指向正確的 SharePoint 文件庫.

沐浴在榮耀

如果你能做到正確, 您將看到類似于以下內容的結果:

image

總結

這不是唯一的方法,要開始, 但它是快, 容易與您現有的 SharePoint 環境隔絕.

</結束>

訂閱我的博客.

跟我在 Twitter 上 http://www.twitter.com/pagalvin

del.icio.us 標籤: ,