месечни архиви: Ноември 2007

Не може да победи на SharePoint в Reach

През последните два дни, Са участвали в две заседания, през които ние представи резултатите от проект на SharePoint. ИТ и неговият екип се присъединява към първата среща. Това е стандарт и не особено забележителен. ИТ отдела е очевидно, участващи в предприятие внедряването на всеки проект, технология. Втората среща се разширява да включва V.P. от маркетинг, няколко директори, представляващи HR, Логистика, Производство, Инвестиционни проекти, Качество, Закупуване, Корпоративно развитие и други ведомства (някои от които не са били дори пряко ангажирани в текущата фаза). Това е Могъщият широка аудитория.

В живота ми преди, Основно работи по проекти по ERP и CRM. Те двамата имат доста широк решение домейн, но не толкова широк като SharePoint. Да бъдат напълно реализирани, Проекти SharePoint законно и задължително достигне в всяко ъгълче и пролука на организация. Колко други корпоративни решения имат вид на игачи? Не са много.

SharePoint ясно представлява една огромна възможност за тези от нас, достатъчно късмет да бъде в това пространство. Тя осигурява голяма техническа възможност (което някак е обърна с главата Тук под "Технологии трябва да овладеят"). Но още по-добре, SharePoint ни излага на обширна и широка гама от бизнес процеси чрез тези ангажименти. Колко CRM специалисти работят с производствената част на фирмата? Колко ERP консултанти работят с човешки ресурси на талант придобиване? SharePoint надвишава ги и двете.

Като нищо, Това не е съвършен, но това е ужасно добро място да бъде.

За любовта на [Попълнете вашето най-обичаните лице или висше същество], не променяйте "заглавие’ колона на сайт.

На SharePoint форуми, понякога някой пита за "промяна на етикета на заглавие" или около "премахване заглавие от списъци".

Долната линия: Не го правя!

За съжаление, Потребителският интерфейс позволява еднопосочна промяна на този етикет на колона, както е показано:

Изображение

Заглавието е свързан с елемента,"колона" тип съдържание. Много, много, много CT на използват тази колона и ако променяте го тук, Тя ripples вън навсякъде. Налице е добър шанс, че не сте искали това да се случи. Вие вероятно са били мислене за себе си, "Имам потребителски справочния списък and" заглавие’ просто няма смисъл като име на колона, така че аз отивам да го смените с "код на състоянието’ и добавите колона за описание." Но ако се следват чрез на мисълта, че и преименуване "заглавие’ за "Статус код", Заглавие на всеки списък (включително библиотеки с документи) промени в "код на състоянието" и вие вероятно не е имал намерение за това да се случи.

Истинският проблем е, че това е еднопосочна промяна. UI "знае" това "заглавие" е запазена дума. Така, Ако се опитате и да промените "код на състоянието" обратно към "Заглавие", Той ще ви предпази и сега вие сте рисува себе си в ъгъла using paint that never dries 🙂

Така че какво се случва, ако вече го променили? Аз не съм виждал отговор всички искаме, който е прост и лесен метод за промяна на етикета обратно към "Заглавие". Точно сега, най-добрият съвет е да го смените с нещо като "Doc/артикул заглавие". Това е достатъчно общ етикет, който не може да бъде твърде шокиращ за вашите потребители.

Имам няколко други идеи, които са в моя списък със задачи с неща за изследвания:

  • Свържете се с Microsoft.
  • Направи нещо с обектния модел на, може би във връзка с функция.
  • Измисли схемата на базата данни и ръчно актуализиране на SQL. (Трябва да се обърнете към Microsoft преди това обаче; Това най-вероятно ще бъдат анулирани си договор за поддръжка).

Ако някой знае как да реши този, Моля публикувате коментар.

Update късен следобед, 11/15: Намерих тази връзка, която описва метод за създаване на тип на списъка, който все още няма заглавие на колона: http://www.venkat.org/index.php/2007/09/03/how-to-remove-title-column-from-a-custom-list/

BDC ADF и вашият приятел, НЕЗАТВОРЕН

Забелязал съм, някои неудобни и ненужни ръчно кодиране на RdbCommandText в някои примери (включително MSDN документация).

Исках да подчертая, на новодошлите в КБД, че команди може да бъде обвит във вътрешността на CDATA етикет в естествените им"" формуляр. Така, тази неудобна конструкция:

<Имоти Име="RdbCommandText" Тип="System.String">
Изберете dbo.MCRS_SETTLEMENT.ID, DBO.MCRS_SETTLEMENT.Settlement от dbo.MCRS_SETTLEMENT
КЪДЕТО (ИД &gt;= @MinId) И (ИД &lt;= @MaxId)
</Имоти>

могат да се представят по-добре по този начин:

<Имоти Име="RdbCommandText" Тип="System.String">
<![НЕЗАТВОРЕН[
Изберете dbo.MCRS_SETTLEMENT.ID, DBO.MCRS_SETTLEMENT.Settlement от dbo.MCRS_SETTLEMENT
КЪДЕТО (ИД >= @MinId) И (ИД <= @MaxId)
]]>
</Имоти>

</край>

BDC грунд

Интрото на BDC

Функционални пример: BDC ADF, който се свързва към SQL база данни с вградени потребителски ИД и парола

Трябваше да завивайте Мос в SQL база данни чрез BDC. За целите на изпитване/POC, Исках да вградите на SQL сметка потребител id и парола в ADF. Започвайки с този шаблон (http://msdn2.microsoft.com/en-us/library/ms564221.aspx), Съм създал ADF, който се свързва към конкретен екземпляр на SQL сървър и логове с конкретен потребител id и парола и показва в този фрагмент:

  <Екземпляри LobSystemInstance>
    <LobSystemInstance Име="ClaimsInstance">
      <Имоти>
        <Имоти Име="AuthenticationMode" Тип="System.String">Еднократно прокарване</Имоти>
        <Имоти Име="DatabaseAccessProvider" Тип="System.String">SqlServer</Имоти>
        <Имоти Име="RdbConnection данни източник" Тип="System.String">действителните serveractual екземпляр</Имоти>
        <Имоти Име="RdbConnection първоначален каталог" Тип="System.String">Действителен начален каталог</Имоти>
        <Имоти Име="RdbConnection интегрирана сигурност" Тип="System.String">SSPI</Имоти>
        <Имоти Име="RdbConnection обединяване" Тип="System.String">фалшиви</Имоти>

        <!-- Това са основните ценности: -->
        <Имоти Име="RdbConnection потребителски Идентификатор" Тип="System.String">аъведете потребителски Идентификатор</Имоти>
        <Имоти Име="RdbConnection парола" Тип="System.String">действителен парола</Имоти>
        <Имоти Име="RdbConnection Trusted_Connection" Тип="System.String">фалшиви</Имоти>

      </Имоти>
    </LobSystemInstance>
  </Екземпляри LobSystemInstance>

Това не е най-добрата практика, но това е полезно за бърза и проста конфигурация за изпитване. Това беше изненадващо трудно да разбера. Аз никога основавам функционална например с ключови думи за търсене:

  • ADF вградени потребителско име и парола
  • вграждане на потребителски ИД и парола в adf
  • вграждане на потребителски ИД и парола в adf bdc
  • SharePoint bdc грунд
  • SharePoint вградите потребителски ИД и парола в adf

</край>

Абонирайте се за моя блог.

ЕДП действия на потребителски работен поток — низ манипулация подобрения

Преди около седмица, Започнах до codeplex проект, който осигурява прост и разумно общ метод за добавяне на потребителско действие функции SharePoit дизайнер поток. Това е описано тук: http://www.codeplex.com/spdwfextensions. Отвъд просто предоставяне на рамка, Тя също има за цел да предостави набор от полезни функции, които ще направят ЕДП-полезни/гъвкави/мощен.

Тук са настоящите планиран функции за версия 1.0: https://www.codeplex.com/Release/ProjectReleases.aspx?ProjectName=spdwfextensions&ReleaseId=8280

Ако някой има интерес към този проект, Моля, оставете коментар или start/добави към дискусия тук: http://www.codeplex.com/spdwfextensions/Thread/List.aspx

Ето на текущия набор от функции, които са били кодирани (Въпреки че не е напълно тестван като от 11/08/07):

Функция Описание (Ако не същата като .net функция)
NUM-записи() Връща "записите за номера" в низ по указания разделител.

За пример: NUM-записи в низ "_FITTED,б,c" с разделител"," = 3.

Влизане() Връща n-тия знак в низ по указания разделител.
Дължина String.Length
Замени() String.Replace()
Съдържа() String.Contains()
Думата "true се връща" или думата "false".
Подниз(Старт) String.Substring(Старт)
Подниз(Старт,край) String.Substring(Старт,край)
ToUpper() String.ToUpper()
ToLower() String.ToLower()
StartsWith() String.StartsWith()
Думата "true се връща" или думата "false".
EndsWith() String.EndsWith()
Думата "true се връща" или думата "false".

Бърз & лесно url кодиране десктоп програма

Аз съм се налага да url-кодира някои струни тази седмица и плесници заедно малко помощна програма, която мислех, че бих поставени SkyDrive за Общността.

Получи двоичен тук: http://cid-1cc1edb3daa9b8aa.skydrive.live.com/self.aspx/SharePoint/WinUrlEncode.zip

Получите visual studio разтвор тук: http://cid-1cc1edb3daa9b8aa.skydrive.live.com/self.aspx/SharePoint/WinUrlEncodeVS2005.zip

Тук е параван сачми:

Изображение

Бърз и лесен: Вграждане на хипервръзка в web част XSLT

АКТУАЛИЗИРАНЕ (01/17/08): Този блог влизане говори за повече хипервръзка XSL доброта: http://www.sharepointsecurity.com/blog/sharepoint/sharepoint-2007-development/rewriting-links-in-search-results-xslt.

Преглед и цел: Съм създал проста стълбовидна диаграма да служи като елемент на табло. Ще запишете детайлите за изграждане на диаграми за друг пост, но аз не измислям тази техника (нито въпросителен знак, за този въпрос). Оказа се, имаше един бъг в диаграмата и докато оправих това, Аз взех възможност да конвертирате някои етикети в хипервръзки, които посочи основните списъка зад графиката. За пример, има етикет със стойност "Hold". Исках да се превърне на етикета в хипервръзка, така че потребителят може да щракнете върху нея и пробия конкретни записи в списъка, чийто статут стойност е "Държи".

Стъпки:

  1. Използвайте visual studio за SharePoint-aware intellisense.
  2. Копирайте DVWP XSLT в visual studio (създаване на празен проект, Добавяне на XSL файл към проекта).
  3. Копиране на връзката, която искате да използвате в клипборда.
  4. Да го поставите на правилното място в XSL.
  5. Превръщам URL аргумент Сепаратори на низа на заявката от"&" "&усилвател;"
  6. URL-кодиране на отделните аргументи.
  7. Пренася тази в <a href…> </а>

Пример:

Аз имам URL:

HTTP://[сървър]/[сайт]/Lists/Open Positions/AllItems.aspx?Изглед ={84EEA2F5-121Б-40B7-946F-0FA704A1DAA1}&FilterField1 = работодател&FilterValue1 = задържане

Аз превръщам то в:

     <а HREF="Lists/Open Positions/AllItems.aspx?Изглед = % 7b84EEA2F5-121б-40B7-946F-
0FA704A1DAA1 %7 d&усилвател;FilterField1 = работодател&усилвател;FilterValue1 = задържане"> Задръжте: </а>

Ръчно са трансформирани първият аргумент от:

{84EEA2F5-121Б-40B7-946F-0FA704A1DAA1}

за да:

%7b84EEA2F5-121б-40B7-946F-0FA704A1DAA1 %7 d

(В този, отваряща фигурна скоба трансформации на % 7б и затваряне подпре трансформации на %7 d)

Втората и третата аргументи’ параметри ("FilterField1 =Работодател" и "FilterValue1 =Задръжте" съответно) не е нужно да бъде url кодиран, защото те не съдържат никакви опасни знаци.

Бележки:

Тази техника като цяло трябва да работи навсякъде, където искате да вградите хипервръзка в XSLT, където хипервръзката включва параметрите на URL като:

HTTP://[сървър]/[сайт]/Lists/Open Positions/AllItems.aspx?Изглед ={84EEA2F5-121Б-40B7-946F-0FA704A1DAA1}&FilterField1 = работодател&FilterValue1 = задържане

Аз имам себе си сайт от достъп до потребителския списък и ръчно филтриране на колоната състояние (надпис "работодател" по-горе).

Бърз и прост: Давам възможност на работния поток на SharePoint Designer за актуализиране на формуляр на InfoPath

Сценарий: Имам на формуляр на InfoPath, които предната завършва процес на работен поток, изпълнени с помощта на SharePoint Designer. В един момент, мениджър трябва да одобри формуляра. Тъй като не може да разчита на хронологията на работния поток на изискванията ми одит, Решите да съхранявате собствените проверка съобщение директно в самия формуляр.

Общ преглед:

Проектирайте формуляра и го като публикува тип съдържание и самия формуляр към библиотека с документи. Марк желана форма полета са обновяем от Мос. Формулярът е свързан с типа съдържание и тип съдържание е "приложен" Библиотека с формуляри (или много, Ако искаш). Напишете работен поток, който актуализира полето.

Конкретни стъпки:

  1. Създаване на библиотека с документи. Това ще задържи вашия шаблон на InfoPath.
  2. Създаване на библиотека с формуляри.
  3. Създаване на формуляр на InfoPath. Включва в текстово поле, "Одит съобщение".
  4. Публикуване на формуляр като тип на съдържание (НЕ документ).
  5. При попълване на публикуване диалогови прозорци:
    а) Записване на .xsn файл в библиотеката с документи (стъпка #1).
    б) Публикува "одит съобщение" поле и Марк вярно: "Позволява на потребителите да редактират данни в това поле като използват лист с данни или страница на свойствата".
    c) Създаване на нов тип съдържание и да му дадете подходящо име.
  6. Достъп до библиотека с формуляри.
    а) Към нейните разширени настройки и да разрешите библиотеката на форми за управление на типове съдържание.
    б) Изберете новосъздадения тип съдържание (5c по-горе). Тя ще бъдат групирани под "Microsoft InfoPath" (или други подобни).
    c) Премахнете по подразбиране "форма" тип съдържание от библиотеката.
    d) Марк библиотеката да "показват като web страница" така че формулярът ще стартира от SharePoint и не на клиента, InfoPath работна станция.
  7. Назад към библиотеката с формуляри правилно и щракнете върху "Създай" да само да провери, че формулярът е правилно осчетоводени и действаща така, както искате.
  8. Огън на SharePoint Designer и да се движите на сайта, който съдържа библиотеката с формуляри (от стъпка 2).
  9. Създаване на нов работен поток към библиотека с формуляри.
  10. Добавяне на единична действие "Задайте поле в текущия елемент". Можете да очаквате SharePoint Designer, за да списък сте вашето поле, "Одит съобщение". Я присвоите стойност.
  11. Щракнете върху Готово и се върнете към библиотеката с формуляри.
  12. Създаване на нов формуляр и някои тест стойност в "одит съобщение" поле.
  13. Запишете го и се върнете към библиотеката с формуляри.
  14. Щракнете с десния бутон, изберете "работен поток" и стартиране на работния поток.
  15. Трябва да изпълни почти веднага. Издърпайте нагоре форма (от стъпка 12) и ако всичко е отишло да планират, "Одит на съобщение" е била присвоена стойност каквото сте предоставили в стъпка 10.

Бележки:

Не всички контроли може да конфигуриран за тази двупосочна комуникация. За пример, не изглежда за изпълнение на ЕПД поток, който модифицира текстови полета, увити в повтарящи се раздели.

Един от ключовите вземе-далеч на Ето че наистина ние създадохме тип съдържание с асоциирани шаблон. Това ни позволява да съхранявате няколко шаблони на формуляри на InfoPath в същата библиотека с формуляри.

Това изисква форми сървър. Това със сигурност няма да работят в ВиК 3.0 околната среда и вероятно дори изисква предприятието SharePoint среда.

Бийгъл кацна (Октомври 2007 проблем)

(Това е всъщност малко стара новина, но тъй като мотото ми любимите Пожарна обявява, "По-добре късно, отколкото никога").

Проверете го тук: http://www.sharepointbeagle.com/

Ако вече не сте, не забравяйте да Регистрирайте се.

Разбира се, не забравяйте да прочетете моята статия за реалния свят SharePoint проект (включително изисквания дефиниция, На KPI, типове съдържание, таблата и др) както и Моят колега статия за уеб компонента на заявка за съдържание.

Има много други добри неща твърде.

Как да премахнете “Преглед на цялото съдържание на сайта” връзка

Аз съм задава този въпрос почти всяка седмица, обикновено в контекста на сигурност дискусия. Администратор/сайта създател е осигурен сайт, конфигуриран защита, подредени уеб части и персонализирани бързо стартиране да осигури че о толкова добра набор от опции за крайния потребител. Но, на кутията, не можете да премахнете "Покажи цялото съдържание на сайта" връзка.

Марк Вагнер ви дава отговор Тук (http://www.crsw.com/mark/Lists/Posts/Post.aspx?ID=36). Му обезценка е ужасен на две нива. Тя дава отговор на въпроса, "Как да премахнете изглед на цялото съдържание на сайта" връзка? След това, Той отговаря на непосредствените последващи въпроса: Как да активирам лесно изглед на цялото съдържание на сайта линк на сайт от сайт основа?

Като бонус: Неговият подход работи за ВиК, не само мъх.

</край>

Абонирайте се за моя блог!