SharePoint Shop Spjall Open Q&A Session Fimmtudagur 08/13 @ 12:30 PM UTC

Arcovis verður hýsa annað "SharePoint Shop Talk" okkar fundur þetta Fimmtudagur á 12:30 PM UTC. Show up with your SharePoint questions and we’ll do our best to entertain you with banjo jokes, smart but harmless put-downs of our fellow panelists and maybe even answer a question or two. This week’s “official” panel includes yours truly, Arcovis samstarfsaðilar minn (Natalya Voskresenskaya og Harry Jones) og Laura Rodgers (af Twitter & EndUserSharePoint Frægð). Bob fox threatened to join too, but I don’t take that too seriously. Last time, við höfðum mikið magn þátttöku áhorfenda sem þoka línu á milli panelists og mæta og ég ætla sama mun gerast Fimmtudagur.

Þessi atburður er samstarf styrkt af Integrated Systems og þjónusta Group (www.issgroup.net).

Vinsamlegast skráðu hér: https://www323.livemeeting.com/lrs/8000043750/Registration.aspx?pageName=9xrzxfs9x34sb0sm

Ef þú hefur einhverjar spurningar sem þú vilt okkur að taka, just dial into the call and ask it. If you want us to think about it first, send us an email or leave a comment here.

See you then!

</enda>

Gerast áskrifandi að bloggið mitt.

Fylgdu mér á Twitter á http://www.twitter.com/pagalvin

Undirliggjandi sjúkdóma: SharePoint Alert Sniðmát til bjargar (?)

One of my clients worked with a previous contractor to build out a small but useful HR application for the enterprise. That contractor used SharePoint Designer to implement the workflow portion of the solution. It’s a bit of a mess. Til dæmis, there are nine SPD workflows in support of a single logical workflow process and up to five of them may fire simultaneously at any given time given the right conditions. It’s not easy to debug 🙂

Viðskiptavinur minn hefur fjölda enn-útistandandi kröfur, one of which is to generally provide more context when the system sends out email alerts – both in the email itself as well as associated task forms. As SPD workflow implementers know, the “collect data from user” SPD action actually creates a task with a custom content type. When we use that action, we don’t get to specify much. We can prompt for some values (e.g. "Samþykkja" eða "neita") and we can specify a hard coded value in the title and description. That’s about it.

Kröfu viðskiptavinar míns er tveir sinnum:

  1. Þegar SharePoint sendir tölvupóst um verkefni verkefni, fela í sér mikið af upplýsingum um verkefnið í tölvupósti líkama.
  2. Meira um vert, lang – þegar notandi smellir á verkefni í póstinum, the task form should have all the information the approver needs in order to make his/her approve or deny decision. Right now, the manager needs to click on the item link itself to drill down into the underlying details and no one likes that. You have to click in the email. Then you need to click a sort of obscure link on the task item. Then you can look at the underlying data (er InfoPath mynd í þessu tilviki). Then you click back/back, o.fl.. Everyone hates it.

Ég hef erft þessa nokkuð sóðalegur tæknilega lausn og ég vil gera breytingar á kosti uppáþrengjandi hátt.

The approach I’m taking right now is to create a custom alert template. Þú getur lesið um það hér. The flow works like this:

  • SPD workflow rekur.
  • Á einhverjum tímapunkti, það gefur verkefni til stjórnanda.
  • SharePoint system automatically sends out an alert to that manager. This is not part of the SPD workflow but rather “what SharePoint does.” (The SharePoint myndatöku þjónusta, Ég trúi).
  • A Custom viðvörun stjórnandinn er skírskotað í þágu stöðluðu viðvörun ferli (eftir galdra reglur eins og lýst er í ofangreindum heitinu grein).
  • Þegar sérsniðin viðvörun stjórnandinn minn keyrir, it generates a beautiful email. Meira um vert, þar sem það hefur verkefni í hönd, það skreytir líka raunverulegt verkefni með öllum samhengi upplýsingar sem nauðsynlegar eru til að mæta fyrirtæki kröfur.
  • Notandinn fær tölvupóst og það er fullt af gagnlegum samhengi upplýsinga.
  • Notandi smellir á verkefni tengilinn og verkefni sjálft er fullt af gagnlegum samhengi upplýsinga.
  • Allir fer heim til að hafa Watermelon og ís.

I did a quick POC and it works well in a lab environment. I get my custom email alert as expected. I also get to update the task description and title itself.

Eina erfiður hluti, svo langt, er að forðast aðstæður þar sem viðvörun uppfærir hlut, triggering another alert. This doesn’t worry me.

Útlit lofa svo langt ...

The great thing about this is that I don’t need to muck about with any of the existing SPD workflows. They are blissfully unaware that an alert handler is “IIZ RUNNIN Da BAKGROUND, DECORATIN teh verkefni listi WIF moar Samhengi".

</enda>

Gerast áskrifandi að bloggið mitt.

Fylgdu mér á Twitter á http://www.twitter.com/pagalvin

Lifandi SharePoint Q&A Session Fimmtudagur 07/30/09 @ 12:30 PM UTC lýkur 1:30PM UTC

Uppfæra: The format for this is basically a conference call with a couple of PPT slides to set the stage. We have a SharePoint environment on stand by to fire up in case it helps out, but this is mainly people talking out loud. There will be opportunities for follow up by email.

Fara aftur til fyrsta sinn SharePoint ráðstefnu minn, rúmlega ári síðan, Ég hef verið laust eftir því hversu frábær lifandi Q&A session can be. The conference organizers had put together a sort of ad hoc group of “experts” (i.e. fólk sem var hangandi í kring og voru ekki hræddir við að leita til kjánalegt upp á sviðinu) to answer any questions that came from the audience in the room. It was in my head back then, og reglulega síðan þá, to host a similar session but do it on line and the phone. I don’t think it can be as good as an in-person Q&A fundur, en ég held að það gæti verið ansi kaldur.

Ég fékk loksins í kring til þess og næsta fimmtudag, 07/30, Fyrirtækið mitt (Arcovis) og meðeigandi, Integrated Systems og þjónusta Group, verður hýsa Q&A like that. I’m hoping to do these regularly, as often as weekly.

Þetta Stofnfundur fundur mun líklega vera a lítill ójafn, en hugmyndin er þetta:

  • Ef þú hefur einhverjar spurningar sem þú vilt svara á fundi, bara að mæta og spyrja.
  • Ef þú vilt, þú getur sent spurningu fyrirfram.

Við áætlun til að eyða fyrri hluta Q&A á send spurningum og þá opinn það upp að allt sem einhver spyr eftir það.

The fundur fer fram á fimmtudag, 07/30 byrja á 12:30 og endar á 1:30 PM UTC.

Ef þú hefur áhuga, vinsamlegast skrá sig hér: https://www323.livemeeting.com/lrs/8000043750/Registration.aspx?pageName=pxlsd9fpsm2md7h9

The panel will include me and other SharePoint luminaries. You’ll have to sign up to find out who they are 🙂

Ef þú vilt vera einn af þeim luminaries fyrir framtíð Q&A fundur, láttu mig vita.

</enda>

Gerast áskrifandi að bloggið mitt.

Fylgdu mér á Twitter á http://www.twitter.com/pagalvin

Technorati Tags:

Fella Developer Skýringar Inni Eyðublöð Infopath þín

Ég er enn á lífi í Infopath Eyðublöð heiminum og ég þurfti að gera eitt af þessum "litlu" breytingar á formi sem, því miður, breaks a naming convention I adopted with it two weeks ago. I thought to myself, "Einhver er að fara að líta á þetta hlutur á ári héðan í frá og segja, "Hvað var Páll hugsa? By Jove, Nafngiftir venju hans gerir ekkert vit!"

Ég áttaði að ég gæti búið til sýn á formi fyrir þetta og þá, aftur, realized that I could have been doing something like this all along. I added a “Developer Notes” view to the InfoPath form as such:

image

Ég hef stillt að mynd svo notendur geta ekki fengið það sem skoða og því, it’s only visible with the InfoPath client in design view. Now I feel a little inoculated against some future unknown developer looking at my form and thinking bad thoughts about me. Phew!

</enda>

Gerast áskrifandi að bloggið mitt.

Fylgdu mér á Twitter á http://www.twitter.com/pagalvin

Technorati Tags:

Annast Infopath Views

Ég virðist fara í gegnum stig Infopath þar, út af the blár, I’m crafting a bunch of forms. My fingers learn how to use the tool well and then I go through nine month drought and have to learn it all over again.

I’m in the middle of an InfoPath phase and I’m creating InfoPath forms with a lot of views. One thing you probably notice is that the InfoPath 2007 client shows views in alphabetical order. This is a real nuisance some times. My best technique these days is to prepend a number to the view name so that they always show in the order I want, as illustrated here:

image

I wish I had been doing this all along.

</enda>

Gerast áskrifandi að bloggið mitt.

Fylgdu mér á Twitter á http://www.twitter.com/pagalvin

Technorati Tags:

Infopath Form Sevices, Eyðublöð byggt auðkenningar (FBA) og einstök nöfn File

Ég hef verið að vinna á sumum InfoPath eyðublöð þessari viku í mosa í FBA umhverfi og lærði, þegar ég fór að senda eyðublöðin til framleiðslu umhverfi með FBA svæði sem notandanafn() function function does not work. I was using it to generate unique file names.

Jæja, that function doesn’t work in an FBA environment (að minnsta kosti, not out of the box). Og, upon reflection, using username in the way I had planned wouldn’t have guaranteed a unique file name in any event.

My solution was to use the now() function and a rule that fires on loading of the form. I assign the file name to data element when it’s blank:

image

image

The advantage of this approach is that the file name is set only once. (I don’t show it in the screen shot, but put a condition on the rule to only fire when “myFilename” is blank). I used to set the file name at the data source level. Typically, I would do something (slæmt) like this:

image

The problem with that is that if user A opens the form on Monday and the user B changes it on Tuesday, you’ll end up with two different forms since two different users saved it with different user names.

Svo, as annoying as FBA can be in general and with InfoPath in particular, it made me re-think a small but really important technical detail and approach that I wouldn’t have done otherwise!

</enda>

Gerast áskrifandi að bloggið mitt.

Fylgdu mér á Twitter á http://www.twitter.com/pagalvin

Technorati Tags:

Tryggja SharePoint Listi / Document Library Innlit Virðast (konar) Mögulegt með jQuery

Þetta er annar póstur í mínum á að fara röð um hvernig á að nota jQuery með SharePoint.
Ef þú vilt læra meira um jQuery, Ég mæli: jQuery í Aðgerð með Bear Bibeault og Yehuda Katz.

Einn af the fyrstur hlutur ég hélt, þegar ég byrjaði að leika í kring með jQuery, var hvort við gætum notað það til að tryggja SharePoint útsýni. Svarið er "nei" (or at least, Ég ætla ekki að segja að það er hægt). Hins, það er vissulega hægt að gera það erfitt fyrir fólk að sjá ákveðna sýn.

Ég byrjaði með sandkassa umhverfi mitt þegar vinna á þessu. Ég skrifaði um það umhverfi hér: Fljótur og Þægilegur: Búa til eigin jQuery Sandbox þín fyrir SharePoint.

Að "tryggja" útsýni, Fylgdu þessum leiðbeiningum:

  1. Búa til mynd sem þú vilt að tryggja. Ég gerði það og kallaði það "Tryggt View".

    Þetta er það sem það lítur út eins og þegar það er ekki "öruggur":

    image

  2. Bæta við efni ritstjóri vefur hluti á síðuna útsýnisins er með bragð sem lýst er í sandkassa grein (i.e. bæta "birting = Deilt&ToolPaneView = 2 "á slóðina).
  3. Reikna út SharePoint _spUserId með því að fylgja þessum brjálaður skrefum, trúa eða ekki:
    1. Skrá þig inn í SharePoint umhverfi.
    2. Í heimilisfang The vefur flettitæki er á sviði, tegund: "JavaScript:alert(_spUserId ").
    3. Upptaka niðurstöðu (það er "13" í mínu tilfelli).

      image

  4. Bættu eftirfarandi JavaScript til CEWP þitt í númerið ljósi:

    <handrit
        "Text / javascript"
        src ="../../jQuery%20Library/jquery-1.3.2.min.js">
    </handrit>
    
    <handrit type ="Text / javascript">
      $(virka() {
    
        alert(_spUserId);
    
        var theSecuredView = $('iframe[FilterLink * = örugg% 20View]");
    
        ef ((theSecuredView.length > 0) && (_spUserId == 13))
          $('iframe[FilterLink * = örugg% 20View]").foreldri().foreldri().foreldri().HTML("<tr bgcolor=red><td>Engin skoða fyrir þig!</td></tr>");
      });
    
    </handrit>
    

Ég hef sett með að viðvörun(_spUserId) lína í það að sýna fram á hvernig þetta er í raun ekki "tryggja" útsýni, en einfaldlega að gera það erfiðara að sjá. Meira um það í smá stund.

Grundvallaratriðum, jQuery is looking for an iFrame on the page who has an attribute that contains “Secured View” in its value. Once it finds it, we check to see if the current user is “13”. If it is, we walk up the DOM to a <TR> tag (which I figured out by viewing source and tracing it) and then replacing that TR tag with my message. I really don’t know how robust this is (I’m very suspicious, í raun), but it worked in my sandbox. If I find a better way, I’ll blog about it. This is the result:

image

I click the OK button and the data is replaced with a big red message:

image

As you can tell, the way I’ve implement this “security” solution is to allow the web part to render itself. After it finishes, I overwrite its content with my “No view for you!” message.

Despite the fact that it’s not really a “secured’” view, it’s potentially useful and with some clever work, it may eventually be securable in a more formal sense. The fundamental issue is that the client is getting all the data and then, only after it gets the data, it wipes it out. If the client is getting the data, a clever user can prevent the jQuery from running at all and see what he/she wants to see.

There are other drawbacks. This “security” approach is based off a _spUserId. We’d want to really secure based on the full SharePoint security model, or at least by user name. That becomes progressively harder, but I see some good stuff written on this subject, so I’m hopeful there’s a good answer to that problem.

The list of views themselves should be trimmed, if possible. I haven’t tried to figure that out. I assume it’s possible, but doesn’t really solve the fundamental security issue because someone could still just type the URL of the view they want (if they knew it). Hins, trimming makes sense. It’s a good usability feature and it helps to obfuscate things. If an end user doesn’t know that the view event exists, they probably won’t try to use it. Stundum, that’s good enough.

With luck, I’ll have more to write on this subject over time.

</enda>

Gerast áskrifandi að bloggið mitt.

Fylgdu mér á Twitter á http://www.twitter.com/pagalvin

Fljótur og Þægilegur: Betri leið til að nota jQuery til að fela textareitinn á SharePoint Form

Þetta er annar póstur í mínum á að fara röð um hvernig á að nota jQuery með SharePoint.
Ef þú vilt læra meira um jQuery, Ég mæli: jQuery í Aðgerð með Bear Bibeault og Yehuda Katz.

Áður, I wrote about how to use jQuery to locate and hide a text field on a form. I didn’t care for the specific approach (Ég var chaining foreldrar - það er einfaldlega ekki gert þessa dagana, amk í fjölskyldum gæði).

Þegar ég byrjaði fyrst að hugsa um það, Ég vissi að ég þurfti að finna <TR> to which I could invoke the hide() aðferð. My early effort to find the correct <TR> var eitthvað eins og this:

$('TR:hefur(inntak[titill = Fela mig!])");

Vandinn við það er að það myndi finna alla <TR> tag that had any parent relationship to the Hide Me! sviði, jafnvel þótt fela mig! er hreiður mörgum stigum djúpt í <TR>’s. It turns out that on my sandbox form, að tjáning finnur 9 mismunandi TR um sem hafa fel mig! as a child somewhere in its DOM tree. I realized that I could walk back up the tree from the input field itself, so that’s how I ended up abusing parents, but it didn’t sit well with me.

I gave some thought to this and one of the things I read finally made sense: I could use the not() method to trim out <TR>’s I don’t want in my wrapped set. Það leiddi mig til þessa:

$('TR:hefur(inntak[titill = Fela mig!])").not('TR:hefur(tr)").fela();

The first bit finds all the <TR> tags that have the Hide Me! field anywhere in their own hierarchy. It then strips out any <TR> that also have a child <TR>. This leaves us with a single <TR> that:

1) Has no <TR> child records

2) Does have the input field as child.

We can then apply the hide() method to the resulting set and we’re done.

I’m still a bit nervous about this, but not as nervous as chaining parents.

I don’t know if this is a best practice or not. There may be a more appropriate way of identifying just the <TR> that we care about in a SharePoint form. If you know, vinsamlegast staða a athugasemd.

</enda>

Gerast áskrifandi að bloggið mitt.

Fylgdu mér á Twitter á http://www.twitter.com/pagalvin

Fljótur og Þægilegur: Notaðu jQuery að fela Text Field á SharePoint Form

Þetta er annar póstur í mínum á að fara röð um hvernig á að nota jQuery með SharePoint.
Ef þú vilt læra meira um jQuery, Ég mæli: jQuery í Aðgerð með Bear Bibeault og Yehuda Katz.

UPDATE (þegar!): Ég vissi að hugsa um betri leið til að finna <TR> merki ég vil fela og skrifaði um það hér. You may still find this article interesting anyway so I’m leavnig it up.

Ég vil að fela textabox, "Fel mig!"Eins og sýnt:

image'

Eftirfarandi jQuery gerir bragð fyrir mig:

<handrit type ="Text / javascript">

  $(virka() {


    $("Inntak[titill = Fela mig!]").foreldri().foreldri().foreldri().fela();

  });

</handrit>

Kóðinn er að segja, "Finna mig alla inntak reiti sem á titil = Fela mig!. Þá, fá foreldra sína og þá næstu foreldra og á * næstu * foreldri (Phew!) og ákalla húðina() aðferð á þessi hlutur, hvað sem það gerist að vera.

Ég mynstrağur út að foreldri uppbyggingu með því að skoða HTML fyrir formi sem SharePoint til sem sýnt:

<TR>
    <TD nowrap="true" valign="top" breidd="190px" flokki="ms-formlabel">
        <H3 flokki="ms-standardheader">
            <nobr>Fela mig!</nobr>
        </H3>
    </TD>

    <TD valign="top" flokki="ms-formbody" breidd="400px">
        <!-- FieldName="Hide Me!"
                 FieldInternalName="Hide_x0020_Me_x0021_"
                 FieldType="SPFieldText"
        -->
        <span dir="none">
            <inntak
                nafn="ctl00$m$g_bdb23c2c_fde7_495f_8676_69714a308d8e$ctl00$ctl04$ctl02$ctl00$ctl00$ctl04$ctl00$ctl00$TextField"
                tegund= "Texti"
                Hám.lengd= "255"
                id="ctl00_m_g_bdb23c2c_fde7_495f_8676_69714a308d8e_ctl00_ctl04_ctl02_ctl00_ctl00_ctl04_ctl00_ctl00_TextField"
                titill="Hide Me!"
                flokki= "MS-langur" />
                <br>
        </span>


    </TD>
</TR>

Þessi mynd sýnir það sama, en merktur með foreldrum:

image

Fyrsta foreldri (1) is a span tag. Span’s parent (2) er TD tag og þá lokum við fá til the raunverulegur foreldri sem ég vil að fela (3) , sem er TR merki sjálft.

This is a pretty terrible approach I think because it’s extremely dependent on the very specific structure of this form. When SharePoint 2010 kemur út, this whole structure could change and break this approach. What I really want to do is craft a jQuery selector that is along the lines of “find me all the TR’s (Og aðeins tr tags) að hafa einhvers staðar í þætti barnið þeirra inntak sviði sem lét titill = Fela mig!". I starting from the bottom and moving up. Assuming I figure this out, Ég skrifa uppfærða "fljótur og þægilegur" Post.

</enda>

Gerast áskrifandi að bloggið mitt.

Fylgdu mér á Twitter á http://www.twitter.com/pagalvin

Fljótur og Þægilegur: Búa til eigin jQuery Sandbox þín fyrir SharePoint

Þetta er annar póstur í mínum á að fara röð um hvernig á að nota jQuery með SharePoint.
Ef þú vilt læra meira um jQuery, Ég mæli: jQuery í Aðgerð með Bear Bibeault og Yehuda Katz.

Að byrja með jQuery í SharePoint er furðu auðvelt (mér). (Ég hef alvarlegar spurningar um "bestu starfsvenjur" nálgun til að beita þessum hlutum til framleiðslu, en það er fyrir annan dag). I’ve just started playing with this technology and to that end, I created a sandbox environment to use. If you’re looking to get started with jQuery, þú getur fundið þessi aðferð gagnlegt.

1. Búa til Eyða Site

Búa til autt síðuna einhvers staðar á síðuna þína og kalla það eitthvað snjall eins og "jQuery Sandkassi".

2. Sækja jQuery

Þú getur sótt jQuery javascript bókasafn frá hér: http://docs.jquery.com/Downloading_jQuery

Vista sem að skjáborðinu þínu.

Ég hef verið að nota "minified" útgáfa.

3. Búa til SharePoint skjal bókasafn

Í síðuna sandkassi þína, create a document library.

4. Senda inn jQuery Library til SharePoint

Aðgangur DOC bókasafn sem þú bjóst bara og senda jQuery bókasafn.

5. Búa til sérsniðna SharePoint Listi

I’ve started with a custom list because I want to muck about with standard SharePoint forms. You could also create a page in a pages library or web part pages and probably a lot of other places.

Add some columns to the custom list so that you have something to run jQuery against. My initial objectives were to:

  1. Fela reit.
  2. Úthluta gildi til a sviði.

Með því markmiði í huga, I added two text fields. Með tímanum, Ég ætla að spila með tenglum, myndir, leit, o.fl..

6. Breyta NewForm.aspx Web Part Page og Bæta við Ritstjóri Content Web Part

Þetta er lítill svartur galdur-ish , in that it’s a new concept to me. I first learned about this from Paul Grenier, SharePoint jQuery Superstar, á hans CodePlex verkefni síðuna: http://spff.codeplex.com/.

Fylgdu þessum skrefum til að bæta við CEWP á sömu síðu sem sýnir NewForm.aspx fyrir hvaða sérsniðnum lista:

  1. Aðgangur að sérsniðnum lista og smella Nýtt.
  2. Auka eftirfarandi við slóðina: PageView = Samnýtt&ToolPaneView = 2

Það mun breyta leiðinlegt vanillu gögn innganga þína mynd úr eitthvað svona:

image

Til að þetta:

image

Bæta við ritstjóra efni á vefnum hluta til á síðunni.

7. Skrifa Fyrsta jQuery númerið þitt

Opinn upp að CEWP í kóðann að skoða og bæta við eftirfarandi:

image

Hér er í raun númer ef þú vilt afrita / líma:

<handrit
    "Text / javascript"
    src ="../../jQuery%20Library/jquery-1.3.2.min.js">
</handrit>

<handrit type ="Text / javascript">
  $(virka() {

    $('# ResultsID').HTML("Það eru" + $('A').stærð() + 'Í merki merki á þessari síðu á');

  });
</handrit>

Niðurstaða:
<div id ='ResultsID'></div>
/leitt

Athugaðu að fyrsta <handrit> tag is referencing the actual jQuery library. Presumably, þetta breyst með tímanum, svo þú þarft að ganga úr skugga um þú) nota rétt nafn og b) benda það á réttan SharePoint skjal bókasafn.

Bask í dýrð

Ef þú gerðir það rétt, þú munt sjá niðurstöður svipaðar eftirfarandi:

image

Umbúðir Up

Þetta er ekki eina leiðin til að byrja, en það er fljótleg, easy and isolated from your existing SharePoint environment.

</enda>

Gerast áskrifandi að bloggið mitt.

Fylgdu mér á Twitter á http://www.twitter.com/pagalvin