Nyaraka za kila mwezi: Machi 2008

Kuamua FAST QRServer Port

Ili kuwasiliana na Tafuta FAST kupitia API yake, tunahitaji kujua bandari ambayo QRServer ni mbio.

Mimi ikifuatiwa hatua hizi kwa Machapisho hayo:

  1. Kuingia katika tovuti FAST admin (http://server:port/admin).
  2. Nenda kwenye Overview System.
  3. Locate "Search Dispatcher" na bonyeza icon spyglass:

    picha

  4. Mimi mafanikio kutumika thamani, 15100 for "Info Name" = "http":

    picha

Maelezo:

1. Bandari 15100 appears to be the default out-of-the-box port number for the QRServer.

2. Kutumia hii kanuni sawa na yafuatayo instantiate uhusiano na FAST:

     ISearchFactory searchFactory;
    
        NameValueCollection nameValueCollection = mpya NameValueCollection();
    
        nameValueCollection.Add("fastsearchengine", "Com.FastSearch.Esp.Search.Http.HttpSearchFactory");
        nameValueCollection.Add("Com.FastSearch.Esp.Search.Http.QRServers", "fastdemoback:15102");
        nameValueCollection.Add("Com.FastSearch.Esp.Search.Http.RequestMethod", "GET");
    
        searchFactory = SearchFactory.NewInstance(nameValueCollection);

3. Kama pick bandari wildly sahihi, kupata msaada makosa ujumbe:

picha

4. Hata hivyo, kama wewe kuchukua idadi bandari waliotajwa kwenye maelezo ya (15102) you don’t get that helpful error message. Badala yake, baadaye wakati wewe kujaribu kupata data yoyote kupitia kutafuta au rejea maoni FAST, you get an error. Debugging shows that the searchFactory’s view count is zero. You’ll be given the message "Failed to fetch Search View List".

</mwisho>

Tags technorati:

Kujiunga na blog yangu.

Kuelekea SharePoint viashiria Design Sampuli: SharePoint Designer Workflow + Tukio kupokea = High Potency cocktail

Moja ya chati kujitokeza katika kuandika mimi kupata ufumbuzi SharePoint leverages SharePoint Designer workflow na mpokeaji tukio.

Hapa ni mazingira ya biashara na kuiweka katika mazingira ya:

  • Mimi upload hati lib doc.
  • Mimi kick off hatua mbalimbali workflow kuundwa kwa kutumia SharePoint Designer.
  • Wakati fulani wakati wa mchakato huo, workflow inateua kazi kwa mtu (kupitia kukusanya data kutoka kwa mtumiaji au hawawajui kazi).
  • We want to use a KPI to track how long that task is awaiting completion. The KPI shows green for tasks that are completed or due more than 3 days from now. It shows yellow if the task is due tomorrow or today. It shows red if the task is past due.
  • Hapa ni kicker: Nataka tarehe ya kuendesha KPI kuwa likizo-kufahamu.

I can’t calculate a holiday-aware due date in SharePoint Designer workflow very easily. I would have to create a custom action or use a 3rd party tool. Hata hivyo, it’s easy enough to calculate such a date in an event receiver. Merge those two together and we get a pattern like this:

  • Define a hidden yes/no site column on the document library labeled "DoCalcualteDueDate".
  • Initialize ya uongo.
  • Kwa wakati muafaka katika workflow (e.g. just before the "collect data" hatua), hawawajui kwamba thamani ya Kweli.
  • ItemUpdate() event receiver looks to see if "DoCalculateDueDate" is true. Since the event receiver runs on every update, "DoCalculateDueDate" kawaida ni ya uongo.
  • Wakati workflow inateua DoCalculateDueDate kwa kweli, receiver tukio mahesabu ya likizo-kufahamu kutokana na tarehe.
  • Wakati receiver tukio gani hii hesabu, unaweka bendera DoCalculateDueDate ya uongo.

Katika mwisho, SPD workflow is communicated with an event receiver via the DoCalculateDueDate semaphore and we have holiday-aware due dates that are assigned at the exactly correct moment in the workflow’s life. SharePoint Designer controls when the due date is assigned but the event receiver performs the actual calculation and assignment.

</mwisho>

Kujiunga na blog yangu.

Aliona Tabia: Kusonga Workflows SPD Ndani ya Ukusanyaji Site

UPDATE: I’ve been researching how to embed a SPD workflow into a site definition. This MSDN forum chain has some interesting information. It’s not conclusive, lakini pointi kwa njia ya kupitia jungle.

I’m giving this post a slightly oddball "Observed Behavior" lead since I’m a little leery of drawing conclusions from it. SPD workflows are … temperamental.

People are often asking / wondering / fretting over moving SPD workflows from one place to another. Leo, I followed these steps and made these observations:

  • I created a workflow using SharePoint Designer in a site attached to a document library.
  • The associated document library already housed several documents.
  • I saved the site as a template.
  • When I saved the site as a template, I saved the content as well.
  • Mimi umba tovuti mpya katika ukusanyaji sawa tovuti kutumia template.

Katika hatua hii, I tried to run the workflow. It promptly terminated itself with the log message, "Failed on start".

I expected this. I have low expectations when it comes to moving SPD workflows around.

Mimi iliendelea:

  • Kufunguliwa tovuti katika SharePoint Designer.
  • Had a peek at the workflow. It seemed fine.
  • I clicked "Finish".
  • Mimi mbio workflow.

Wakati huu, ni kazi nzuri.

I’ll add that this workflow used the "collect data from user" hatua ambayo ni hatua ya kiasi tata chini ya kofia.

I tentatively conclude that the process of "finishing" the workflow caused SPD to properly associate the SPD workflow with the new document library. I also conclude the XOML and other XML artifacts are reasonably "loose". They are not super tightly coupled to the document library.

What does this mean? Assuming it’s a reliable and reproducible process, there’s at least one rough method we can use to move them around. I don’t know if this would work if we crossed site collection boundaries or even more drastically, entire new farms (e.g. dev to stage to prod).

If you’re reading this and inclined, please post a comment or email yangu your SharePoint Designer migration story. I’ll gladly update this posting with any insights thus offered.

</mwisho>

Kujiunga na blog yangu.

Tags technorati:

Haraka na rahisi: Workflow-tu Mwisho Shamba

It’s often useful to store status information in a custom list such as an approval code which should never be directly manipulated by end users. This is a common business scenario. I have been working on a project this year that generates various status and reminder dates via SharePoint Designer workflows that then drive KPIs and generally support time-critical business processes.

Kutumia maudhui tovuti aina / safu ya kufanikisha athari.

Kujenga maudhui tovuti aina na safu hali kama inavyoonekana:

picha

Note the "Status (kwa Demo)" shamba chini.

Ijayo, click on the column name to access the column’s properties. Select "Hidden (Si kuonekana katika aina)" katika Column Settings sehemu kama inavyoonekana:

picha

This removes the field from the standard edit/update forms. Hata hivyo, bado ni inapatikana katika maoni, KPIs, mfano kitu na mahali popote unataka kutumia, including SPD workflow.

</mwisho>

Kujiunga na blog yangu.

Jumapili Mapenzi: “I Thought Hii ilitakiwa kuwa Town Tajiri”

kidogo zaidi ya miaka mitatu iliyopita, mke wangu na mimi saini mwanangu kwa ajili ya shughuli ya majira ya joto, The Midland Park Players. This is a drama group that spends about three or four weeks preparing for a play and then showing it to the parents, friends and relatives. It’s always been done very well.

Sijui kama mtoto ya kila mtu ni kama hii, but my son is extremely reluctant to try new things. Knowing this, we signed him up for the program. We’ve found that it’s best to alert him to these kinds of things early and often. Hivyo, ili kuondokana na kusita yake ya asili, sisi alimwambia mapema na alifanya kazi nzuri ya kufanya hivyo sauti kama furaha, nk. Even with a multi-month advertising campaign, he still wasn’t convinced. We forced him to do, ingawa, na kama ni mara nyingi kesi, he had a great time.

Kwa mara ya pili mwaka akavingirisha kote, he had once again convinced himself that he didn’t want to participate. Lakini, sisi alikuwa saini yake juu na juu ya sifuri-siku, I dropped him off one morning at the high school where they practice. When I went to pick him up after lunch, yeye alikuwa msisimko sana, kila smiles na alitangaza, "The play is the Velveteen Sungura and I want to be the Rabbit". He had spent literally months carrying on (wakati mwingine anapagawa) kuhusu jinsi yeye hakutaka kuwa na kitu cha kufanya na Wachezaji Park na baada ya siku ya kwanza, he wants to be the lead role in the play. We’ve seen this pattern before.

(Mengi kwa mshangao wetu, yeye alifanya kupata nafasi Sungura na alikuwa ajabu.)

Fast forward a few years. He’s been in Park Players three times now, so he’s something of a veteran. This summer (2008), Players starts up again. Katika maana wakati, yeye hatimaye wanaamini sisi yeye kweli doesn’t want to play soccer and he never liked basketball. That left him with no extra-curricular activities for late Winter / early Spring. A client with whom I was working mentioned that his daughter was in a program called Stage Right. Stage right is a slightly more expensive version of Park Players and it’s not in my town, but adjacent to it. Perfect.

The thing to know about that town is that it’s practically another country in terms of wealth. It has a high-frequency train right to Wall Street and NYC in general. It’s just a wealthy place. One of the on-going family discussion themes is whether we should have moved to that town instead of where we live now. It’s a bigger town, Shule yake ya kutoa zaidi mipango kwa ajili ya watoto, nk. My wife grew up in that town and her parents live there, so we are "hooked in" despite not living there. I personally grew up in different circumstances in Massachusetts, so I don’t have a lot to say about this during family dinner conversation. This isn’t to say that we aren’t very happy where we live. We just know that that town is a level above our town economically.

Stage Right’s next program started too soon for us to launch our normal advertising campaign to overcome my son’s reluctance. This is when he came up with one my personal favorite arguments against doing something: "Friday nights are mkuu usiku kwa overs usingizi!" Stage Right was going to interfere with his weekend socials.

siku inakuja, sisi kuleta naye huko na kuacha naye mbali na kama kwa kila kitu kingine, upendo wake wa asili ya kuwa tu hai alichukua juu na yeye imekuwa kuwa na wakati mzuri na ni.

Mwishoni mwa wiki hii iliyopita mke wangu mara kuzungumza naye na kwa mara ya kwanza, I think he’s tailoring his discussions very precisely for his audience. She had asked him how Stage Right compares to Midland Park Players. He tells her that "In Park Players, we have teenagers that help us out. There aren’t any in in Stage Right. In Park Players, teenagers make all props. In Stage Right, we have to bring our own props. We have to do everything. And then he twists the knife: "I thought this was supposed to be a rich town."

Miaka yote, I never really thought that he was hearing or understanding anything as it related to the "rich town". Hata hivyo, zinageuka alikuwa.

</mwisho>

Kujiunga na blog yangu.

Tags technorati:

SharePoint Je Si Kutoa kalenda Roll-ups; Uwezo Solutions

UPDATE: An anonymous person in the comments posts this link: http://www.atidan.com/atidan-collaboration-kit.php

Forum watumiaji mara nyingi kuuliza swali kama hili:

"I would like to have a calendar at the site level that is populated by events from subsite calendars. Ideally, watumiaji katika subsites kujenga matukio ya kalenda, and will have the option of marking them as ‘public.’ Events marked as public will dynamically appear in the shared site calendar. Thus the shared site calendar is a roll-up of all public events from all subsite calendars."

Ni WSS 3.0 au MOSS 2007, it is not possible to directly configure a "roll-up" calendar. Calendars exist on their own, huru ya kalenda nyingine yoyote.

Kujenga kalenda roll-up, kufuata moja ya njia hizi:

  1. Use a Content Query Web Part. This is the easiest solution for MOSS users (WSS haitoi CQWP). CQWP, kwa bahati mbaya, does not provide a calendar view of data out of the box. It does provide enormous rendering flexibility (kuona hapa kwa mfano mmoja) lakini kwa default, shows its results in simple list format. In many cases, CQWP pengine uchaguzi mzuri.
  2. A more programming-oriented solution would be to use event receivers. Implement event receivers on the subsite calendars that keep their public events in sync with the master calendar. As a given subsite calendar is modified, reach out to the master calendar and update it as needed. This option is available in both WSS 3.0 na MOSS.

There are probably other clever solutions to this problem. If you have one or know of one, tafadhali kuacha maoni au email yangu nami update hii post.

</mwisho>

Tags technorati: ,

Kujiunga na blog yangu.

Kujenga Sites (SPWeb) kupitia SharePoint Workflow Designer

This blog entry is more of an "in the realm of the possible" kuingia vs. saruji info.

We have a technical design that calls for us to create a site in a site collection via a manually launched workflow process. Kimsingi, users enter data into a "new customer" custom list and then when they have finished and validated the data entry process, we need to create a site for that customer.

I’m both a big fan of declarative workflow as well as a weak visual studio workflow programmer, so I wanted to meet the requirement using SharePoint Designer.

I plan to write about this in greater detail (and hopefully present to a user group or two in the coming year), but here’s the overall solution:

  • Create a custom action that integrates with SPD.
  • hatua desturi inaruhusu SPD waomba huduma ya mtandao na kupita kamba ya XML.
  • Mtandao wa huduma locates mfululizo katika orodha ya desturi na inajenga tovuti mpya kama kwa data kwa mteja kuwa mpya kwa kutumia desturi tovuti ufafanuzi.
  • Mtandao wa huduma kisha updates orodha desturi pamoja na baadhi ya habari kama vile kiungo na tovuti mpya.

Sisi kuchukuliwa njia nyingine, such as event handlers and visual studio based workflow. The SPD approach gives our end users a little more control over the process. Granted, kuna mengi ya C kanuni # katika ufumbuzi huu, lakini ni amefungwa ndani ya workflow declarative, ili tuweze kupata baadhi ya faida ya workflow declarative wakati hooking katika huduma tovuti kuundwa.

All we need now is an easy tool to automatically migrate SPD workflows around as easily as we can for visual studio workflows and we’ll really be cooking with gas 🙂 I understand that some folk are out there working on this problem and I hope they have some good success with it soon.

</mwisho>

Kujiunga na blog yangu.

Tags technorati: ,

Haraka na rahisi: Utoaji Web Site Kutumia SharePoint Object Mfano Katika C #

I tried searching for a little snippet code that would show how I can create a new SPWeb in a site collection. I didn’t find it as quickly or easily as I expected so I thought I’d slap together a little entry on the subject.

Kanuni hii inajenga mpya Wiki tovuti:

 SPSite siteCollection;

    siteCollection = mpya SPSite("http://conchang-o9l8qi");

    SPWeb w = siteCollection.OpenWeb();

    w.Webs.Add("xyzzy", "xyzzy Title",
        "xyzzy description", 1033, SPWebTemplate.WebTemplateWIKI, uongo, uongo);

My initial searches failed because I was looking for phrases like "provision a web site using sharepoint object model" and the like.

Kama wewe kutafuta for "Webs.Add()", utapata idadi ya washiriki muhimu sana blog, MSDN articles and SDK documentation that go into depth on this subject. I definitely recommend tovuti hii.

</mwisho>

Kujiunga na blog yangu.

Tags technorati:

Kuunganisha Workflows Designer SharePoint na Huduma za Mtandao

Nimekuwa kucheza karibu na vitendo desturi kwa Designer SharePoint kwa baadhi ya wakati (angalia hapa kwa baadhi ya mambo ya kina, kama kuwa na maslahi yenu).

Katika mradi wangu wa sasa, we need to do some fairly heavy lifting and we want to use declarative SPD workflow to manage the associated business process.

Muda mrefu hadithi fupi, this is entirely possible. I extended my Codeplex project to invoke a "helper service" and now we can invoke a web service directly from an SPD workflow.

Hapa ni sahihi:

 umma string Dispatcher(
        Guid WebID, // Kupita kwa mazingira Runtime
        Guid SiteID, // Kupita kwa mazingira Runtime
        string ListID, // Wanapita RTE (sijui kwa nini hii ni kamba, siyo GUID)
        int ListItemID, // Wanapita RTE.
        string XmlMessage) // Kupita kwa mtumiaji kama alitangaza katika SPD.

Hii leverages ukweli kwamba tunaweza kupata taarifa muhimu katika workflow, kama tovuti, orodha ID, nk. This is well documented in several places for those of you interested in creating your own custom actions. The idea is to extract the XML string as provided by the user to dispatch an appropriate procedure. Fun stuff!

Cha kusikitisha, hii ni wazi tiketi moja ya njia ya chini kwa "Loosey Goosey" kupambana na muundo ardhi, but it’s better than hitting a brick wall 🙂

Je, ni kupambana na muundo kama wewe kufanya hivyo hata kama unajua ni kupambana na muundo?

I hope to wrap this inside Codeplex in the near future. If you’re interested in me doing so, nipe poke (email au kuacha maoni) and I’ll be that more enthusiastic about doing it 🙂

</mwisho>

Kujiunga na blog yangu.

Tags technorati: ,

Jumapili Mapenzi: “Nashangaa kama nywila yako ni …”

Mimi hivi karibuni kununuliwa chakula cha mchana kwa ndugu yangu (kama kawaida) and we ended up talking about funny things that we did at our respective colleges. At my alma mater, Lafayette Chuo, the academic support IT department had a very inclusive way about it. We were given a LOT of rope and I took advantage of that at times.

Two my favorite memories relate to my good friend, Gabe. He had made the terrible mistake of telling people his freshman year that "I’m a freshman, but I have Sophomore standing" due to the various advanced placement classes he had taken, nk. Many of us were similarly situated but we didn’t talk about it so much. His senior year, when we introduced him to people, we’d say "This is Gabe. He’s a Senior, but he has Sophomore standing".

The college had some Sun workstation/servers running X-Window. They had gigantic monitors and the engineers used them for CAD and other boring engineer stuff. We CS people used them to learn programming and, bila shaka, kucheza michezo.

Sisi si kama wahandisi kompyuta-wanyonge na hivyo kiasi moja ya mambo yetu favorite kwa kufanya itakuwa telnet kwa sanduku wao walikuwa juu na kukimbia X-jicho on them. This would pop up a pair of eyes that followed the mouse around on the screen. You could pop up even more and have literally a dozen or more of the X-eye applications running. Jaribu kutocheka kwa sauti kubwa wakati mhandisi asiye na shida anajaribu kufunga X-jicho baada ya X-jicho na kunung'unika chini ya pumzi yake juu yake 🙂

We also played X-trek on those boxes. To do that, you had to download the source, get various dependencies wherever you could find them and build it. I wasn’t a sophisticated C programmer, but I could read header files. I was looking through these and found directives like "#DEFINE MAX_TORPEDO_DISTANCE 10". I played around with that increase range and power for phases and torpedoes, re-built it and then destroyed Gabe the next time we played.

Gabe was also a huge fan of a TV show called Blake’s 7. I had never seen it, but that didn’t prevent me from insisting that Dr. Who is the superior show. Mabishano yanaweza kuwa moto wakati mwingine 🙂

One day, it occurred to me that I could probably guess his UNIX password. I sat down next to him one day and announced in a loud tone, "I’m going to guess your password right now, Gabe." "Yeah, haki" was his answer. I then logged in, aliingia mtumiaji wake id, akageuka kwa uso yake, typed na kusema kwa sauti kubwa, "I wonder if it’s B-L-A-K-E-7" ? Touch typing has never paid off as handsomely as it did that day.

Wiki ijayo (au hivi karibuni): More computer room antics from college.

Je una lolote kushiriki? Leave a comment or email me and I’ll publish them here.

</mwisho>

Kujiunga na blog yangu.

Tags technorati: