Ինչպես troubleshoot խորհրդավոր SharePoint սխալները.

Overview:

Կարգաբերում, դժվար է, երբ զարգացող գործարկողի ֆունկցիոնալությունը է Windows SharePoint ծառայություններ 3.0 (WSS) կամ Microsoft Office SharePoint Server (MOSS). The main culprit is that SharePoint normally surfaces very little diagnostic information on the web browser when an error occurs. This blog entry describes how to locate additional system-generated diagnostic information that can often provide that extra bit of detail that one needs in order to identify root causes. This can then lead to solving the problem.

Ես օգտագործել այս մեթոդը մեծ հաջողությամբ լուծել այլ խորհրդավոր սխալները.

Մոտեցում:

SharePoint փրկում մեծ տեղեկությունների համար դիագնոստիկ մուտք տեղեկամատյանի ֆայլը եւ 12 փեթակ.

The "12 hive" is usually located at "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12". (Վստահ չեմ, եթե դա հնարավոր է 12 փեթակ է ապրել: Դուք էլ, փաստորեն).

Գաղափարն է տեղադրել ընթացիկ ֆայլը, force the error and then quickly open the log file. These log files are characterized by:

  • Copious amounts of information. SharePoint generates a very large amount of diagnostic information and writes it to that log file very quickly. You need to be quick with the fingers to capture it.
  • Multiplicity. SharePoint does not write to a single log file but rather generates multiple log files in sequence.
  • Պատճենեք եւ տեղադրեք լավ է MS Excel.

Իմ սիրած եղանակը:

  1. Բացել մի Windows Explorer մատնացույց անելով 12 փեթակ տեղեկամատյանները.
  2. Տեսակավորելու տեսարան ցույց է մոդիֆիկացված ամսաթվի (վերջերս է).
  3. Կարեւորում առավել ֆայլը.
  4. Մի վեբ բրաուզերի պատուհանում, ստիպել սխալ է տեղի ունենում.
  5. Արագ բացել ընթացիկ ֆայլը եւ պատճենը, դրա բովանդակությունը MS Excel.
  6. Անցնել, մինչեւ վերջ եւ վերլուծել համապատասխան գրառում.

Այլ Նշումներ:

Ըստ դեֆոլտի, դիագնոստիկ մուտք գտնվում է 12 փեթակ տեղեկամատյանները ցուցակում.

MS լավագույն փորձի (ace ի Mike T. Microsoft-) state that the log files should be saved to a separate hard drive. One does this via central admin. Your system administrator may have done this, որի դեպքում դուք ուզում ակնհայտորեն պետք է գտնել ֆայլը կա թե դեֆոլտի 12 փեթակ դիրքը).

Այս գրառումը անդրադառնում է այնպիսի հիմնախնդիրներ ինչպիսիք:

  • SharePoint workflow չի սկսել պայմանավորված է ներքին սխալ.
  • (ավելի է ժամանակի ընթացքում)
  • Այս գրառումը էր օգտակար ախտորոշելու workflow սխալները (e.g. "The workflow failed to start due to an internal error").

MOSS: Արդյունավետ Պահեստավորված Կազմակերպության

(Այս գրառումը խաչը տեղադրվել է http://paulgalvin.spaces.live.com/blog/ իսկ http://blogs.conchango.com)

Այդ դիտել այս կայքում են իմ սեփական եւ պարտադիր չէ, որ Conchango դիրքերը, ռազմավարությունների եւ կարծիքները.

Overview:

Այս գրառումը նկարագրում որոշ տեղեկություններ է մեծ (3,000 ալբոմներ) Microsoft Office Sharepoint Server (MOSS) rollout and what we did to get the project rolling in such a way that the client is happy and firmly down a path that ends with full adoption of the MOSS feature set. As of the writing of the entry, մենք մոտ 50% complete with the first phase of the project. As things progress, Ես է այս մուտքի եւ / կամ գրել նոր գրառում.

Այս կոնկրետ գործով, the company had already installed SharePoint Portal Server 2003. The IT group installed the product in a sort of "let’s see if anyone cares" fashion. It was quickly adopted by many business users and became quite popular in the enterprise at large. Ինչպես կարող եք պատկերացնել, սա ոչ թե լավագույն rollout ռազմավարությունը (որը հաճախորդը հեշտությամբ ընդունում) եւ երբ MOSS ժամանել է դեպքի վայր, the client resolved to "do it right" եւ վարձու մեզ օգնել.

Մեկը կենտրոնական հարցերից կանգնած է մեզ, երբ մենք սկսեցինք իրականացնել այս նախագիծը եղել է: Ինչպես ենք մենք ներկայացնում MOSS այս հաճախորդին? Given that the client already had experience with SharePoint, Մենք մտածել — do we need to do "differential" վերապատրաստումը, կամ մենք սկսենք գետնին մինչեւ? After working with key users, we determined that treating this as a green field project made more sense.

That decision gave a starting point but still left us with the major requirement of figuring out a good strategy for rolling MOSS out to the enterprise. MOSS is such a big animal … it includes content management, Փաստաթղթաշրջանառության կառավարման, որոնել, անվտանգություն, լսարանը նպատակադրման, Ծրագրի կառավարում, "fabulous forty" կաղապարներ, աշխատանքի արդյունքում, բիզնես տվյալների միակցիչ, եւ այլն:. Couple this with the fact that it’s a large organization that կարող իսկապես օգտվել գրեթե յուրաքանչյուր խոշոր MOSS հնարավորությունը, եւ դուք ունեք մի մեծ ծրագրի makings է ձեռնարկության հասնել, եւ շատ լավ բաներ happening.

Մենք բախվում այս հարցով ժամանակի եւ ժամանակի կրկին … MOSS ունի ձեռնարկության հասանելիության իր ձեռնարկության feature-set, բայց նույնիսկ փոքր - ինչ բարդ հաճախորդները ունեն ծանր ժամանակ մտավոր կլանող այն հատկանիշները, թող մենակ ներառում է գնահատելի խմբակցության նրանց մեջ իրենց առօրյան.

I don’t have a magic solution to the problem. I instead address just the very first steps that we’ve taken with the client to lead them down the path to successful long-term adoption.

Շրջանակ:

As much as I wanted the team to craft a project plan that included such milestones as "PoepleSoft Integration via BDC Completed", "New Cross-Departmental Product Launch Workflow Complete" and "Executive Management KPI’s Accepted", I had to settle for something less. This is not to say that "less" վատ. Ի դեպ, the "less" that we decided for the initial rollout was miles ahead of where they were before we started. Մեր դեպքում,, the "less" վերածվեց:

  • Simple Փաստաթղթաշրջանառության կառավարման կիրառման փաստաթուղթը գրադարաններ, version control and content types.
  • Արդյունավետ որոնման հիմնված բովանդակության տեսակների եւ անհատական ​​որոնում (միջոցով հաջողվել հատկությունների, XSLT արտադրել գեղեցիկ արդյունքները, եւ այլն:).

Ի լրումն վերը նշված ձեռնարկությունների լայն հնարավորությունները (նշանակում է, որ նրանք պետք է ուղղում բոլոր վարչությունների եւ օգտագործողների), մենք ավելացրել հետեւյալ SINGLETON in-շրջանակը մինի - ծրագրեր:

  • Proof հայեցակարգի BDC ինտեգրման.
  • Multi-քայլ եւ բազմամյա մասնաճյուղ workflow գործընթացը ստեղծված միջոցով SPD.
  • Complex InfoPath ձեւ.
  • Surfacing KPI-ի համար ինչ - որ բիզնես գործընթացների (հավանաբար HR տաղանդը ձեռքբերումը մեր դեպքում, չնայած, որ կարող է փոխել).

Շրջանակը այստեղ չէ, 100% accurate but representative of our approach and sufficient for my purpose here, which is to explain what I consider to be an "effective" ներդրում MOSS որը սահմանել է հաճախորդին ամուր է ոսկե ճանապարհին ամբողջական MOSS ընդունմանը.

I won’t write much more about the singleton in this entry. I do want to point out that these are part of our over-arching strategy. The idea is to implement the core document management and search features to all users yet provide highly functional, high visible and highly representative examples of other core MOSS features which are simply beyond the ability of most users to absorb at this early stage. Սակայն, they will be "out there" եւ հուսով է, որ մյուս գործարար միավորներն են իմանալ, թե իմանալ դրանց մասին եւ ցանկանում է այդ հնարավորությունները իրենց համար, leading to greater adoption. These singleton success stories also serve to provide our sales team "ammunition" եւ հաջողությամբ հաղթելու երկրորդ, third and n-phase projects.

Ինչ ենք ներդնել եւ ինչու?

Որոնք լուծել Փաստաթղթաշրջանառության կառավարման եւ որոնել որպես բազային ձեռնարկության - լայն պահանջ, we needed to start gathering details. As a practical matter, Այս ծավալվեցին հասկանալու իրենց փաստաթղթերը, եւ որ ի վերջո mapped հասկանալու բովանդակության տեսակի.

I’ve found it’s difficult to explain content types without visual aides. More technical folk can walk away from a discussion about content types when CT’s are described in database terms. "A CT is similar to a database table, այն ունի սյուներ եւ սյուներ են սահմանվում առումով տվյալների տեսակների, բայց CT տվյալների տեսակները ներառում են ավելի քան պարզ թիվ / ամսաթիվը, but also "choice" and "lookup" and the like." We can talk about "extending" բովանդակության տեսակ, much like one can inherit functionality from a base class in object oriented languages. However this is obviously not helpful for the transportation department admin person who has no technical background. Այսինքն,, գրեթե բոլորն են, որ կարեւոր է MOSS rollout.

Using a white board is iffy. I’ve presented the idea of a content type and drawn brilliant (կամ նրանք կարծես) լուսանկարները բովանդակության տեսակների, եւ ինչ են անում ձեզ առումով որոնելու եւ թե ինչպես նրանք կարող են ընդլայնվել, եւ այլն:. Վերջում, դա զգում են լույսի էլեկտրական լամպ են վառեց, but the resulting white board picture is a mess.

Դա հանգեցրել է մեզ մեր ներկա եւ այնքան հեռու առավել արդյունավետ նավամատույց: ա MOSS ավազամանը site կազմաձեւվել ցուցադրել այդ հատկանիշները.

Օգտագործելով Sandbox կայքը, Մենք ցույց:

  • Բովանդակության տեսակներ:
    • Ստեղծելով CT բազմաթիվ տվյալների տեսակների (տեքստ, ամսաթիվ, ընտրություն, Բուլյան, lookup, եւ այլն:).
    • Ընդլայնումը եւ CT ստեղծելով նոր CT հիման վրա ծնող.
    • Որոնում Փաստաթղթերի օգտագործելով CT մետատվյալներ.
  • Փաստաթղթերի որոնում:
    • Associating մի CT հետ գրադարան.
    • Ինչ է տեղի ունենում, երբ մենք վերբեռնեք փաստաթուղթ այդ գրադարանին?
    • Associating բազմակի CT ի հետ doc գրադարան.
    • Ինչ է տեղի ունենում, երբ մենք վերբեռնեք փաստաթուղթ այդ գրադարանին?
    • Զտիչ եւ տեսակավորման միջոցով սյունակի Դուք մի doc lib.
    • Փաստաթղթերի գրադարանի դիտում:
      • Տեսակավորում
      • Խմբավորումը
      • "Quick entry" (տվյալների թերթիկ տեսք)
      • "Untagged data" (աջակցել է արտագաղթի MOSS այլ բովանդակության աղբյուրներից; այլ այս է ստորեւ).

The Sandbox Site:

Մենք մշակել ենք Sandbox կայքը լինել մշտական ​​խաղարկային զարգացման միջավայր, որոնք պետք է օգտագործել ուսուցման նպատակներով երկար հետո մենք ավարտել ծրագիրը ներառում է մի քանի artifacts ինչպես նկարագրված:

Բովանդակության տեսակներ:

Մենք սահմանել հետեւյալ բովանդակությամբ տեսակները: Ապրանքագիր, Գնման պատվերի, Ծառայություններ հաշիվ - ապրանքագրերի.

Մենք ընտրել հաշիվ - ապրանքագրերի, եւ գնման պատվերի, քանի որ նրանք կարող են քիչ թե շատ համընդհանուր տակ
stood entities. Everyone in business understands that an invoice is a demand for payment to a հաճախորդ համար գումար տրված որոշակի ամսաթիվ որը պետք է վճարվի ըստ որոշ վճարման պայմանները. This leads to a natural definition of a CT which we called "Training Invoice" (տարբերել այն որեւէ այլ տեսակի հաշիվը). The purchase order is similarly easily defined. We also created a "Training Services Invoice" by creating a new CT based upon the "Training Invoice" CT, եւ ավելացրեց միայն մեկ սյունակ, "services rendered".

With վերոնշյալ, մենք կարող ենք այժմ ցույց տալ որոշ առանցքային հատկանիշները CT է, առանց ստանալու bogged են փորձում բացատրել, վերացական հասկացությունը առաջին; everyone already understands what we mean by "invoice" and "purchase order" եւ դրա փոխարեն կարող է կենտրոնանալ մեխանիկայի եւ CT մեջ.

Պատվերով ցուցակներ:

CT with columns of type "lookup" point to a custom list or document library. We use this extensively and for the sandbox, we created one supporting custom list that contains customers. We picked customers because it’s an easy concept to understand and easy to demonstrate. The Invoice CT has a column, "customer" that is defined of type "lookup" that points at this list.

We created a similar custom list to manage "vendors" for the "Purchase Order" CT.

Փաստաթղթերի որոնում:

Մենք ստեղծել ենք երկու փաստաթուղթը գրադարաններ: "Invoices" and "Mixed Documents".

We configured the invoices document library to manage only documents of CT type "Invoice".

We configured the "Mixed Documents" Գրադարանային կառավարել բոլոր երեք CT է.

Ստեղծել տարաձայնություններ, որոնք ցույց տեսակավորում, զտիչ, Տվյալների թերթ եւ խմբավորում.

Որոնել:

Մենք սահմանել երկու նոր հաջողվել ունեցվածքն ու mapped նրանց հաշիվը համարը եւ Հաճախորդի.

We created a new customized advance search site and modified it to enable users to search for "invoices" օգտագործելով այդ երկու mapped հատկությունները.

Փոփոխությունները XSLT որպեսզի հաշիվը եւ հաճախորդների թվի, երբ առկա, appear in an HTML table in a bright color. The objective here is to demonstrate that such formatting is possible.

Դնում միասին:

Մենք կազմակերպում բառ օգտվողները մասնակցելու ցուցադրություն.

Մենք հետեւում ենք այս պարզ սցենար:

  1. Նկարագրեք իմաստը եւ նպատակը մի CT, օգտագործելով հաշիվ - ապրանքագրերի եւ գնման պատվերներ, ինչպես օրինակ.
  2. Ցուցադրել ապրանքագիր CT սահմանումը միաժամանակ վստահեցնելով, որ նրանք պետք չէ օգտագործել այդ էկրաններ են, պարզապես վերցնել հասկացությունները.
  3. Գնալ դեպի հաշիվ ապրանքագրեր փաստաթղթի գրադարանի.
  4. Վերբեռնել փաստաթուղթը.
  5. Ցույց տալ, որ հաճախորդը բացվող իսկապես sourced է մաքսային ցուցակից.
  6. Ավելացնել նոր հաճախորդին, ինչպես նաեւ հաճախորդի ցուցակում, ապա թարմացնել Վերջին Ավելացվածները հաշիվը ծանոթյություններ Meta տվյալների հետ նորաստեղծ հաճախորդի.
  7. Switch to the "mixed documents" library and upload a document. Explain how the system prompts for a document type.
  8. Go back to invoices document library and show how clicking on a column name changes sort order.
  9. Ցուցադրել սյունակ մակարդակի զտիչ.
  10. Ցույց տալ տարբեր տեսակետներ, որ ցույց բազմաստիճան դասավորում, զտիչ եւ խմբավորման.
  11. Ցուցադրել տվյալների թերթիկ տեսակետը.
  12. Explain the purpose of a "untagged documents" դիտել.
  13. Անցնել անհատական ​​Ընդլայնված որոնում.
  14. Առայժմ, Վերջերս Վերբեռնման փաստաթուղթը պետք է տարածման եւ ինդեքսավորվում, որ կատարել որոնում, որը ցուցաբերում կարողությունը կմնա այդ ապրանքագիր միջոցով mapped գույքի.
  15. Մենք ցույց տալ տարբերությունը որոնման միջոցով mapped հատկությունների vs. մի տեքստում.

Այս պահին, we are more or less done with the demo. It seems to take about 30 դեպի 45 րոպե, կախված նրանից, թե որքան մարդ է հարցեր տալ.

We then send them back to their desks with "homework". This consists of a simple excel spreadsheet where we ask them to define for us what they think they need in terms of CT’s, այնպես էլ բարձր մակարդակի վրա (պարզապես անունը եւ Գործնական Առիթ) as well as columns and type of data they would store in the column. We don’t ask them to define column data types in MOSS terms, but business terms.

Ամփոփելով:

We’ve created a sandbox environment that we can use to demonstrate some core MOSS features whose appeal are enterprise-wide.

We have modeled easily understood and common business entities so that users can focus on MOSS and not get bogged down on the entities / օրինակներ իրենք.

Business users walk away from theses sessions with "homework" տեսքով Excel փաստաթղթեր, որոնք նրանք պետք է իրավասու լրացնել եւ օգտագործել նախագծման իրենց առաջին cut բովանդակության տեսակի.

Վերջապես, քանի որ մենք կատարել դեմո ժամանակի, Հաճախորդի թիմի անդամները իրենք ավելի կարողանում տանել առաջ, անել դեմո - ի իրենք եւ, ընդհանրապես, ազատ մինչեւ մնացած մեզ է աշխատել ավելի բարդ խնդիրների, ինչպիսիք են գլոբալ taxonomy, համալիր workflows, BDC եւ այլն.

Learning արագաշարժ // Scrum

I asked for some advice today on good resources for getting started with learning Agile and Scrum. Here is a summary of the response. I trust the sources but I don’t know that this is comprehensive (Համոզված եմ, որ դա չէ).

Ես կարող եմ transcribed որոշ սա սխալ.

Multiple people provided responses and Agile Project Management by Ken Scwaber is the consistent "first dive" հանձնարարական.

Անձերի:

  • Ken Schwaber
  • Mike Cohn

Գրքեր:

  • Արագաշարժ Project Management հետ Scrum Ըստ Ken Schwaber.
  • Նիհար Ծրագրավորում: An արագաշարժ Toolkit համար Ծրագրային ապահովման մշակում `կառավարիչների Ըստ Mary-ի եւ Tom Poppendieck.
  • "anything by Mike Cohn"
  • Արագաշարժ Հետահայաց Ըստ Ken Schwaber, Diana Larsen, Esther Derby.

Հղումներ:

Craig ցուցակում աշխատել լավ է ինձ համար

Ես տեղադրել եմ դասակարգվում գովազդ վաճառելու իմ մեքենան Bergen կոմսություն, NJ on Sunday night. I received several inquiries via email shortly thereafter and closed the deal with someone on Tuesday night.

Գրեթե չափազանց լավ, որ ճշմարիտ է …

MOSS ընդլայնված որոնում Customization — Case չի հարցը Ընդլայնված որոնում XSLT

Ես չեմ փոփոխել Ընդլայնված որոնում XSLT շատ հաճախ, ուստի կարծես ես բարձրանում փոքր HILLS ամեն անգամ.

Իմ նորագույն դասը սա: Case կարեւոր է, երբ հիշատակում սյունակում. Իմ ընդլայնված որոնում, Ես սյունյակները սահմանել, քանի որ այս:

<արմատ xmlns:xsi="http :/://www.w3.org/2001/XMLSchema-instance">
<
Columns>
<
Սյունակ Անուն="GafTrainingInvoiceNumber" />
<
Սյունակ Անուն="GafTrainingInvoiceLocation" />
<
Սյունակ Անուն="WorkId"/>
<
Սյունակ Անուն="Դաս"/>
<
Սյունակ Անուն="Վերնագիր"/>
<
Սյունակ Անուն="Հեղինակ"/>
<
Սյունակ Անուն="Չափ"/>
<
Սյունակ Անուն="Ճանապարհ"/>
<
Սյունակ Անուն="Նկարագրություն"/>
<
Սյունակ Անուն="Գրել"/>
<
Սյունակ Անուն="SiteName"/>
<
Սյունակ Անուն="CollapsingStatus"/>
<
Սյունակ Անուն="HitHighlightedSummary"/>
<
Սյունակ Անուն="HitHighlightedProperties"/>
<
Սյունակ Անուն="Contentclass"/>
<
Սյունակ Անուն="IsDocument"/>
<
Սյունակ Անուն="PictureThumbnailURL"/>
</
Columns>
</
արմատ>

The XLST որը ցուցադրում հաշիվը համարը եւ հաշիվ - ապրանքագրերի գտնվելու վայրը եղել:

<Սայլակ>
Training Invoice Number: <xsl:արժեք է ընտրել="GafTrainingInvoiceNumber"/>
<
BR></BR>
Training Invoice Location: <xsl:արժեք է ընտրել="GafTrainingInvoiceLocation"/>
</
Սայլակ>

Սակայն, Ընտրել է հղում գույքը բոլոր ստորին դեպքը, ինչպես:

<Սայլակ>
Training Invoice Number: <xsl:արժեք է ընտրել="gaftraininginvoicenumber"/>
<
BR></BR>
Training Invoice Location: <xsl:արժեք է ընտրել="gaftraininginvoicelocation"/>
</
Սայլակ>


Until I corrected that, search results showed the labels (i.e. "Training Invoice Number") but no data.

MOSS: Ֆունկցիոնալ Օրինակ - Custom Data Type

Բիզնես Սցենար:

Enterprise - լայն կիրառումը MOSS արտադրական ընկերության հետ 30+ կայքեր եւ մի քանի տասնյակ կորպորատիվ վարչություններ.

Բիզնես Նպատակ:

Չնայած բազմաթիվ բիզնես խմբերի (ԲԱԺԻՆՆԵՐ, տեղերը, եւ այլն:), որոշ տվյալները պետք է պահպանվեն մի գլոբալ մակարդակով. Օրինակ,, հեղինակավոր վարպետ ցանկը բոլոր ֆիզիկական տեղաբաշխման ընկերության (e.g. արտադրական միջոցներ, պահեստային տեղերը, վաճառքի գրասենյակները) պետք է պահպանվի նաեւ կենտրոնական վայրում.

Տեխնիկական Problem:

Ձեռնարկությունը taxonomy իրականացվել, օգտագործելով մի քանի կայքի հավաքածուներ. Մենք սիրում է ստեղծել հեղինակավոր ցանկը ֆիզիկական վայրերում մաքսային WSS ցուցակում. Ապա, երբ մենք պետք է ունենանք սյունը մի բովանդակության տեսակի (կամ սյունակ է, որը ցուցակում կամ doc գրադարան) որ պարունակում կորպորատիվ վայրերը, we would create a column using the "lookup" datatype եւ կետն այս վարպետության ցուցակում.

Ցավոք,, lookup datatypes must access a source list "locally" նշանակում է, որ մեր հեղինակավոր ցանկը կարող span Տեղում հավաքածու.

Տեխնիկական Solution:

Իրականացնել նոր գործարկողի տվյալների տեսակն իրականացվում հիման վրա SPField եւ ներկայացված է որպես DropDownList է UI, որի ListItems բնակեցնել այդ վարպետի WSS ցուցակում.

Մենք ստեղծել ենք նոր կայքը հավաքածու կոչված "http://localhost/EnterpriseData". Կան, we created a custom list named "Corporate Locations". This list just uses the standard "Title" դաշտը պարունակում ցուցակը փաստացի կորպորատիվ վայրերում.

One հետեւում է դիսկրետ քայլերի ստեղծել գործարկողի տվյալների մուտքագրել WSS. Նրանք:

  1. Սահմանում դաս, որը ժառանգում են SPField (կարելի ժառանգել է այլ ոլորտներում, եթե անհրաժեշտ է).

Ահա կոդը համար:

հասարակություն դաս XYZZYCorporateLocationField : SPFieldText
{
հասարակություն XYZZYCorporateLocationField
(SPFieldCollection fields, լարային typeName, լարային displayName)
: բազա(fields, typeName, displayName) { }

հասարակություն XYZZYCorporateLocationField
(SPFieldCollection fields, լարային displayName)
: բազա(fields, displayName) { }

հասարակություն ոտնատակ տալ BaseFieldControl FieldRenderingControl
{
ստանալ
{
BaseFieldControl control = նոր XYZZYCorporateLocationFieldControl();
control.FieldName = սա.Ներքին Անունը;
վերադարձ control;
} //ստանալ
} // fieldrenderingcontrol

հասարակություն ոտնատակ տալ լարային GetValidatedString(օբյեկտ արժեք)
{
եթե (սա.Required || value.ToString().Հավասար(Լար.Դատարկ))
{
նետում նոր SPFieldValidationException ("Department is not assigned.");
}
վերադարձ բազա.GetValidatedString(արժեք);
} // getvalidatedstring

} // XYZZYCorporateLocation

  1. Սահմանել մեկ այլ խավի, որ ժառանգում են բազային դաշտային վերահսկողության, ինչպես:

հասարակություն դաս XYZZYCorporateLocationFieldControl : BaseFieldControl
{
պաշտպանված DropDownList XYZZYCorporateLocationSelector;

պաշտպանված ոտնատակ տալ լարային DefaultTemplateName
{
ստանալ
{
վերադարձ "XYZZYCorporateLocationFieldControl";
}
} // DefaultTemplateName

հասարակություն ոտնատակ տալ օբյեկտ Արժեք
{
ստանալ
{
EnsureChildControls();
վերադարձ սա.XYZZYCorporateLocationSelector.SelectedValue;
} // ստանալ
սահմանել
{
EnsureChildControls();
սա.XYZZYCorporateLocationSelector.SelectedValue = (լարային)սա.ItemFieldValue;
} // սահմանել
} // override object Value

պաշտպանված ոտնատակ տալ անվավեր CreateChildControls()
{

եթե (սա.Field == զրո || սա.ControlMode == SPControlMode.Ցուցադրել)
վերադարձ;

բազա.CreateChildControls();

սա.XYZZYCorporateLocationSelector =
(DropDownList)TemplateContainer.FindControl("XYZZYCorporateLocationSelector");

եթե (սա.XYZZYCorporateLocationSelector == զրո)
նետում նոր Բացառություն("ERROR: Cannot load .ASCX file!");

եթե (!սա.Page.IsPostBack)
{

օգտագործելով (SPSite site = նոր SPSite("Http :/://localhost / enterprisedata"))
{
օգտագործելով (SPWeb web = site.OpenWeb())
{

SPList currentList = web.Lists["Corporate Locations"];

ԲՀԿ (Թքել XYZZYCorporateLocation մեջ currentList.Items)
{
եթե (XYZZYCorporateLocation["Title"] == զրո) շարունակել;

լարային theTitle;
theTitle = XYZZYCorporateLocation["Title"].ToString();

սա.XYZZYCorporateLocationSelector.Items.Add
(նոր ListItem(theTitle, theTitle));

} // ԲՀԿ

} // using spweb web = site.openweb()
} // using spsite site = new spsite("Http :/://localhost/enterprisedata")

} // if not a postback

} // CreateChildControls

} // XYZZYCorporateLocationFieldControl

Վերը նշված կոդը հիմնականում իրականացնում է տրամաբանությունը եւ բնակեցնելու DropDownList հետ արժեքներով են WSS մաքսային ցուցակում գտնվում է http://localhost/enterprisedata and named "Corporate Departments".

Ես սահմանված երկու դասընթացներ է մեկ. Cs ֆայլ, կազմվում է այն եւ դրեց այն GAC (ուժեղ պահանջվող, Իհարկե).

  1. Իրականացնել Կառավարման ձեւանմուշ (.ascx) ինչպես ցուցադրված է:

<%@ Վերահսկել Լեզու="C#" Ժառանգում="Microsoft.SharePoint.Portal.ServerAdmin.CreateSiteCollectionPanel1,Microsoft.SharePoint.Portal,Version = 12.0.0.0, մշակույթի = չեզոք,PublicKeyToken = 71e9bce111e9429c" compilationMode="Always" %>
<%
@ Գրանցում Tagprefix="wssawc" Անվանատարածք="Microsoft.SharePoint.WebControls" Ժողով="Microsoft.SharePoint, Տարբերակ = 12.0.0.0, Մշակույթ = չեզոք, PublicKeyToken = 71e9bce111e9429c" %> <%@ Գրանցում Tagprefix="SharePoint" Անվանատարածք="Microsoft.SharePoint.WebControls" Ժողով="Microsoft.SharePoint, Տարբերակ = 12.0.0.0, Մշակույթ = չեզոք, PublicKeyToken = 71e9bce111e9429c" %>
<Sharepoint:Մատուցումը Կաղապար ID="XYZZYCorporateLocationFieldControl" runat="server">
<Կաղապար>
<իժ:DropDownList ID="XYZZYCorporateLocationSelector" runat="server" />
</Կաղապար>
</
Sharepoint:Մատուցումը Կաղապար>

Վերը պահպանվում է գ:\ծրագրային ֆայլերը ընդհանուր ֆայլերը Microsoft համօգտագործել Վեբսերվերի ընդարձակման 12 controltemplates.

  1. Վերջապես, մենք ստեղծել XML ֆայլ է փրկել են ..... 12 XML գրացուցակը. Սա CAML է, որ սահմանում է մեր մաքսային տվյալների տեսակը եւ իմ օրինակ, կարծես սա:

<?XML Նամակ տարբերակ="1.0" կոդավորում="UTF-8" ?>
<
FieldTypes>
<
FieldType>
<
Դաշտ Անուն="TypeName">CorporateLocations</Դաշտ>
<
Դաշտ Անուն="ParentType">Տեքստ</Դաշտ>
<
Դաշտ Անուն="TypeDisplayName">Corporate Locations</Դաշտ>
<
Դաշտ Անուն="TypeShortDescription">All XYZZY Corporate locations including manufacturing or other facilities.</Դաշտ>
<
Դաշտ Անուն="UserCreatable">TRUE</Դաշտ>
<
Դաշտ Անուն="ShowInListCreate">TRUE</Դաշտ>
<
Դաշտ Անուն="ShowInDocumentLibraryCreate">TRUE</Դաշտ>
<
Դաշտ Անուն="ShowInSurveyCreate">TRUE</Դաշտ>
<
Դաշտ Անուն="ShowInColumnTemplateCreate">TRUE</Դաշտ>
<
Դաշտ Անուն="FieldTypeClass">Conchango.XYZZYCorporateLocationField, XYZZYCorporateLocationField, Տարբերակ = 1.0.0.0, Մշակույթ = չեզոք, PublicKeyToken=b0b19e85410990c4</Դաշտ>
<
RenderPattern Անուն="DisplayPattern">
<
Անջատիչ>
<
Expr>
<
Սյունակ />
</
Expr>

<Դեպք Արժեք=""/>

<Անհոգություն>
<
HTML>
<![CDATA[
<span style="color:Red"><բ>]]>
</
HTML>

<
Սյունակ SubcolumnNumber="0" HTMLEncode="TRUE"/>

<HTML><![CDATA[</բ></span>]]></HTML>

</
Անհոգություն>
</
Անջատիչ>

</
RenderPattern>
</
FieldType>
</
FieldTypes>
This XML file adds the custom data type to the WSS "library" եւ համապատասխանում այն ​​դեմ GAC'd հավաքների.

Հետո գնում այդ բոլոր bits իր տեղը, iisreset է սերվերի եւ այն պետք է բոլորս լավ կաշխատի.

WSS: Տեխնիկա ստեղծման CAML դաշտային սահմանումներ.

Լրացուցիչ աստիճան: CAML

Այստեղ is a great posting by a fellow named "craig" է տեխնիկան գտնելու համար CAML սահմանումները դաշտային բովանդակության տեսակների վրա off իրական կենդանի հասկացություններն մի կայքում.

Նրա համար ասում է, որ բոլոր. Հակիրճ:

  1. Ստեղծել բովանդակության տեսակը.
  2. Կապել այն ցուցակից.
  3. Բացել ցուցակը SharePoint Designer.
  4. Export to a "personal web package".
  5. Վերանվանել է. Քաբ.
  6. Բացել են դրսեւորվում.
  7. Գտիր քո բովանդակության տեսակ եւ նմանատիպ CAML.

WSS: Ամփոփում քայլեր, որպեսզի օգտակար հատկանիշներ / տարրերի / etc. Intellisense է VS 2005

Լրացուցիչ բաժիններ: Visual Studio 2005

Որպեսզի օգտակար intellisense համար Features, տարրեր, եւ այլն եւ Visual Studio 2005:

  1. Մուտք գործեք WSS սերվեր.
  2. Navigate to "c:\ծրագիրը ֆայլեր ընդհանուր ֆայլ Microsoft ընդհանուր Վեբսերվերի Ստուգման 12 template XML"
  3. Բացել են Windows Explorer-մատնացույց անելով: "C:\Ծրագրի Ֆայլեր Microsoft Visual Studio 8 XML Schemas"
  4. Պատճենեք հետեւյալ ֆայլերը են WSS սերվերի ձեր Vs 2005 schemas ցուցակում:
    1. Wss.xsd
    2. CamlQuery.xsd
    3. CamlView.xsd
    4. CoreDefintions.xsd
  5. Վերագործարկեք VS 2005
  6. Ավելացնել նոր XML ֆայլ ծրագրի.
  7. Սեղմեք այս մարմնի XML ֆայլի.
  8. Ի գույքի թրաշ, click on "Schemas" and pick "wss.xsd" սկսած ընտրությունների. (Դա անհրաժեշտ է ընտրել այլ xsd է, քանի որ նրանք են Ուղեկցող wss.xsd).

Intellisense այժմ հնարավորություն այդ XML փաստաթուղթը.

Տեսնել այստեղ Լրացուցիչ տեղեկությունների համար այս թեմային եւ հրահանգներ, թե ինչպես պետք է ավտոմատ կերպով կապել WSS intellisense ցանկացած XML ֆայլը.

WSS քննություն 70-541, Microsoft Windows Sharepoint Ծառայություններ 3.0 – Application Development

Ես վերցրել եւ հանձնել նշված քննությունը այս առավոտ. Ես գտա, որ քննություն է դժվար եւ արդար.

Կա մի պակասություն հարաբերական տեղեկատվության այս քննության ոստայնում. Վստահ չեմ, թե ինչու.

Ես ակնհայտորեն չի դառնում որեւէ մանրամասն քննության եմ մասնակցել, բայց ես կարծում եմ, կարող եք ապահով է ասել հետեւյալը.:

  1. Վստահեք այս հղումը: http://www.microsoft.com/learning/exams/70-541.mspx.

    Այն թվարկում, թե ինչ Ձեզ անհրաժեշտ է իմանալ, որպեսզի անցնեն քննությունը, եւ դա, IMO, շատ ճիշտ.

  2. Հղումը նաեւ խորհուրդ Inside Microsoft Windows SharePoint ծառայություններ 3.0 Ըստ Ted Pattison & Daniel Larson. Այս գիրքը ընդգրկում է գրեթե բոլոր առարկաները, որ թեստը հասցեները. Ես գտա, որ պետք է մեծ եւ ինքնին դուրս պարզ քննության նախապատրաստական ​​դպրոց. Այն ապահովում է մեծ օրինակներ եւ, իրոք, ստացել եմ մտածում, որ նոր ու հետաքրքիր բաներ ենք. Եթե ​​ցանկանում եք թողնել մի քանի bits գրքում, պարզապես խաչաձեւ հղում գրքի TOC հետ տարրերի հղումը վերէն.
  3. Ոչինչ ծեծում փաստացի ձեռքերը-on փորձը. Եթե ​​դուք ունեք ժամանակ եւ հետաքրքրությունը, հետեւեք հետ օրինակներից է գրքի եւ ապա փորձ է նրանց. Դուք ունեք ավելի հեշտ ժամանակ քննության, ինչպես նաեւ շատ սովորելու WSS դիմումի ծրագրավորման.

</վերջ>Անդամագրվել իմ բլոգում!