Նվազագույն անվտանգության համար InfoPath ձեւերի

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. (Սա նոր վարձելու վրա գիշերօթիկ ձեւը օգտագործվում է մարդկային ռեսուրսների, որը մեկնարկում է workflow).

Բավարարել այդ նպատակին, Ես ստեղծեցի ստեղծել է երկու նոր թույլտվության մակարդակները ("create and update" and "update only"), broke inheritance for the form library and assigned permissions to a "create, նորացնել" user and a separate "update only" մասին. The mechanics all worked, but it turned out to be a little more involving than I expected. (Եթե ​​կարծում եք, մի քիչ խախուտ են SharePoint թույլտվությունների, ստուգել այս օրագրում Հաղորդագրություն). 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, Ես հետեւյալը:

  1. Ստեղծել նոր թույլտվություն մակարդակ.
  2. Մաքրել հեռու բոլոր տարբերակները.
  3. Selected only the following from "List permissions":
    • Խմբագրել ապրանքներ
    • Դիտել ապրանքներ
    • Դիտել Application Էջեր

Ընտրելով այս ընտրանքներ թույլ է տալիս օգտագործողին թարմացնել մի ձեւ, բայց ոչ ստեղծել այն.

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, բայց պարզվում է, որ դա.

Create-and-Update was even stranger. I followed the same steps, 1 միջոցով 3 վեր. I had to specifically add a "Site Permission" տարբերակ: "Use client integration features". Կրկին, նկարագրությունը այնտեղ չի, որ կարծես թե այն պետք է պահանջվի համար InfoPath ձեւ, բայց դա.

</վերջ>

Որ “In-Միջեւ” Զգացմունք; Դիտարկումներ SharePoint Consulting

Տխուր, 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, հատուկ համար անձնակազմի խորհրդատուների նման ինքս ինձ (as opposed to independents who must normally live in perpetual fear of in-between time 🙂 ). We staff consultants fill this time in various ways: Երկկողմանի առեւտրի ժողովրդական գրել առաջարկներ; լրացնելով մեկը կամ աջակցելու անձին այս կամ այն ​​կենտ աշխատանք; studying; Բլոգերներ :). It’s hard to plan more than a few days in advance. At times like this, իսկ ես, մի ​​քիչ ժամանակ իմ ձեռքերը, 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. Դեռ, դուք ուտում ճաշ է հաճախորդի, տանել նրանց դուրս ճաշի եւ / կամ խմիչք, գնել բլիթները համար թիմի, գնալ սուրճի մեջ, տալ / ստանալ տոնական բացիկներ — 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. Մյուս կողմից,, you’re a baby. On day zero, consultants don’t know the names, the places or the client’s lingo. Most times, consultants never learn it all.

When things go well, 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, never realizing they are doing it.

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, կառավարում, taxonomy, հիմնական բովանդակությունը տեսակները, եւ այլն:. եւ շատ առումներով, կազմում է երկարատեւ, 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, իրականացնում BDC կապեր PeopleSoft, ներկայացրեց բավականին բարդ աշխատանքի արդյունքում, ինչպես նաեւ SharePoint Designer, touched on basic KPI’s and more. A proper phase two would extend all of that with extensive, գրեթե համատարած BDC, իսկապես գեղեցիկ workflow, տուգանք լարված է եւ ավելի լավ որոնման, գրառումների կենտրոն, Excel ծառայություններ եւ, հավանաբար ամենակարեւորը, reaching out to other business units. Սակայն, դա է ինձ համար, and that’s sad.

Ելնելով այս վերջին փորձը, 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, Իհարկե.

That’s the consultant’s life and all of these little complaints are even worse in a SharePoint engagement. Քանի որ ես եմ գրել մինչեւ, 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, դուք կարող եք տեսնել, որ բազմաթիվ ձեւեր, որոնք կարող են օգնել SharePoint ընկերությունն ավելի արդյունավետ, խնայել ժամանակը, անել բաներ, ավելի լավ է,… but you don’t always get to do them.

Ես հաճախ նայում ետ իմ առաջին աշխատանքային օրը դուրս վարժարանի, 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, սակայն, 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! 🙂

Չնայած իմ Տխրություն տրամադրությամբ, Ես չեմ կարող պատկերացնել մի տեղ չեմ ուզում, այլ ոչ թե լինի (բացառությամբ տաք լողափ հետ լավ մատակարարման հոգիների).

Ես չեմ կարող սպասել, ստանալ սկսել իրագործել հաջորդ Ձեռնարկությունների SharePoint ծրագիրը.

(Առիթով ոչինչ, Ես գրել է այս օրագրում մտնելու վրա NJ Transit ավտոբուսը. I don’t think I made any friends, but one CAN blog on the bus 🙂 )

</վերջ>

Արորդիների Tags:

Կիրակի Զվարճալի: “Նրանք չէ, որ վատ”

Հետ մոտ 1999, Ես ծախսում շատ շաբաթների է Սանտա Բարբարայի, CA, աշխատում է հաճախորդի, 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. Տեղ երկայնքով գծում, Ես coined մի արտահայտություն, "special fear", as in "Samantha has special fears." She as a special fear of "bugs", որոնք նրան չեն ճանճեր կամ ladybugs, but rather microbes. She’s afraid of this or that virus or unusual bacteria afflicting our son, or me, but never really herself. (She is also specially afraid of vampires, miniature evil dolls (especially clowns) and submarine accidents; she has out-grown her special fear of people dressed in Santa Claus outfits).

Մի օր, 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.

That night, 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: "Well, I flicked it out the window."

S: "They are really bad though. 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 a loud voice: "My God! CAN THEY TAKE OVER YOUR MIND???"

S: Literally reassuring me: "No, they’re not THAT bad."

</վերջ>

Արորդիների Tags:

Արագ եւ հեշտ: Ավտոմատ Open InfoPath Form From Sharepoint դիզայներ խմբին

ԹԱՐՄԱՑՆԵԼ: Madjur Ahuja points out this link from a newsgroup discussion: 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, նրանք կարող կտտացնել հղումը կողմից էլ եւ գնալ ուղղակիորեն InfoPath տեսքով.

This monster URL construction works for me:

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

Replace the bolded red text with the name of the form, as shown in the following screenshot:

պատկեր

Note that there is a lot of hard-coded path in that 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, view the source of the email and you’ll see everything you need to include.

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.

</վերջ>

Մտածում Առեւտրային Ապրանքներ

Ես դնում մի SharePoint Designer ընդարձակման ծրագիր մինչեւ CodePlex այս տարի ավելի վաղ, եւ թեեւ դա իրականում շատ սահմանափակ շրջանակից, Ես գնահատում, որ դա եղել է բեռնել 40 դեպի 60 (հնարավոր է նույնիսկ, 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, դա կարող է թարգմանվել որպես լավ քանակությամբ գարեջուր 🙂

Իմ ֆոն իրականում շատ ավելի են արտադրանքի մշակման եւ ես գիտեմ, թե ինչ է պահանջվում բերել վերին խազ արտադրանքը, ի տարբերություն մի CodePlex hobby ծրագիր, to market. In my անցյալը կյանքը, Ես պատասխանատու արտադրանքի R&D for all software products. The difference between then and now is that I’m a consultant now working for an (գերազանց) խորհրդատվական ընկերություն (Conchango). Նախապես, Ես ունեի մի ամբողջ ընկերության ետեւում ինձ, եւ առջեւ ինձ, selling and supporting the products we brought to market. Այսօր, Ես կցանկանայի, պետք է միայնակ.

Ես ունեմ մի քանի ապրանքների գաղափարներ մտքում, 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 համար անսահմանափակ մշակողի լիցենզիա եւ $500 per production web front end. I think I would also give away the source code.

Եթե ​​դուք ունեք մտքեր կամ փորձը, որ դու ցանկանում կիսել, խնդրեմ թողնել Ձեր կարծիքը, կամ էլ ինձ անմիջականորեն. I’d like to hear opinions like:

  • Արդյոք այն ամենը արժանի?
  • Գործնական առաջարկներ մարքեթինգի, հավաքում փողերը, տարածումը.
  • Գնագոյացում.
  • Աջակցություն.
  • Ցանկացած այլ մեկնաբանություն ցանկանում է հեռանալ.

It’s "easy" գալ ապրանքների գաղափարներ եւ իրականացնել դրանք, though many dozens of hours of work are required. The other stuff is not as easy for me.

</վերջ>

Արորդիների Tags:

Կիրակի առավոտյան Զվարճալի: “Jesus Must Die”

Մենք գնել մեր առաջին (եւ միայն) "luxury" car back when hurricane Floyd nailed the east coast of the U.S. We got a LOT of rain here in New Jersey and several days passed before life returned to normal. Just before Floyd struck, մենք հանդես է եկել առաջարկով, որը օգտագործվում Volvo 850 GL and after Floyd struck, drove it home.

It was our first car with a CD player. Like most new car owners, գնացինք մի քիչ CD crazy, 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. Մեր դեպքում,, էր Հիսուս Քրիստոս Superstar.

Մեկը (շատ) հիանալի կտոր այդ ռոք օպերայի որը երգում է մի հին Սահմանված կրոնական տեսակների, ի 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, պետք է մեռնել, պետք է մեռնել, this Jesus must die". You hear that refrain a lot in that piece.

Ժամանակ, 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, looking through the mail and all my usual walk-in-the-door stuff and I suddenly realize that he’s just saying, not really singing: "Jesus must die, պետք է մեռնել, 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 — probably the last play date with that baby friend.

We pulled that CD out of the Volvo after that 🙂

</վերջ>

Google Արդյոք Ընդունեք իմ կենդանի բացատների բլոգ մեջ AdSense-ծրագիր

ԹԱՐՄԱՑՆԵԼ: Դրությամբ 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.

Սա SharePoint գրություն, բայց կարող են հետաքրքրել բլոգերների ընդհանրապես.

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. Սակայն, Ես վերջերս ընդունվել ծրագրի իմ կենդանի տարածքները օրագիրը, որ քաղաքականությունը կամ փոփոխվել կամ Google հերքել նրան որեւէ այլ պատճառով.

Իհարկե, Ես չեմ տեսնում որեւէ ակնհայտ ձեւով ինտեգրվել Google AdSense իմ կենդանի տիեզերք, but it’s a start 🙂

</վերջ>

Արորդիների Tags: ,

Իրականացնող Վարպետ / Մանրամասն Հարաբերություններ Օգտագործելով յուրահատուկ ցուցակ

Ֆորում օգտվողները հաճախ նաեւ այսպիսի հարցեր:

> Բարեւ Ձեզ,
>
> Խնդրում եմ, ասեք ինձ, եթե կան հնարավորություններ կառուցելու գործարկողի ցուցակի հետ:
> վարպետ եւ մանրամասն տեսակը (նման հաշիվներում) առանց օգտագործելու InfoPath.
>

Sharepoint ապահովում է որոշակի դուրս տուփ հատկանիշները, որոնք աջակցում տեսակի գործնական պահանջներ, ինչպիսիք են.

Ընդհանուր առմամբ, one links two lists together using a lookup column. List A contains the invoice header information and list B contains invoice details.

Օգտագործեք լրացուցիչ ցուցակները պահպանել հաճախորդների համարները, ապրանքային համարներ, եւ այլն:.

Օգտագործեք բովանդակության հարցման վեբ մասին (MOSS է միայն) and/or a data view web part to create merged views of the lists. SQL Server Reporting Services (SRS) նաեւ մատչելի է հաշվետու կողմի դրա.

Սակայն, 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:

  • Չափը հարակից Փնտրել ցուցակները 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 նյութեր, that’s going to be a problem. The lookup control does not page through those items. Փոխարեն, 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. Օրինակ, 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. Ես այս մասին գրել այստեղ. You can’t implement cascading drop-downs, պայմանականորեն հնարավորություն / անջատել դաշտերը:, եւ այլն:.
  • 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. Օրինակ,, Sharepoint թույլ է տալիս ստեղծել երկու յուրահատուկ ցուցակները, "customer" and "invoice header". You can create an invoice header that links back to a customer in the customer list. Ապա, you can delete the customer from the list. Դուրս վանդակում, there is no way to prevent this. To solve this kind of problem, դուք, որ սովորաբար օգտագործում են միջոցառման handlers.

Այն կարող է թվալ անգույն, 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 հնարավորություն է տալիս մեզ լրացնել այդ բացերը `օգտագործելով գործիքները, ինչպիսիք են:

  • Event handlers. Use them to enforce referential integrity.
  • Պատվերով սյուներ: Create custom column types and use them in lieu of the default lookup column. Add paging, buffering ու AJAX հատկանիշներ, որպեսզի դրանց արձագանքող.
  • 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 է MOSS առանձնահատկություն (առկա չեն WSS) and is challenging to configure.

  • ASP.NET վեբ ձեւ: Ստեղծել ամբողջական առանձնահատուկ AJAX-միացված ձեւ է, որ օգտագործում է Sharepoint օբյեկտային մոդելը եւ (կամ) ինտերնետային ծառայություններ լծակներ Sharepoint ցուցակներում տրամադրելիս շատ պատասխան ինտերֆեյսի.

Վերջին տարբերակը կարող է զգում եք, սկսելով զրոյից, բայց համարում այն ​​փաստը, որ Sharepoint պլատֆորմը սկսում քեզ համար հետեւյալ հիմնական հատկանիշները:

  • Security մոդելի հետ պահպանման.
  • Մենյու համակարգ պահպանման.
  • "Master table" (i.e. Պատվերով ցուցակները) ինչպես նաեւ անվտանգության, կառուցվել է տեխնիկական սպասարկման եւ հաշվեքննական (աուդիտորական).
  • Որոնել.
  • Back վերջ ինտեգրացիոն գործիքներ (BDC).

Եթե ​​դուք սկսել է նոր դատարկ ծրագրի Visual Studio, Դուք ունեք շատ ենթակառուցվածքների եւ կոյուղի կառուցելու համար դուք ստանում մոտ ինչ 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, խնդրեմ թողնել մեկնաբանություն.

</վերջ>

Արորդիների Tags:

Quick Հուշում: Content Հարցման Web Part, Որոնվող սյունակի արժեքը եւ XSL

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

That column is of type "lookup".

Ես փոփոխվել <CommonViewFields> եւ ItemStyle.xsl ցույց սյունը.

Պարզ <xsl:արժեք է ընտրել =…> վերադարձնում վերադառնալ ներքին արժեք է, որը ներառում է դասական պաշտոնների տվյալները, օրինակ:

1;#Miami

Ստանալ մարդու ընկերական արժեքը, օգտագործել xsl ենթատող հետո, ինչպես ցուցադրված է:

<xsl:value-of select="substring-after(@ Real_x005F_x0020_Estate_x005F_x0020_Location,'.')"></xsl:արժեք է>

Օգտագործեք այս մեթոդը, երբ դուք աշխատում են հետ Փնտրել արժեքների XSL transforms եւ պետք է ստանալ մարդու ընկերական արժեքը.

<Խաղի տեւողությունը րոպեներով />

Արորդիների Tags: , ,

SharePoint բարակ Դեկտեմբեր հարցը Up & Ապրել

Ձեզանից շատերը գիտեն, սա արդեն, բայց Դեկտեմբեր հրատարակությունը SharePoint բարակ է ապրում.

Յուրաքանչյուր հոդվածը արժե կարդալ, իմ կարծիքով.

Ես ուզում եմ տալ մի քիչ լրացուցիչ bump է Իմ գործընկեր հոդվածը (Natalya Voskrensenskya). She provides a screen-shot extravaganza while describing how she used custom lists, աշխատանքի արդյունքում, Sharepoint Designer, 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 Նրա բլոգը իսկ դու դրան.

Մի մոռացեք ստուգել դուրս իմ հոդվածը as well 🙂 I wrote about using MOSS to help an HR department manage open positions.

</վերջ>