Monthly Archives: Október 2007

SharePoint Designer — Custom virkni til að framkvæma notandi-útskýra C # virka

UPDATE: Þetta hefur verið gefið út til Codeplex hér: http://www.codeplex.com/spdwfextensions

UPDATE: Sjá hér fyrir nýjustu útgáfuna: http://paulgalvin.spaces.live.com/blog/cns!1CC1EDB3DAA9B8AA!381.entry

UPDATE: Sjá hér fyrir hugsunum mínum á commercializing þetta verkefni: http://paulgalvin.spaces.live.com/blog/cns!1CC1EDB3DAA9B8AA!569.entry

This project provides a custom activity in SharePoint Designer. Use this custom activity to invoke (senda) any C# function that you incorporated into the linked assembly.

Eins lok október, 2007, this is just an initial version of the project. I plan to expand it with a number of additional functions, including substring, Vísitala, replace, invoking web services and anything that seems useful or interesting. I also plan to post this to codeplex once I have my act together on that front. This will also be deployable as a solution at some point.

If you have any comments, spurningar eða ábendingar, vinsamlegast láta þá í athugasemdir eða sendu mér tölvupóst.

Fyrirvari:

I make absolutely no claims as to the suitability of this for any purpose. Use at your own risk.

Uppsetningu skref (að fylgja fyrir hvern WFE í bænum):

1. Sæktu. Zip og þykkni.

2. Install the .dll into the GAC. I usually open c:\Windows samkoma að nota Windows Explorer og afrita það þar.

3. Breyta web.config að bæta samkoma á örugga eftirlit:

<System.Workflow.ComponentModel.WorkflowCompiler>
<authorizedTypes>

<authorizedType Assembly="SpdGenericInterface, Útgáfa = 1.0.0.0, Menning = hlutlaus, PublicKeyToken = abe076fd8125f3c4" Namespace="Nivlag" TypeName="*" Authorized="True" />

4. Copy "SpdGenericInterface.actions" til C:\Program Files Common Files Microsoft Shared vefur framreiðslumaður eftirnafn 12 SNIÐMÁT 1033 Workflow

Athugaðu að ofan staðsetning er sérstaklega ensku innsetningar tungumál.

5. Close SharePoint Designer (if it’s already open).

6. iisreset

7. Open SPD and create a new workflow.

If all goes well, you should be rewarded with a new category of action:

mynd

Skýringar:

Sjá hér (http://blogs.msdn.com/sharepointdesigner/archive/2007/03/15/adding-activities-to-spd.aspx) for a terrific overview of the process for creating, installing and configuring a solution like this.

The .zip is designed to extract directly to you c:\ drive. If you do this, you can open the project and all the paths will be consistent.

To use this in visual studio, you probably need to install "Extensions for Windows WF".

The initial upload contains just one "dispatcher function", "ToLower()". To add more functionality, add it to the Execute method as shown:

 vernda forgang ActivityExecutionStatus
          Execute(ActivityExecutionContext executionContext)
        {

            band functionToDispatch;
            functionToDispatch = þetta.DispatchFunction.ToLower();

            switch (functionToDispatch)
            {
                case "tolower()":
                    {
                        þetta.OutResult1 = þetta.InParam1.ToLower();
                        break;
                    }

                default:
                    {
                        þetta.OutResult1 = "Unknown function: [" + þetta.DispatchFunction + "].";
                        break;
                    }
            }

            aftur ActivityExecutionStatus.Closed;
        } // ActivityExecutionStatus

    }

Þá, re-build the project and copy the assembly to the GAC. I expect an iisreset would be required.

SPD Workflow sérsniðin aðgerð – fá <WorkflowInfo> tag rétt til að forðast hindrun

Part of the process for creating a custom action for SharePoint Designer involves create a ".actions" skrá.

Ég hef fundið og reynt að nota sýnishorn sniðmát sem byrjar sem:

<?XML útgáfa="1.0" Kóðun="UTF-8" ?>
<
WorkflowInfo xmlns="HTTP://schemas.microsoft.com / SharePoint /">
<
Actions Sequential="þá" Parallel="og">

Hins, that xmlns attribute prevents my environment from working. My actions don’t show up in SPD.

The solution is to strip out the xmlns attribute, do an iisreset and close/re-open SPD.

Fljótleg og einföld: Stilla mosa til að leita að tilteknum skjal bókasafn

See UPDATE (Ég) below (11/24/07) á Hvernig á að stilla Microsoft Office SharePoint Server 2007 til Netmöppur vísitölu og skríða fyrir Leita

Markmið: I want to execute a search restricted to a specific document library. Í þessu tilviki, skjalið bókasafn inniheldur þjálfun skjöl.

Steps:

1. Upptaka inn vefslóð skjal bókasafn.

2. Búa til umfang:

Fara á stjórnsýslu.

Aðgangur að SSP.

Go to "Search Settings".

Scroll down to the scope section and select "View Scopes".

Create a new scope. Give it a name and useful description.

3. Skilgreina umfang skríða reglur:

Bæta við reglu sem skilgreinir skjal bókasafn fyrir þetta svigrúm.

Select "web address" for "Scope Rule Type".

Sláðu inn heiti möppu (sjá #1 ofan).

Accept the default value of "Include".

Bíddu eftir að svigrúm til að uppfæra (eða hefja það handvirkt).

4. Virkjar umfang í staður safn.

Fara á síðuna safn þar sem þú vilt nota þessa umfang.

Bæta við nýjum svigrúm til viðeigandi sýna hóps eða hópa.

5. Leita!

Á þessum tímapunkti, you’re done. Assuming the scope is properly defined, það verður hægt að nálgast í mælar falla hæðir til einfaldra og ítarlegri leit og þegar þú leitar að nota þessi umfang, þú munt bara fá niðurstöður sem þú átt von.

Skýringar:

Ég skrifaði þessa bloggfærslu vegna leitum mínum fyrir einföld umfang skipulag snúið upp þurr með setningar eins:

  • stilla mælar í mosa
  • stilla leita umfang mosa
  • mælar í SharePoint 2007
  • mælar í SharePoint
  • leita skjal bókasafn mosa
  • Mælar fyrst mosi

Þú getur búið til a leita svigrúm á möppu, not just the entire document library.

A umfang má hluti á mörgum söfnum síðuna (þess vegna, a "shared service").

You can create the scope at the site collection level itself. Hins, I prefer to go to central admin because I can start the crawl from there. You cannot start the crawl from the site collection.

UPDATE (Ég) og með 11/24/07:

Kai Shang put together a great post entitled Hvernig á að stilla Microsoft Office SharePoint Server 2007 til Netmöppur vísitölu og skríða fyrir Leita @ http://kaishenghoo.spaces.live.com/blog/cns!8A7458DB12CA5AC9!206.entry

Technorati Tags: , ,

Engin súpa fyrir þig! Er Cisco súpuna nasista af NLB vörum?

Í dag, I tried to access a document library via windows explorer. This doc lib is living inside a system that consists of two WFE’s load balanced by some kind of Cisco NLB solution. (Ef / þegar netið töframaður segja mér hvað það er, Ég uppfæri þessa færslu).

Windows explorer couldn’t connect. I did some research and eventually, net töframaður sagði að WebDAV er óvirkur / ekki studd / beneath the dignity of the NLB.

Svo, assuming the network wizards aren’t just telling me the network wizard equivalent of "take a long walk off a short bridge", Ég verð að furða — gerir NLB, eftir eðli, slökkva WebDAV? Do we lose our windows file explorer interface to SharePoint? Is Cisco the Súpa nasista?

Annast mosa / WSS Umhverfi — fylgjast með grunn þekkingu Microsoft

Microsoft creates knowledge base articles day in and day out and some of those are darned important to know about if you live in the SharePoint world.

Ég halda upp til hraði með þeim í gegnum þjónustu veita við góða fólkinu á www.kbalertz.com. KBAlertz enables you to sign up for your favorite MS technology and they send you digest versions of Microsoft KB articles via email.

Vefur Umsókn Policy, Öryggi Staður og Öryggi Snyrting — Vita uppsetninguna

(UPPFÆRT 11/29 að útskýra hvernig á að nálgast vefur umsókn stefnu stillingum um HÍ)

I had one of those "why is MOSS doing this to me????" moments today. Í lok, það er allt mér að kenna.

We have an enterprise MOSS project going on and we want to secure "place holder" sites so that no user may access it or see it. That’s easy:

  1. Farðu á síðuna.
  2. Brjóta öryggi arf.
  3. Fjarlægja hvern notanda / hóp úr leyfi á síðuna.

Ofangreind ætti að fara bara samansafn síða stjórnandi með leyfi til að sjá síðuna.

Ef einhver annar skráir sig í, þeir ættu ekki lengur að sjá síðuna og það ætti að vera öryggi stytt úr öllum venjulegum stöðum.

En … það var ekki. Á sama tíma, I suddenly realize that my "Joe User" standard user test account with no priv’s other than restricted read access has a "Site Actions" choice everywhere he goes. I double check one thing and double check something else. I pick up the phone to call a colleague, but put it down and check something else. I go for a walk and try everything all over again. I call a colleague and leave a message. And then, loksins, Mér finnst að á Ethan er blogg, his opening graph makes it quite simple:

Moss 2007 hefur a nýr lögun gestur Vefur Lögregla Umsókn. Þetta eru öryggi leyfi sem er bundinn við Vefur Umsókn. Þessar öryggi stillingar forgang allir öryggi stilling sem er sett á the staður safn eða blogg (Web) stigi fyrir þann notanda.

A quick visit to web application policies shows that "NT Authority\authenticated users" had been granted Full Read. I removed them from the list and everything finally started working as expected. I believe they were added in the first place by someone with the mistaken impression that that is best method to grant read access to everyone in the enterprise. It does, en, að þenja tilvitnun, "It does not mean what you think it means."

Access web application policies this way:

  1. Fara á miðlægri stjórnsýslu
  2. Veldu Umsókn Stjórn
  3. Select "Policy for Web Application"
  4. Á þeim skjá, make sure you pick the correct web application. Fyrir mig, vanskil það til the vefur umsókn Mið admin sem getur ekki verið það sem þú vilt.

Þegar ég hafði þetta vandamál, Ég leitaði fyrir eftirfarandi setningar og fékk furðu lítið í skilmálar af beinni aðstoð um þetta mál:

Site aðgerðir sýnileg fyrir alla notendur

Site aðgerðir sýnileg öllum notendum

síða aðgerðir eru öryggis ekki snyrt

tryggja MOSS síðuna

kynning á mosa öryggi

Technorati Tags:

Fljótleg og einföld: Nota Fast leitarorð fyrirspurn í Leita Core Úrslit

Fljótleg og einföld Leiðbeiningar:

Breyta síðu og bæta Core leitarniðurstöður vefur hluti.

Edit that web part and expand "Fixed Keyword Query".

Bæta fast leitarorð fyrirspurn (e.g. ContentType:"Training invoice" TrainingInvoiceNumber:1111)

Expand Results Query Options and change "Cross-Web Part query ID" to a value other than "User Query" (e.g. "Query 2").

Skýringar:

Using core search results in this manner allowed me to create a page that shows information from another site collection. The client has two major site collections: Deildir og vörur.

Þessi síða vara safn inniheldur, náttúrulega nóg, product information. Each product in the site collection aggregates data from multiple sources.

Eitt af deildum, kóðar og próf, is on such source. When users access product XYZ, they should see codes and testing data directly on the XYZ main page. Since codes and testing is hosted in another site collection, it’s a little awkward. We decided to use the core search results web part since search spans site collections. Codes and Testing manages product data via a custom list that is constrained by a specific content type. Aa keyword query that uses first the content type and then the product number narrow down the search to a single row in the custom list.

The keyword query above is an AND. It returns documents of content type "Training Invoice" and where the invoice number equals "1111".

A ágætur ávinningur af þessari nálgun: We can edit the XSL from the core search results web part and generate any format that we want.

Sjá hér (http://devcow.com/blogs/jdattis/archive/2007/04/17/SharePoint_2007_How_to_Rollup_Content_from_multiple_Site_Collections.aspx) til umræðu annars blogger um þetta efni.

</enda>Gerast áskrifandi að bloggið mitt.

Segðu mér frá blogginu þínu!

Ef þú halda a blog þessi er amk óverulega tengd SharePoint, please let me know in comments. I would love to add you to my blogg lista.

Ef þú halda a blog þessi er ekki tengd við SharePoint en langar mig til að bæta því samt, láttu mig vita. I’ll may create a separate blog list.

Vinsamlegast gefið:

  • Blogg slóðina þína (augljóslega)
  • Stutt lýsing á blogginu þínu.

I want to keep the link to "active" blogg, which I’m roughly defining as one post per week and minimum three months old. If you don’t meet that "requirement" add your name to comments anyway. It’s *my* list so I can break my own rule if I want to.

Takk!

Starfsmaður Þjálfun Stundaskrá og Efni Snið — Lækka galla í sniðmátið

The client noticed a bug today with the above mentioned template.

Course managers create courses. When creating a course, framkvæmdastjóri skilgreinir hámarksfjölda laus sæti.

The template provides for self-service enrollment. I enroll and a workflow attached to the registration list decrements the "available seats" tengslum við þessi námskeið.

Individuals may also unregister from a course. The bug lies here. Unregistering from a course does not increment the available seats counter. Þar af leiðandi, available seats is not accurate. This bug is compounded by the fact that when available seats decrements to zero, ekki meira sjálf-þjónusta skráning er leyfilegt.

Sem betur fer, Microsoft provides the workflow for this process. Even better, það er beinn-áfram workflow búin með SharePoint Designer.

Fylgdu þessum háu skrefum stigi að festa það:

  1. Skjóta upp SDP.
  2. Opna síðuna byggt af þjálfun sniðmát.
  3. Access "Attendee unregistration" workflow.
  4. Settu skrefum (Ég gerði þá fyrstu tvö skrefin):
    1. Reikna Námskeið:Fyllt Sæti mínus 1 (Framleiðsla til Variable:Calc)
    2. (þá) Uppfæra atriði í Námskeið

Smelltu á Ljúka og þú ert búinn.

Skjár skot:


SharePoint Designer:

mynd

Lokið workflow:

mynd

Reikna bora niður:

mynd

Uppfæra atriði í Námskeið:

mynd

Gefðu góða fréttir oft; gefa slæmar fréttir snemma

Ég hef verið ráðgjafi fyrir mikið af ár núna og eins og allir reyndur ráðgjafi veit, good communication is one of the key pillars to the successful delivery of a project. Það er svo augljóst, it’s really almost boring to talk about. This isn’t a post about generic communication. Staðinn, Ég ætla að skrifa um dekkri hliðar samskipta — communicating bad news.

It goes without saying that giving good news to the client is done all the time, as often as possible. Who doesn’t want to give good news? Who doesn’t like to hear good news?

On the flip side, bad news is no fun at all. I have always struggled with this. In the earlier days of my career, I would know something was awry with a project and instead of telling the client, I would work longer hours to try and solve the problem. I would enjoin my team to work harder. It’s a natural enough impulse to think that a super-human effort can save the day. Some times this works, some times it does not. Even when it "works" it’s often a mixed bag. Is the quality of the deliverable really up to spec when key parts have been developed over several 60 að 80 hour weeks?

What is the best way to handle bad news? The answer is: tell it early. Don’t wait until one week before the project budget will be consumed. If you know six weeks out that there simply isn’t enough time to deliver some bit of promised functionality, tell the client right then and there. The client may get upset (probably will), there may be incriminations and accusations and hurt feelings. En, when emotions cool off, there’s still six weeks left on the project. Six weeks is a good chunk of time. There’s time to adjust plans, change schedules, get the ball rolling on budget extensions (good luck!) and just generally come to grips with the "facts on the ground" and devise a new plan that still results in a successful project.

Case in point: I’m working on a project characterized by:

  • T&E budget with a capped "Not to exceed" dollar amount.
  • A "best efforts will be made" promise to deliver X, Y and Z by project’s end.
  • Lack of promised key resources on the client side. These resources were not withheld on purpose, nor for any "bad" reason, but they were withheld.
  • A dawning realization as the project passed the half-way point that we were not going to be able to deliver "Z" (mainly because the promised resources were not actually available).
  • Regular status reports and "CYA" documentation that backed us (the consulting team) up.
  • Tightly knit implementation team with members drawn from the consulting organization (Fyrirtækið mitt) and the client.
  • Distant management team, in both a metaphorical and physical sense. The management team was focused on another large enterprise project and due to space constraints, the implementation team was housed in a separate building on campus, down a hill and relatively far way from "civilization".

With roughly six weeks left on the project budget, við (the implementation team) knew that we were trouble. The contract said that we needed to deliver "Z". Even though the project is time & materials and even though we only promised "best efforts" to deliver Z and even though we had great justification for missing the delivery … the bottom line is that it wasn’t looking good — we were not going to deliver Z in a shape a quality that would make anyone proud.

Recognizing this, we went to management and told them that the project budget would be consumed by a certain date and that we were in trouble with Z.

A mini firestorm erupted over the next few days.

Day 1: Management team calls in its staff for a special meeting (við, the consultants are not invited). Contracts are printed and handed out to everyone and a line-by-line review ensues. Management puts the staff members on the defensive. I don’t think the phrase "Stockholm Syndrome" is *actually* used, but you get the picture. We’re a tight-knit group, eftir allt, and the staff has been working with us consultants day in and out for several months now.

Day 2: Management calls another staff meeting. They feel a little better. They want options and ideas for moving forward. They realize there’s still six weeks remaining in the current project budget, which is still a decent bit of time. One of the action items: schedule a meeting with full implementation team (including consultants).

Day 5: Full team meets, constructive meeting ensues and a new achievable plan put into place. Even better, we’ve already begun discussing phase two and the client invites us to prepare proposals for that phase immediately.

If we had waited until just three weeks remained, or even worse, one or two weeks, it would have been much different. Instead of a constructive meeting to re-align the project, we would have been pulling out status reports, parsing the contract and reviewing old emails to justify this or that decision. We would have "won" but is it really "winning" í þessu tilfelli?

Svo, if you have to give bad news, give it early. Bad news given late isn’t just bad, það er hræðilegt.