Minimum Obses requiritur InfoPath Formae

I needed to meet a security requirement for an InfoPath form today. In this business situation, a relatively small number of individuals are allowed to create a new InfoPath form and a much wider audience are allowed to edit it. (Hoc est novum conducere in-boarding forma per Humanum ipsum quod movet workflow).

Ad occursum rei, Ego creavit creata duo novum licentia campester ("Creare et update" et "update tantum"), fregit hereditatem forma bibliotheca et assignari permissions ad "creare, update" user et separata "update tantum" User. The mechanics all worked, but it turned out to be a little more involving than I expected. (Si tibi paulo tremulas in SharePoint permissions, reprehendo ex hoc blog post). The required security configuration for the permission level was not the obvious set of granular permissions. To create an update-only permission level for an InfoPath form, Fecit sequenti:

  1. Novum licentia gradu.
  2. Purgare omnes bene.
  3. Lego tantum sequenti a "List permissions":
    • Creare Items
    • Considerabit Items
    • Considerabit Application Pages

Eligendo haec bene permittit user ad update a forma, sed non creare.

The trick was to enable the "View Application Pages". There isn’t any verbage on the permission level that indicates that’s required for update-only InfoPath forms, sed vertit ex est.

Create-and-Update was even stranger. I followed the same steps, 1 per 3 above. I had to specifically add a "Site Permission" bene: "Use client integration features". Iterum, descriptio ibi non videtur sicut debet requiritur ad InfoPath forma, sed ibi est.

</finem>

Technorati Tags: ,

Quod “In-Inter” Sententia; Observationes in SharePoint Consulting

Miserabile, phase one of my last project has come to a close and the client has opted to move ahead by themselves on phase two. We did our job too well, as usual 🙂 I’m now between projects, specialis tempus virgam Consultores sicut ipse (as opposed to independents who must normally live in perpetual fear of in-between time 🙂 ). We staff consultants fill this time in various ways: Operantes cum Sales vulgares scribere rogationibus; implens in aliquis vel tergum a persona in hoc aut impar opus; studying; Blogging :). It’s hard to plan more than a few days in advance. At times like this, manus autem mea modico tempore, I like to reflect.

I’m almost always sad to leave a client’s campus for the last time. We consultants form a peculiar kind of relationship with our clients, unlike your typical co-worker relationship. There’s the money angle — everyone knows the consultant’s rate is double/triple or even more than the client staff. You’re a known temporary person. As a consultant, you’re a permanent outsider with a more or less known departure date. Tamen, comedetis prandium cum client, eos ad cenam et / vel bibit, buy crustulum in quadrigis, ire in capulus currit, dare / accipere feriae pecto — all the kinds of things that co-workers do. On one hand, you’re the adult in the room. You’re an expert in the technology which puts you in a superior position. SED CONTRA, you’re a baby. On day zero, Consultores non scire nomina, the places or the client’s lingo. Most times, Consultores numquam discere omnes.

Cum quae bene, you become very well integrated with the client’s project team. They treat you like a co-worker in one sense, and confidant in another. Since we don’t have a manager-style reporting relationship with the client, the project team often feels a little free to air their dirty laundry. They let their barriers down and can put the consultant into an awkward position, numquam sentientes sunt faciendo.

Consultants often don’t get to implement phase two and that never gets easy for me. I think this is especially hard with SharePoint. Phase one of of your typical SharePoint project covers setup/configuration, regiminis, Doct, basic contentus genera, etc. et in multis, amounts ad longam, extremely detailed discovery. That’s how I view my last project. We did all the basic stuff as well as execute some nice mini-POC’s by extending CQWP, foveant BDC nexus ad PeopleSoft, induxit satis complexu workflow cum SharePoint amet, touched on basic KPI’s and more. A proper phase two would extend all of that with extensive, fere ubique BDC, vere delicatus workflow, denique jubilantionibus et melius quaerere, monumentis centrum, excellere officia et probabiliter maxime, reaching out to other business units. Sed, suus 'non me, and that’s sad.

Fundatur in hoc recenti, I think it’s fair to say that a proper enterprise SharePoint implementation is a one year process. It could probably legitimately run two years before reaching a point of diminishing returns. Details matter, utique.

That’s the consultant’s life and all of these little complaints are even worse in a SharePoint engagement. Ut ego scriptum ante, SharePoint’s horizontal nature brings you into contact with a wide array of people and business units. When you’re working with so many people, te potest ita multis SharePoint potest auxilium comitatu magis efficiens, nisi tempore, facere melius… but you don’t always get to do them.

Saepius eu ex collegio primum respicere, before starting a consulting career 1995. We did get to do a phase two and even a phase three. Those were nice times. On the downside, autem, that means that that would mean a lot of routine stuff too. Managing site security. Tweaking content types. Creating views and changing views. Dealing with IE security settings. Restoring lost documents. Blech! 🙂

Postremo melancholia mood, Nescio ubi mallem esse (nisi ad calidum litore cum pulchra copia spiritus).

Non expectare ad adepto coepi implemented altera incepto SharePoint project.

(Circa nihil, Vestibulum ipsum scripsi in hac NJ Transit bus. I don’t think I made any friends, but one CAN blog on the bus 🙂 )

</finem>

Technorati Tags:

Dominica Funny: “Sunt es Non Bad”

Retro iuxta 1999, Sum consumptis multum hebdomadarum ex in Santa Barbara, CA, operantes enim a client, leaving my poor wife back here in New Jersey alone. I dearly love my wife. I love her just as much today as I did when she foolishly married me 1,000 years or so ago. Alicubi in linea, Ego signata a phrase, "Specialis timore", as in "Samantha has special fears." She as a special fear of "bugs", quod ad eam sunt non volat vel ladybugs, but rather microbes. She’s afraid of this or that virus or unusual bacteria afflicting our son, aut me, but never really herself. (Est etiam specialiter timere lamia, parvam malum pupas (maxime pagani) et subaquaneam accidentia; illa de-crevit speciali timore populus indutus in Santa Claus outfits).

Unum die, my co-worker and I decided to drive up into the nearby mountains near Ohai. At one point, we got out of the car to take in the scene. When we got back into the car, I noticed that a tick was on my shoulder. I flicked out the window and that was it.

Quod nocte, I told her about our drive and mentioned the tick. The conversation went something like this:

S: "Oooo! Those are bad. They carry diseases."

P: "Bene, Ego flicked eam fenestram."

S: "Sint mala licet. They can get under your skin and suck blood and transfer bugs. You better check your hair and make sure there aren’t any in your head!"

P: In vocem: "Deus meus! CAN THEY TAKE OVER YOUR MIND???"

S: Litteram Benigne me: "Nulla, sunt es non malum."

</finem>

Technorati Tags:

Vivos et Securus: Automatically Patefacio InfoPath Forma Ex SharePoint amet Email

UPDATE: Madjur Ahuja ostendit Donec a newsgroup disputatione: http://msdn2.microsoft.com/en-us/library/ms772417.aspx. It’s pretty definitive.

===

We often want to embed hyperlinks to InfoPath forms in emails sent from SharePoint Designer workflows. When users receive these emails, possunt click in pagina a email et ire directe ad InfoPath forma.

Hoc monstrum URL constructione operatur me:

http://server/sites/departments/Technical Services/InformationTechnology/HelpDesk/_layouts/FormServer.aspx?XmlLocation=/sites/departments/Technical Services/InformationTechnology/HelpDesk/REC REM RED Forms/REC2007-XII-18T11_33_48.XML&Source=http://server.corp.domain.com/sites/departments/Technical%20Services/InformationTechnology/HelpDesk/REC%20REM%20RED%20Forms/Forms/AllItems.aspx&DefaultItemOpen = I

Reponere bolded rubrum text cum nomen in forma, ut ostenditur in sequens screenshot:

imaginem

Note quod est multum difficile-coded viam in quod URL, as well as a URL-encoded component. If this is too hard to translate to your specific situation, try turning on alerts for the form library. Post a form and when you get the email, Lorem ipsum fontem ponere oportet omne quod youll 'animadverto.

Astute readers may notice that the above email body also shows a link that directly accesses the task via a filtered view. I plan to explain that in greater detail in a future post.

</finem>

Technorati Tags:

Cogitans Commercial Products

Ego a SharePoint amet tractus project usque ad CodePlex rem priore anno etiam finita locus suus, Ego aestimare quod suus fuerit downloaded per 40 ad 60 (potest etiam 100) companies in just about two months. That indicates to me that there’s a market for that solution and if I were to successfully commercialize it, that could translate into a goodly amount of beer 🙂

Mea background est actu multo in productum progressionem et quid est requiritur ut a summo-INCISURA productum, ut opponitur CodePlex amat project, to market. In my vita, Ego auctor productum R&D for all software products. The difference between then and now is that I’m a consultant now working for an (optimum) consulens firma (Conchango). Antea, Ego me totum turba retro et ante, selling and supporting the products we brought to market. Hodie, Lorem solus.

Ego plures productum ideas in animo, but I think the easiest would be to create a commercial version of the above-mentioned CodePlex project that uses that as a starting point and extends it further. My fuzzy off-the-cuff thinking is to charge something like $100 immenso elit licentia et $500 per production web front end. I think I would also give away the source code.

Donec turpis est, vel si sententia libentissime communicare, placere relinquat comment vel email me directe. I’d like to hear opinions like:

  • Est omnes operaepretium?
  • Practica suggestionibus enim ipsum, pecunia, distribuendis.
  • Aliquam.
  • Sustinere.
  • Alia comment velis relinquere.

Suus "facile" ad ascendit cum productum ideas et ad peragendam eos, though many dozens of hours of work are required. The other stuff is not as easy for me.

</finem>

Technorati Tags:

Dominica matutina Funny: “Jesus moriturus”

Nos emit primi (et tantum) "Luxuria" car back when hurricane Floyd nailed the east coast of the U.S. We got a LOT of rain here in New Jersey and plures dies before life returned to normal. Just before Floyd struck, nos fecit offer pro usus Volvo 850 GL et post Floyd percussit, expulit domum.

It was our first car with a CD player. Like most new car owners, nos abiit paulo CD insanit, revived our dormant CD collection and went on long drives just to listen to CD’s in the car. Like all fads, this passed for us and we ended listening to the same CD over and over again. In nobis, erat Jesus Christus Superstar.

De (multis) egregie frusta in quod petram Opera cantatur per instauratione religionis genera, ductus Caiaphas, the "High Priest". They sing their way into deciding how to handle the "Jesus problem" and Caiaphas directs them to the conclusion that "Jesus must die". The refrain on the song is "Just must die, Oportet, Oportet, this Jesus must die". You hear that refrain a lot in that piece.

Ad tempus, my son was about three years old. You can probably see where this is going.

I came home from work one day and my son is in the living room playing with toys and humming to himself. I’m taking off my jacket, vultus per mail et omnes more ambulant-in-in-ostium effercio et subito animadverto quod iusta dicens, non vere cantantes: "Jesus oportet mori, Oportet, must die." I was mortified. I could just see him doing that while on one of his baby play dates at a friend’s house — probabiliter ultimum fabula date cum quod infantem amicus.

We pulled that CD out of the Volvo after that 🙂

</finem>

Google receperunt mea vive dolor Blog In Adsense elit

UPDATE: Ut de 03/09, I have found no way to integrate my live spaces account with Google Adsense. Microsoft’s system here seems to prevent all of the technical mechanisms that Google provides would-be adsense hosters. I tend to believe this is mainly a side effect of the security they’ve built into live spaces, not a direct effort to disable Adsense.

Hoc est non a SharePoint post, sed esset interest ad bloggers plerumque.

Someone commented on their Windows Live Spaces blog that Google affirmatively denied their application to participate in AdSense. She theorized that Google denied her because Windows Live Spaces hosts her blog. Autem, Ego nuper accepit in progressio meo vivunt spatia blog, ita consilium aut mutari vel Google negavit alia ratione.

Utique, Non videre manifestum ad integrare Google Adsense in meum vivunt spatium, but it’s a start 🙂

</finem>

Technorati Tags: ,

Magister foveant / Donec mattis libero varius vestibulum Relationships

Forum users frequently as questions like this:

> Salve,
>
> Indica mihi, si est album consuetudo facere potest
> et typum domini detail (sicut invoices) without using InfoPath.
>

SharePoint suggero features ut sustentaret arcam quidam de genere negotium requisita similis.

In genere, one links two lists together using a lookup column. List A contains the invoice header information and list B contains invoice details.

Use additional lists to maintain customer numbers, product numbers, etc.

Use a content query web part (in MOSS only) and/or a data view web part to create merged views of the lists. SQL Server Reporting Services (SRS) is also available for the reporting side of it.

Autem, there are some important limitations that will make it difficult to use pure out-of-the-box features for anything that is even moderately complex. These include:

  • Size of related lookup lists vs. "smartness" of the lookup column type. A lookup column type presents itself on the UI differently depending on whether you’ve enabled multi-select or not. In either case, the out-of-the-box control shows all available items from the source list. If the source list has 1,000 items, that’s going to be a problem. The lookup control does not page through those items. Pro, it pulls all of them into the control. That makes for a very awkward user interface both in terms of data entry and performance.
  • Lookups "pull back" one column of information. You can never pull back more than one column of information from the source list. Puta, you cannot select a customer "12345" and display the number as well as the customer’s name and address at the same time. The lookup only shows the customer number and nothing else. This makes for an awkward and difficult user interface.
  • No intra-form communication. I’ve written about this here. You can’t implement cascading drop-downs, conditionally enable/disable fields, etc.
  • No cascading deletes or built-in referential integrity. SharePoint treats custom lists as independent entities and does not allow you to link them to each other in a traditional ERD sense. Verbigratia, SharePoint allows you to create two custom lists, "customer" and "invoice header". You can create an invoice header that links back to a customer in the customer list. Igitur, you can delete the customer from the list. Ex arca archa, there is no way to prevent this. To solve this kind of problem, you would normally use event handlers.

It may seem bleak, but I would still use SharePoint as a starting point for building this kind of functionality. Though there are gaps between what you need in a solution, SharePoint enables us to fill those gaps using tools such as:

  • Tracto vicis. Use them to enforce referential integrity.
  • Custom columns: Create custom column types and use them in lieu of the default lookup column. Add paging, buffering and AJAX features to make them responsive.
  • BDC. This MOSS-only feature enables us to query other SharePoint lists with a superior user interface to the usual lookup column. BDC can also reach out to a back end server application. Use BDC to avoid replication. Rather than replicating customer information from a back end ERP system, use BDC instead. BDC features provide a nice user interface to pull that information directly from the ERP system where it belongs and avoids the hassle of maintaining a replication solution.

    BDC is a MOSS feature (not available in WSS) and is challenging to configure.

  • ASP.NET web form: Partum a plenus-featured Nullam-enabled quod forma utitur SharePoint obiectum exemplar et / vel textus muneris leverage SharePoint Libelli dum providente admodum dociles, user interface.

Ultimum potest bene sentire sicut tu incipiens a VULNUS, sed considera quod SharePoint diam vos satus off per sequens key features:

  • Exemplar cum securitatem tuendam.
  • Menu ratio tuendam.
  • "Master table" (i.e. consuetudinem tabulatum) cum securitate, ædificavit-in alimonium ac auditing.
  • Quaerere.
  • Iaculis tincidunt diam ferramentis (BDC).

Vestibulum ipsum nibh, in condimentum arcu Si nova, vos multum infrastructure et Plumbing ædificare coram accedentibus quod offert SharePoint.

I do believe that Microsoft intends to extend SharePoint in this direction of application development. It seems like a natural extension to the existing SharePoint base. Microsoft’s CRM application provides a great deal of extensibility of the types needed to support header/detail application development. Although those features are in CRM, the technology is obviously available to the SharePoint development team and I expect that it will make its way into the SharePoint product by end of 2008. If anyone has an knowledge or insight into this, commodo licentia a ineo.

</finem>

Vivos Tip: Quaero Web content Parte, Column p valorem et Lookup

I have a column name in a content type named "Real Estate Location".

That column is of type "lookup".

Ego mutatio: <CommonViewFields> et ostenderent agmen ItemStyle.xsl.

Simplex <p:value-lego a =…> retro redit, ut valor includit intrinsecam Ordinale data positione, quales:

1;#Miami

Ut humana valorem-amica, uti post-p substring, ut ostensum:

<p:value-of select="substring-after(@Real_x005F_x0020_Estate_x005F_x0020_Location,’#’)"></p:valor ex->

Uti hoc ars, quotiens operamur cum lookup valores in p commutat atque opus ad adepto valorem in humana-amica.

<Finis />

Technorati Tags: , ,

December SharePoint Beagle Donec Up & Vivo

Multi ex vobis sciunt hoc iam, sed December edition SharePoint Beagle vivunt.

Omnem articulum in mea sententia est lectione condignas.

Volo dare parum gibba ut intercalatae collegam meum articulum scriptor (Natalya Voskrensenskya). She provides a screen-shot extravaganza while describing how she used custom lists, workflow, SharePoint amet, data views and other elements to implement a self-service training feature in MOSS. She describes techniques that can be applied in many different business scenarios. Check out eius blog at tu dum eam.

Non oblivisci Lorem articulum as well 🙂 I wrote about using MOSS to help an HR department manage open positions.

</finem>