Хутка і проста: Зрабіць InfoPath Form Толькі для чытання (InfoPath Forms Services у MOSS)

Там у агульнай бізнес-сцэнар, як гэта:

  • Карыстальнік запаўняе форму InfoPath.
  • Ўяўляе форму.
  • Працяглыя працоўны працэс стартуе.
  • У той час як працоўны працэс працуе, мы не хочам, каб хто-то змяніць змест выглядзе.

This office.microsoft.com example describes how to create a separate "view" and mark the whole view as read-only. This is a workable approach but has the drawback that you’ve effectively created two entire versions of the same form and must now keep them in sync manually. If you add a field to the editable view, you must then add it to the non-editable view as well. Праз некаторы час, with different developers, there can be some divergence.

This alternative might work better in some cases:

  • Add a new field to the form called "IsEditable".
  • Set its default value to true.
  • Promote it when publishing to MOSS.
  • У працоўным працэсе, set the value of IsEditble to false.
  • Go back to the form.
  • Add a rule that "upon open of the form", disable your save button when IsEditable is false.

The drawback to this approach is that all the fields will still be editable on the screen. The user can get a false impression that they can actually change content. You can mitigate that by putting in some text that the form is disabled, possibly in big red letters across the top of the page.

In one project, I created a "workflow status" глядзець. As the workflow progressed, it would update specific status fields that had been promoted from the form. When the user opened the form, the "open form" rule automatically switched to that view and the user had a nice little summary status.

</канец>

Падпісацца на мой блог.

Выкарыстанне семафораў ў канструктар рабочых працэсаў SharePoint па прадухіленні Бясконцыя цыклы

It’s possible to cause an endless loop in a SharePoint Designer workflow. A common implementation pattern like this causes the problem:

  • Стварэнне працоўнага працэсу і звязаць са спісам.
  • Паказаць, што яна павінна пачацца на стварэнне новых пунктаў і абнаўленне існуючых элементаў.
  • A step in the workflow updates a field in "Current Item".
  • Так як бягучы элемент зменены, працоўны працэс пачынаецца зноўку.

Каб прадухіліць гэта бясконцы цыкл, рэалізацыі простага семафора:

  • Дадаць слупок сайта (або калонкі ў спіс / бібліятэку, калі вы не выкарыстоўваеце тыпы кантэнту).
  • Схаваць ад старонкі рэдагавання (лёгка зрабіць, калі сайт калону праз яго ўласцівасці, не так проста, калі слупок спісу).
  • У працоўным працэсе, праверыць, калі значэнне семафора слупок застаецца пустым.
  • Калі яна пустая, ўсталяваць яго на не абы-значэнне і перайсці.
  • Калі гэта не пустая, выйсці неадкладна.

Гэта можа стаць даволі тонкія рашэння, у залежнасці ад патрабаванняў бізнесу і г. д., але гэта быў рэальны карціна, калі я меў патрэбу ў ім.

</канец>

Падпісацца на мой блог.

Распрацоўшчыкі: Як навучыцца SharePoint?

АБНАЎЛЕННЕ: 04/25/08: Наганяў некаторых блогах і знайшоў спасылку на гэты артыкул: http://www.networkworld.com/news/2008/032608-microsoft-sharepoint.html?page=1. I make note of it because in addition to asking, "how do I learn sharepoint?", some people ask "why should I learn sharepoint?". That article partly answers the later.

У апошнія некалькі месяцаў, тузін або больш людзей з усёй планеты былі па электроннай пошце і просяць мяне агульны пытанне, "How do I learn SharePoint?"

Я наўрад ці аўтарытэтная, але ў мяне быў некаторы поспех (і спрабуе атрымаць лепш ўвесь час) so I thought I’d document my personal road map. Others may find it valuable.

Перш чым зрабіць гэта, Я проста хачу заўважыць, што гэта для мяне відавочна,, на аснове гэтых асабістую электронную пошту і яшчэ большая колькасць MSDN / SharePoint універсітэта пасад таго ж характару, that there is huge developer interest in getting up to speed with WSS/MOSS. I wonder what it’s going to be like a year from now … лягчэй знайсці добры талент SharePoint? The same? Are folks committing themselves to the platform at a rate sufficient to keep up with demand for good resources? How could you even figure something like that out short of a WAG?

Паўла Дарожную карту

I was full time employed by the good folk at Conchango while I followed this road map. This means that from a learning perspective, I was actively engaged in projects as I followed the steps I outline below.

Некаторыя асноўныя паняцці

Для людзей, якія паступаюць у гэты свет, ёсць два ключавых Скарачэнні:

  • WSS: Windows SharePoint Services
  • MOSS: Microsoft Office SharePoint Server

WSS is "free" ў гэтым, гэта ў камплекце з Windows Server 2003 (або па крайняй меры могуць быць запампаваныя з MS). I put quotes around free because you need a box, сапраўдны O / S ліцэнзію і, верагодна, SQL (though there’s a "free" выгляд SQL, а).

MOSS is built on top of WSS and extends it. There is no MOSS without WSS. MOSS is not free.

Магчыма, не адзін дзень, але неўзабаве пасля таго як вы атрымалі некаторыя базавыя веды платформы, it’s important to learn the differences. Напрыклад, магутны вэб-часткі, Web Content частка запыту, is a MOSS feature and not available WSS. People often make the incorrect assumption that CQWP is available in WSS and then end up scrambling for a stop-gap measure when they realize their error.

Хіт Кнігі

I started working with WSS/MOSS on about 01/02/2007. I had a little prior experience with SPS 2003 but very little. To get myself started, Я купіў дзве кнігі, пералічаныя тут (http://paulgalvin.spaces.live.com/lists/cns!1CC1EDB3DAA9B8AA!203/).

I started with the big blue administration book. Naturally, it covers administration. У той жа час, яна забяспечвае агляд ўсіх функцый MOSS (WSS і функцый, а таксама).

Для мяне, гэта не так ужо важна памятаць усе розныя дэталі (ня пакуль не прыйшоў час, каб прайсці сертыфікацыю) but it’s good to know the boundaries. (Я прытрымліваюся гэтага ж падыход у першыя шутэры я гуляю на Xbox або ПК — I enter a room and tend to make a counter-clockwise loop until I get back where I started. I just feel better knowing the shape of the box I’m in.)

Пасля чытання кнігі вялікі сіні, I would read the entire Inside WSS book. It dives deeply into issues that developers care most about.

Стварыць віртуальную сераду

Для таго, каб зрабіць любога развіцця або належным чынам выкарыстаць навакольнае асяроддзе, вам патрэбен поўнафункцыянальны сервер аперацыйнай сістэмы з SharePoint Designer, Visual Studio 2005 (2008 завод, але некаторыя карысныя інструменты да гэтага часу не партаваны на момант напісання гэтага артыкула), InfoPath 2007 and some other stuff. There are many good blog entries describing this process. I’d have a look at these two:

У дадатак, Эндру Коннелл падзяліўся сваім вопытам з VMWare тут:

Use your favorite search engine to see what other people do. It’s a useful learning exercise in and of itself.

Spend a few minutes angrily denouncing the fact that you need a server environment on which to do development. Але … don’t bother blogging about it or posting it to MSDN forums. It’s already been done 🙂. Замест, embrace it and move on. You’ll be better off for it.

Прайсці сертыфікацыю

Я лічу, што MS SharePoint шляхам сертыфікацыі, які складаецца чатырох экзаменаў, is exhaustive. I suggest that you follow their online preparation guide and do your best to understand each of the areas of the test.

Я ня suggest that you take the exam just to pass it. Я ня suggest that you use one of the "brain dump" style 3rd party "tools" for passing MS tests. If you can take the test, перадаць яго на аснове спалучэння уласных даследаванняў і накіраваны практычны вопыт, Вы будзеце мацней распрацоўшчык і кандыдата на працу ён.

There are four tests in two "tracks":

Распрацоўшчык:

Адмін:

I recommend that developers study for all of these exams. You’ll be strong for them, хоць я мяркую, што калі вы прапусцілі адміністратара экзаменаў, вы атрымалі б.

Я выявіў, што WSS версіі будзе значна больш складанай, чым адпаведныя версіі MOSS, much to my surprise. I was in a class recently and several others made the same point.

Пакуль я рыхтаваўся да 70-542 экзамен (MOSS развіцця) I tracked my study resources. These may be helpful to you as well: http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!192.entry

Падлучыце сабе ў супольнасці

Супольнасці SharePoint з'яўляецца дынамічнай, моцным і расце больш ўвесь час.

Вы хочаце паглядзець на наступны, каб пачаць:

  • Блогі
  • Форум
  • Codeplex
  • Шчэбет

Блогі

Калі вы не разумееце RSS, stop everything and learn it. It will take 10 хвілін, каб даведацца яго, Можа быць, іншы 10 хвілін, каб знайсці вэб-RSS Reader (Мне падабаецца чытачу Google,, www.google.com / чытач).

Start by adding this blog to your RSS reader 🙂

Наступны, дадаваць www.sharepointblogs.com to your reader. They aggregate many blogs into a single feed.

Праз некаторы час, you’ll find blogs that are not aggregated that way. Just add them individually.

I subscribe to a few dozen blogs which I’ve accumulate over the last year. Калі вы хочаце, Я магу экспартаваць спіс і адправіць яго.

У канчатковым рахунку, you may want to start your own blog. I personally think that a series of blog entries describing a "newbie’s" прагрэс навучання WSS / MOSS будзе цікавая серыя. Шкада, што я зрабіў гэта сам.

Форум

Я актыўна ўдзельнічаю ў двух групах форуму: MSDN і SharePoint універсітэта.

Forums are excellent places to learn. People ask questions ranging from the very simple ("How do I create a site column") ў паніцы ("My server is down!") больш гіпатэтычныя пытанні дызайну.

Як толькі вы атрымаеце водар навакольнага асяроддзя, venture out and start replying. Short of directly interacting with a customer, няма нічога лепш, чым гэта для рукі на вопыт.

Codeplex

Да www.codeplex.com.

Праверце гэта і пошук праектаў SharePoint.

Падпішыцеся на штодзённы інфармацыйны паток рэзюмэ Codeplex у праграме чытання стужак.

Дадайце любыя новыя праекты SharePoint на Ваш канал чытача.

У канчатковым рахунку, пасля чытання форумаў і ўніз уласны WSS / MOSS дэманы, разгледзець пытанне аб стварэнні сумесна ўласнага праекта CodePlex.

Шчэбет

Пакуль я пішу гэты запіс у блогу, мноства народных SharePoint пачалі выкарыстоўваць Шчэбет.

It’s hard to characterize Twitter. You’ll just have to check it out yourself.

Заключэнне

That wraps up my roadmap and makes me current. I just started using Twitter two weeks ago.

WSS/MOSS is a very cool platform and the community is growing all the time. Use community resources to improve your skills and enjoy the journey!

</канец>

Падпісацца на мой блог.

Technorati Тэгі: ,

Data Protection Manager: Здаецца, выдатны Рэзервовае капіраванне SharePoint / Рэгенерацыя рашэння

На Нью-Джэрсі SharePoint User Group сустрэча на мінулай ноччу, Microsoft Sr. спецыяліст па прадуктах Duwayne Харысан прадставіў Microsoft Data Protection Manager 2007. DuWayne was great (і ён быў падтрыманы адным ці двума калегамі з аўдыторыі, чые імёны я не памятаю). Вы можаце атрымаць прэзентацыйныя матэрыялы тут.

Аж да мінулай ночы, Я ніколі не чуў пра DPM.

Я не сістэмны адміністратар чалавека тыпу, so I’m writing this from SharePoint consultant’s perspective and may get some of the words wrong. Мне, DPM is a backup/restore solution for Microsoft "stuff":

  • Файлы
  • SQL
  • O / S
  • Віртуальныя машыны (жыць рэзервовую копію віртуальнай машыны, нават калі віртуальная машына працуе сама Unix).
  • Аднаўленне зыходнага стану (I.E. сур'ёзнай непаладкі з абсталяваннем).

Акрамя гэтага матэрыялу, which I would consider to be minimal requirements for any kind of "real" рэзервовае капіраванне / аднаўленне прадукту, DPM also has built-in intelligence for SharePoint. It understands about server farms and lets you restore:

  • Цэлыя базы дадзеных (e.g. ўтрыманне, конфіг, і г.д.).
  • Сямейства сайтаў
  • Індывідуальныя сайты
  • Асобныя элементы (e.g. дакументацыя).

The actual restore process involves extracting the target data from the backup and save it into a "restore farm" а затым адтуль, перамяшчаючы яго ў вытворчай асяроддзі (ці там, дзе вы хочаце аднавіць). I think this is seamless, but there was a lot of emphasis on the need for a "restore farm". The restore farm does not need to match the production environment in every particular (галоўным чынам у фізічнай тапалогіі) але ён павінен супадаць з пункту гледжання шаблоны, версіі, і г.д..

Я не бачыў поўнага канца ў канец дэма, but DuWayne did show screen shots and some live demos. It seems to be as good as it needs to be, at least for a moderate sized environment.

I was particularly struck by the pricing. Obviously, don’t hold me to this, but I believe that the most expensive pricing is roughly as follows (in USD):

  • $600 for DPM itself.
  • Hardware for a DPM server (and associated stuff for media and all that).
  • $450 for each server you want to back up ("enterprise" license).

A five server farm would cost at most:

  • $600 for DPM
  • $450 X 5 servers = $2,250

Total cost in licenses: $2,850

In practice, it would be less. You wouldn’t necessarily need to have DPM installed on each web front end, напрыклад. You don’t necessarily need enterprise licenses either.

The user interface is seems very simple probably would not require any special training to get up to speed. I did ask about that specifically and there is apparently a 1.5 Дзень класа даступныя, хоць гэта не відавочна для мяне, што хто-то сапраўды трэба ўзяць яго.

У цэлым, Я думаю, што гэта, безумоўна, заслугоўвае вывучэння, калі вы там шукаеце рашэнне абароны дадзеных для SharePoint.

</канец>

Падпісацца на мой блог.

Technorati Тэгі:

Шчэбет: http://twitter.com/pagalvin

Прахадных: Выправіць Навучанне персаналу Шаблон Даступныя Unregister месцаў памылка

Як многія ведаюць,, Шаблон Навучанне персаналу якія прадстаўляюцца Microsoft тут ёсць памылка, што мы можам прайграць наступныя дзеянні:

  • Стварыце клас з Максімальны памер 10 студэнтам.
  • Рэестр –> Total available seats properly decrements by one. Вынік: 9 даступных месцаў.
  • Адмяніць рэгістрацыю: –> Bug. Total available seats should increment by one. It does not. Вынік: 9 Запаўняльнасць месцаў у адпаведнасці з SharePoint, але на самой справе, маюцца 10 даступных месцаў.

Рашэнне: Выкарыстанне SharePoint Designer выправіць працоўны працэс.

Першы, open up the site. The folder list for me looks like this:

малюнак

If we have a look at the "Attendee registration" працоўны працэс, we see that there is a step labeled "Enforce seating policy". It looks like this:

малюнак

This step in the workflow updates the item by incrementing the "Filled Seats" metadata column on the course. If we pull that up in more detail, мы бачым гэта:

малюнак

Гэта ўсё, што інфармацыя, якую мы павінны выправіць працоўны працэс адмены рэгістрацыі.

Калі перавярнуць ў працоўны працэс адмены рэгістрацыі, there is no similar workflow step. Add it as follows:

1: Expand "Attendee unregistration" і адкрыць XOML (гл. першы здымак экрана, калі вы страцілі).

2: Дадаць новую зменную працоўнага працэсу, "New Filled Seats" of type "Number".

3: Assign a value to "New Filled Seats" як паказана на малюнку:

малюнак

4: Памяншаем Запоўненыя размеркаванне месцаў 1:

малюнак

5: Абнавіце адпаведны пункт курс:

малюнак

6: Make sure all the steps are in the right sequence. Для мяне, гэта выглядае так:

малюнак

7: Скончыць працэс зноўку будаваць яго.

8: Тэст.

</канец>

Падпісацца на мой блог.

Technorati Тэгі: ,

Выпадковыя Раніца суботы Назіранне

Я быў у гэтых класах апошнія два тыдні, і адна рэч, якая мяне дзівіць тое, што ёсць шмат ўдумлівы, разумныя людзі, якія працуюць на SharePoint (ў якасці кансультантаў або ІТ-персанал) хто не блог, шчабятаць, таксама вядома пра грамадскія форумы, як MSDN форума або SharePoint універсітэта, падтрымліваць Facebook або LinkedIn профіляў, і г.д.. They are pure information consumers. Not bad, проста цікава.

</канец>

Technorati Тэгі:

Падпісацца на мой блог.

Codeplex & RSS

Не ўпэўнены, што ўсе разумеюць,, CodePlex, але мае добры Штодзённыя абнаўлення RSS карміць , Што я лічу вельмі карысным.
У дадатак, усе праекты CodePlex маюць свае ўласныя каналы.
Кожны дзень, Я праглядаю праз яго і дадаць любыя праекты, звязаныя з SharePoint’ каналы для майго чытача Gmail.
</канец>

Запыт змесціва вэб-часткі: Выступаючы на ​​Нью-Ёрку група карыстальнікаў SharePoint

Я буду гаварыць з маім калегам, Наталля Васкрасенская, на Нью-Ёрк SharePoint Users Group пасяджэнні ў сераду 7 мая.

Дзякуючы Боб Фокс для кідання нашы імёны ў капялюш і дапамагаючы нам атрымаць гэтую магчымасць!

Наша агульная тэма Web Content частка запыту, і мы спадзяемся, каб даць некаторую карысную інфармацыю да двух розных аўдыторыях:

  • Бізнес-карыстальнікі (ня-распрацоўнікаў): Пакажыце, як CQWP можа быць сканфігураваная для вырашэння некаторых агульных праблем бізнесу без праграмавання.
  • Распрацоўшчыкі: Show how CQWP can be extended to do some pretty interesting things that a business user wouldn’t normally feel comfortable doing themselves. This part of the presentation will help business users understand what’s possible using this web part so that they can provide better and more realistic requirements to their developer partners.

Тут NYSPUG паведамлення па пошце ў пачатку гэтага тыдня:

"Using Content Query Web Part to Solve Business Problems".

MOSS 2007’s Content Query Web Part (CQWP) дазваляе карыстальнікам ствараць наладжвальныя прадстаўлення дадзеных запытваюцца з многіх крыніц, і прадставіць гэтыя дадзеныя ў адным месцы. Нягледзячы на ​​свой магутны запыт & варыянты удакладнення зместу, CQWP часта недаацэньваецца і выйшла функцыю. CQWP is both a "data extraction engine" (знайсці дакументы або элементы спісаў ў любым месцы ў сямействе сайтаў) а таксама першакласныя прэзентацыі інструмент, які дазваляе карыстальнікам кіраваць тым, як кантэнт прадстаўлены, абгарнуўшы HTML і стыляў, каб адфарматаваць адлюстраванне амаль як вам заўгодна.

У гэтай дэма-сесіі цяжкіх, яны пакажуць, як выкарыстоўваць CQWP для вырашэння праблем бізнесу, паказаўшы асноўныя функцыі.

  • выкарыстанні функцый змаўчанні CWQP, у тым ліку мэтавай аўдыторыі

  • use CWQP as a reporting tool anywhere in a site collection via filter criteria such as "all documents created today".

  • змяніць выглядаць & адчуваю вынікаў запыту, каб вылучыць бізнес-дадзеных, паказаць дадатковых слупкоў інфармацыі, адлюстравання інфармацыі ў выглядзе табліцы, і іншыя.

  • паказаць, як CQWP можа дапамагчы ў змесце адміністрацыі тып (I.E. знайсці ўсе дакументы пэўнага тыпу ўтрымання, каб зразумець патэнцыйнае ўздзеянне змены КТ вызначэнні).

  • апісаць некаторыя абмежаванні CQWP

  • падаць спіс рэсурсаў для перадавых метадаў CQWP, уключаючы блогі, ECQWP Codeplex праекце & MSDN дакументацыя.

</канец>

Падпісацца на мой блог.

Хуткая інтэграцыя SharePoint: Выканання простага запыту

This is a continuation in my FAST coding mini-series for SharePoint folk. The bit of code below executes a search for the term "test" in FAST via a Console application. Obviously, гэта хопа, прапусціць і перайсці ад абгарнуць гэтую логіку ўнутры вэб-часткі ці старонкі прыкладання:

выкарыстанне Сістэма;
выкарыстанне System.Collections.Generic;
выкарыстанне System.Linq;
выкарыстанне System.Text;
выкарыстанне System.Collections.Specialized;
выкарыстанне Com.FastSearch.Esp.Search;
выкарыстанне Com.FastSearch.Esp.Search.Http;
выкарыстанне Com.FastSearch.Esp.Search.Navigation;
выкарыстанне Com.FastSearch.Esp.Search.Query;
выкарыстанне Com.FastSearch.Esp.Search.Result;
выкарыстанне Com.FastSearch.Esp.Search.View;
выкарыстанне System.Collections;

Прастора назваў Conchango
{
    клас InvokeSimpleFASTQuery
    {
        статычны ануляваць Асноўны(радок[] аргументы)
        {

            #рэгіён Ініцыялізацыя сувязі з ХУТКА
            ISearchFactory searchFactory;

            NameValueCollection NameValueCollection = новы NameValueCollection();

            nameValueCollection.Add("fastsearchengine", "Com.FastSearch.Esp.Search.Http.HttpSearchFactory");
            nameValueCollection.Add("Com.FastSearch.Esp.Search.Http.QRServers", "fastdemoback:15100");
            nameValueCollection.Add("Com.FastSearch.Esp.Search.Http.RequestMethod", "GET");

            searchFactory = SearchFactory.NewInstance(NameValueCollection);

            #EndRegion

             Запуск запыту

            радок Querystring = "test";

            Запыт Запыт = новы Запыт(Querystring);

            query.SetParameter(BaseParameter.Кластарызацыю, ілжывы);
            query.SetParameter(BaseParameter.Навігацыі, праўда);
            query.SetParameter(BaseParameter.NAVIGATION_DEEPHITS, 100);

            ISearchView SearchView;
            SearchView = searchFactory.GetSearchView("sharepointconn");

            IQueryResult Вынік = searchView.Search(запыт);

            Кансоль.WriteLine("Total results from search: [" + result.DocCount + "].");

            Int docCounter = 0;

            у той час як (docCounter < result.DocCount)
            {

                docCounter    ;

                IDocumentSummary thisDocSummary = result.GetDocument(docCounter);

                Кансоль.WriteLine("[" + docCounter + "]: " + thisDocSummary.GetSummaryField("url").Радковы параметр);

            } // у той час як

            Кансоль.ReadLine();
            #EndRegion

        }
    }
}

Ён генеруе наступны вынік:

малюнак

</канец>

Падпісацца на мой блог.

Technorati Тэгі: ,