SPD საბაჟო workflow ქმედებები — სიმებიანი მანიპულირება დამატებები

დაახლოებით ერთი კვირის წინ, I started up a codeplex project that provides a simple and reasonably generic method for adding custom action functions to SharePoit Designer workflow. It’s described here: http://www.codeplex.com/spdwfextensions. Beyond simply providing a framework, it also aims to provide a set of useful functions that will make SPD more useful/flexible/powerful.

აქ არის მიმდინარე დაგეგმილი თვისებები მობილური 1.0: https://www.codeplex.com/Release/ProjectReleases.aspx?ProjectName=spdwfextensions&ReleaseId=8280

თუ ვინმეს აქვს რაიმე ინტერესი ამ პროექტში, გთხოვთ დატოვოთ კომენტარი ან დაიწყება / დამატება განხილვას აქ: http://www.codeplex.com/spdwfextensions/Thread/List.aspx

აქ არის მიმდინარე ფუნქციათა რიგი, რომლებიც კოდირებულია (თუმცა არა სრულად ტესტირება, როგორც 11/08/07):

ფუნქცია აღწერა (თუ არ იგივე როგორც. წმინდა ფუნქცია)
რაოდენობის მასალა() Returns the number "entries" in a string as per a specified delimiter.

მაგალითად: Num-entries in a string "a,ბ,გ" with delimiter "," = 3.

შემოსვლასთან() Returns the nth token in a string as per a specified delimiter.
სიგრძე String.Length
ჩანაცვლება() String.Replace()
შეიცავს() String.Contains()
Returns the word "true" or the word "false".
Substring(დაიწყოს) String.Substring(დაიწყოს)
Substring(დაიწყოს,ბოლო) String.Substring(დაიწყოს,ბოლო)
ToUpper() String.ToUpper()
ToLower() String.ToLower()
StartsWith() String.StartsWith()
Returns the word "true" or the word "false".
EndsWith() String.EndsWith()
Returns the word "true" or the word "false".

სწრაფი & ადვილი url კოდირება desktop კომუნალური

I’ve been needing to url-encode some strings this week and slapped together a a little utility that I thought I’d put up on SkyDrive for the community.

მიიღეთ ორობითი აქ: http://cid-1cc1edb3daa9b8aa.skydrive.live.com/self.aspx/SharePoint/WinUrlEncode.zip

მიიღეთ ვიზუალური სტუდიის გამოსავალი აქ: http://cid-1cc1edb3daa9b8aa.skydrive.live.com/self.aspx/SharePoint/WinUrlEncodeVS2005.zip

აქ ეკრანზე დარტყმას:

იმიჯი

სწრაფი და მარტივი: Embed ჰიპერბმულის შევიდა მონაცემთა ხედი ვებგვერდი ნაწილი XSLT

განახლების (01/17/08): ეს ბლოგი შესვლის საუბრობს უფრო ჰიპერბმულის XSL სიკეთე: http://www.sharepointsecurity.com/blog/sharepoint/sharepoint-2007-development/rewriting-links-in-search-results-xslt.

მიმოხილვა და მიზანი: I had created a simple bar chart to serve as component on a dashboard. I’ll save the details on building charts for another post, მაგრამ მე არ გამოგონება, რომ ტექნიკურად (არც კითხვის ნიშნის, თუ საქმე). It turned out there was a bug in the chart and while I fixed that, I took the opportunity to convert some labels into hyperlinks that pointed at the underlying list behind the graph. მაგალითად, there is a label with value "Hold". I wanted to turn the label into a hyperlink so that the user could click on it and drill down to the specific entries in the list whose status value is "Hold".

ნაბიჯი:

  1. გამოყენება ვიზუალური სტუდია SharePoint იცის Intellisense.
  2. ასლი DVWP ნახვა XSLT შევიდა ვიზუალური სტუდიაში (შექმნა ცარიელი პროექტი, დავამატებთ XSL ფაილი პროექტი).
  3. ასლი რგოლი გსურთ გამოიყენოთ შევიდა ბუფერში.
  4. ჩასვით უფლება მდებარეობა XSL.
  5. Convert URL argument separators on the query string from "&" to "&"
  6. Url-encode ინდივიდუალური არგუმენტები.
  7. ძებნა რომ შიგნით <კონფერენცია…> </a>

მაგალითი:

მე მაქვს URL:

http://[სერვერზე]/[საიტი]/სიების / ღია% 20Positions/AllItems.aspx?ნახვა ={84EEA2F5-121B-40B7-946F-0FA704A1DAA1}&FilterField1 = recruiter&FilterValue1 = გამართავენ

I გარდაქმნას იგი შევიდა:

     <a კონფერენცია="სიების / ღია% 20Positions/AllItems.aspx?ნახვა =% 7b84EEA2F5-121B-40B7-946F-
0FA704A1DAA1% 7d&amp;FilterField1 = recruiter&amp;FilterValue1 = გამართავენ"> გამართავს: </a>

მე ხელით გარდაიქმნება პირველი არგუმენტი:

{84EEA2F5-121B-40B7-946F-0FA704A1DAA1}

to:

%7b84EEA2F5-121B-40B7-946F-0FA704A1DAA1% 7d

(ამ, ღია მუდმივი წინააღმდეგობა გაუწიოს გარდაქმნას აქ% 7 ბ და დახურვის მუდმივი წინააღმდეგობა გაუწიოს გარდაქმნას აქ% 7d)

მეორე და მესამე არგუმენტები’ პარამეტრების ("FilterField1=Recruiter" and "FilterValue1=გამართავს" შესაბამისად) არ საჭიროებს url-კოდირებით, რადგან არ შეიცავს რაიმე სახიფათო გმირები.

შენიშვნები:

ეს ტექნიკა უნდა ზოგადად მუშაობა სადმე გსურთ ხმა ჰიპერბმულებს XSLT სადაც ჰიპერბმულის მოიცავს პარამეტრების URL როგორიცაა:

http://[სერვერზე]/[საიტი]/სიების / ღია% 20Positions/AllItems.aspx?ნახვა ={84EEA2F5-121B-40B7-946F-0FA704A1DAA1}&FilterField1 = recruiter&FilterValue1 = გამართავენ

მე მივიღე URL თავად წვდომის საბაჟო სიაში და ხელით ფილტრაცია სტატუსის შესახებ სვეტი (labeled "Recruiter" ზემოთ).

სწრაფი და მარტივი: ჩართვა SharePoint დიზაინერი workflow განახლება InfoPath ფორმა

სცენარი: I have an InfoPath form that front-ends a workflow process implemented using SharePoint Designer. At one point, a manager must approve the form. მას შემდეგ, რაც მე არ შემიძლია იმედი workflow ისტორიის შეხვდება ჩემს აუდიტის მოთხოვნებს, I გადაწყვეტენ შესანახად საკუთარი აუდიტის გაგზავნა პირდაპირ ფორმით თავად.

მიმოხილვა:

დიზაინი ფორმა და აქვეყნებს მას, როგორც ინფორმაციის ტიპი and the form itself to a document library. Mark desired form fields as being updateable from MOSS. The form is tied to the content type and the content type is "attached" to ფორმები ბიბლიოთეკა (ან, თუ გსურთ). Write a workflow that updates the field.

კონკრეტული ნაბიჯები:

  1. Create a document library. This will hold your InfoPath template.
  2. Create a forms library.
  3. Create the InfoPath form. Include a text field, "Audit Message".
  4. გამოქვეყნების სახით, როგორც ინფორმაციის ტიპი (არც ამის დოკუმენტი).
  5. მიუხედავად იმისა, რომ შევსების საგამომცემლო დიალოგის:
    a) შენახვა. Xsn ფაილი დოკუმენტის ბიბლიოთეკა (დახევას #1).
    ბ) Publish the "Audit Message" საველე და ნიშნის ჭეშმარიტი: "Allow users to edit data in this field by using a datasheet or properties page".
    გ) შექმნა ახალი შინაარსით ტიპის და მისთვის შესაბამისი სახელი.
  6. ხელმისაწვდომობა ფორმები ბიბლიოთეკა.
    a) გადასვლა მოწინავე პარამეტრები და საშუალებას ფორმები ბიბლიოთეკა მართოს შინაარსი ტიპის.
    ბ) გსურთ ახლად შექმნილი ინფორმაციის ტიპი (5გ ზემოთ). It will be grouped under "Microsoft InfoPath" (ან მსგავსი).
    გ) Remove the default "Form" შინაარსი ტიპის იურიდიული ბიბლიოთეკა.
    დ) Mark the library to "show as web page" ისე, რომ ფორმა დაიწყება SharePoint და არა InfoPath სამუშაო კლიენტს.
  7. Go back to the forms library proper and click "New" უბრალოდ დარწმუნდით რომ ფორმით იქნება დამატებული სწორად და მოქმედებს როგორც გინდათ.
  8. სროლა up SharePoint დიზაინერი და ნავიგაცია საიტზე რომ მასპინძლობს თქვენს ფორმას ბიბლიოთეკა (საწყისი ნაბიჯი 2).
  9. შექმენით ახალი სამუშაო პროცესის ერთვის ფორმები ბიბლიოთეკა.
  10. Add a single action "Set Field in Current Item". You should expect SharePoint Designer to list your your field, "Audit Message". Assign it a value.
  11. დაწკაპეთ დასრულდება და დაბრუნდეს ფორმის ბიბლიოთეკა.
  12. Create a new form and put some test value into the "Audit Message" სფეროში.
  13. შენახვა და დაბრუნდეს ფორმის ბიბლიოთეკა.
  14. მარჯვენა click, select "Workflow" და დავიწყოთ თქვენი workflow.
  15. It should run almost immediately. Pull up the form (საწყისი ნაბიჯი 12) და თუ ყველა წავიდა დაგეგმვა, "Audit Message" უკვე დაავალა რაც არ უნდა მნიშვნელობა გათვალისწინებული ნაბიჯი 10.

შენიშვნები:

Not all controls may configured for this bi-directional communication. მაგალითად, it does not seem to implement an SPD workflow that modifies text fields wrapped inside repeating sections.

One of the key take-away’s here is that we’ve really created a content type with an associated template. This also enables us to store multiple InfoPath form templates in the same form library.

This requires forms server. It’s most certainly not going to work in a WSS 3.0 გარემოს და ალბათ კი მოითხოვს საწარმო SharePoint გარემო.

Beagle არ დაეშვა (ოქტომბერი 2007 საკითხი)

(ეს არის რეალურად ცოტა ძველი ამბების, მაგრამ, როგორც ჩემი საყვარელი სახანძრო დევიზით აცხადებს, "Better late than never").

შეამოწმეთ იგი out აქ: http://www.sharepointbeagle.com/

თუ თქვენ არა გაქვთ უკვე, be sure to sign up.

რა თქმა უნდა, be sure to read my article about a real-world SharePoint project (მათ შორის მოთხოვნების განმარტება, KPI-ს, შინაარსი ტიპის, dashboards and more) as well as my colleague’s article about the content query web part.

There’s lot of other good stuff too.

როგორ ამოიღონ “ყველა საიტი შინაარსი” ბმული

მე ვთხოვე ამ კითხვაზე თითქმის ყოველ კვირას, ჩვეულებრივ კონტექსტში უსაფრთხოების დისკუსია. An administrator/site creator has provisioned a site, კონფიგურაცია უსაფრთხოების, arranged web parts and customized the quick launch to provide that oh-so-perfect set of options to the end user. მაგრამ, იმ ყუთში, you can’t remove the "view all site content" ბმული.

Mark ვაგნერი უზრუნველყოფს პასუხი აქ (http://www.crsw.com/mark/Lists/Posts/Post.aspx?ID=36). მისი ჩაწერის-up არის შესანიშნავი ორ დონეზე. იგი იძლევა პასუხს კითხვაზე, "How do I remove the View All Site Content" ბმული? მაშინ, ეს შეესაბამება დაუყოვნებლივ შემდგომი on კითხვა: როგორ შემიძლია ადვილად საშუალებას ყველა საიტი შინაარსი ბმული საიტი-by-საიტი საფუძველზე?

პრემიის სახით: მისი მიდგომა მუშაობს WSS, არა მხოლოდ MOSS.

</ბოლო>

გამოწერა ჩემი დღიური!

ჩემი ძალიან საკუთარი CodePlex პროექტი: სამუშაოს გაგრძელება SharePoint დიზაინერი

განახლების: აქ (http://paulgalvin.spaces.live.com/blog/cns!1CC1EDB3DAA9B8AA!310.entry) უახლესი ამ პროექტის.

მე შეიქმნა CodePlex პროექტი დღეს განათავსეს ზოგადი SPD ინტერფეისი კოდი, რომელიც მე blogged შესახებ აქ (http://paulgalvin.spaces.live.com/blog/cns!1CC1EDB3DAA9B8AA!275.entry).

აქვს შევხედოთ აქ (http://www.codeplex.com/spdwfextensions) სანახავად CodePlex პროექტი და გამოაგდონ საბურავები.

თუ თქვენ დაინტერესებული მუშაობს ჩემთან, სროლა off ელექტრონული ფოსტის მისამართზე; mailto:galvin.paul@gmail.com

პროგრამები Tags: , , , ,

SharePoint Designer — საბაჟო საქმიანობაში, რათა შესრულდეს მომხმარებლის განსაზღვრული C # ფუნქციები

განახლების: ეს უკვე გაათავისუფლეს CodePlex აქ: http://www.codeplex.com/spdwfextensions

განახლების: აგრეთვე აქ უახლესი ვერსიის შენიშვნები: http://paulgalvin.spaces.live.com/blog/cns!1CC1EDB3DAA9B8AA!381.entry

განახლების: აგრეთვე აქ ჩემი მოსაზრებები იმის შესახებ commercializing ამ პროექტის: 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 (გააგზავნა) any C# function that you incorporated into the linked assembly.

რაც შეეხება საქართველოში ოქტომბრის ბოლოს, 2007, this is just an initial version of the project. I plan to expand it with a number of additional functions, მათ შორის substring, ინდექსი, შეცვლის, 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.

თუ თქვენ გაქვთ რაიმე კომენტარი, შეკითხვა ან წინადადებები, გთხოვთ, დატოვონ მათ კომენტარი ან მომაწოდეთ.

პასუხისმგებლობის:

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

დაყენების ნაბიჯები (მოჰყვება თითოეული WFE ფერმაში):

1. Download. Zip და ამონაწერი.

2. Install the .dll into the GAC. I usually open c:\Windows ასამბლეის იყენებთ Windows explorer და კოპირება არსებობს.

3. შეცვლა web.config დაამატოთ ასამბლეის უსაფრთხო კონტროლი:

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

<authorizedType Assembly="SpdGenericInterface, მობილური = 1.0.0.0, კულტურის = ნეიტრალური, PublicKeyToken = abe076fd8125f3c4" Namespace="Nivlag" TypeName="*" Authorized="True" />

4. Copy "SpdGenericInterface.actions" რომ C:\Program Files Common Files Microsoft საერთო სერვერზე გაგრძელება 12 თარგი 1033 სამუშაოს

გაითვალისწინეთ, რომ ზემოთ ადგილმდებარეობა სპეციფიკური ინგლისური ენის დანადგარები.

5. დახურვა SharePoint დიზაინერი (თუ ეს უკვე გახსნა).

6. iisreset

7. გახსნა SPD და ახალი სამუშაო პროცესის.

თუ ყველაფერი კარგად, თქვენ უნდა დაჯილდოვდა ახალ კატეგორიას აქცია:

იმიჯი

შენიშვნები:

აგრეთვე აქ (http://blogs.msdn.com/sharepointdesigner/archive/2007/03/15/adding-activities-to-spd.aspx) ამისთვის შესანიშნავი მიმოხილვა პროცესი ქმნის, დაყენების და კონფიგურაციის გამოსავალი მსგავსი.

. Zip განკუთვნილია ამონაწერი უშუალოდ თქვენ გ:\ drive. If you do this, შეგიძლიათ გახსნათ პროექტი და ყველა გზები იქნება თანმიმდევრული.

რომ გამოიყენოთ ეს ვიზუალური სტუდიაში, you probably need to install "Extensions for Windows WF".

The initial upload contains just one "dispatcher function", "ToLower()". To add more functionality, დაამატეთ იგი შეასრულოს მეთოდი როგორც ნაჩვენებია:

 დაცული override ActivityExecutionStatus
          სიკვდილი(ActivityExecutionContext executionContext)
        {

            სიმებიანი functionToDispatch;
            functionToDispatch = ამ.DispatchFunction.ToLower();

            გადართვის (functionToDispatch)
            {
                შემთხვევაში "tolower()":
                    {
                        ამ.OutResult1 = ამ.InParam1.ToLower();
                        შესვენება;
                    }

                სტანდარტული:
                    {
                        ამ.OutResult1 = "Unknown function: [" + ამ.DispatchFunction + "].";
                        შესვენება;
                    }
            }

            დაბრუნდნენ ActivityExecutionStatus.დახურვის;
        } // ActivityExecutionStatus

    }

მაშინ, re-build the project and copy the assembly to the GAC. I expect an iisreset would be required.

SPD სამუშაოს საბაჟო აქცია – მიიღეთ <WorkflowInfo> tag უფლება, რათა თავიდან ავიცილოთ იმედგაცრუება

Part of the process for creating a custom action for SharePoint Designer involves create a ".actions" ფაილი.

მე ი და შეეცადა ნიმუში თარგი რომელიც იწყება off როგორც:

<?xml მობილური="1.0" კოდირების="utf-8" ?>
<
WorkflowInfo xmlns="http://schemas.microsoft.com / SharePoint /">
<
აქციები თანმიმდევრული="მაშინ" პარალელურად="და">

თუმცა, that xmlns attribute prevents my environment from working. My actions don’t show up in SPD.

გამოსავალი არის ზოლები out xmlns ატრიბუტი, do an iisreset and close/re-open SPD.

სწრაფი და მარტივი: კონფიგურაცია MOSS მოძებნოთ კონკრეტულ დოკუმენტს ბიბლიოთეკა

See UPDATE (I) below (11/24/07) წლის როგორ კონფიგურაცია Microsoft Office SharePoint Server 2007 to ინდექსი და Crawl ქსელი ფოლდერები ძებნა

მიზანი: I want to execute a search restricted to a specific document library. ამ შემთხვევაში, დოკუმენტის ბიბლიოთეკა მოიცავს სასწავლო დოკუმენტები.

ნაბიჯი:

1. ჩაწერას URL დოკუმენტის ბიბლიოთეკა.

2. შექმნა ფარგლებს:

გადასვლა ცენტრალური ადმინისტრაცია.

ხელმისაწვდომობა 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. განსაზღვრა ფარგლებს crawl წესები:

სანიშნეს წესი, რომელიც განსაზღვრავს დოკუმენტის ბიბლიოთეკა ამ მასშტაბის.

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

შეიტანეთ სახელი თქვენი ფოლდერიდან (ვხედავ #1 ზემოთ).

Accept the default value of "Include".

დაველოდოთ ფარგლებს განახლება (ან დაიწყოთ იგი).

4. ჩართვა ფარგლებს in საიტი კოლექციაში.

გადასვლა საიტი კრებული, სადაც გსურთ გამოიყენოთ ეს ფარგლები.

დამატება ახალი ფარგლებს შესაბამის ჩვენება ჯგუფს ან ჯგუფებს.

5. ძიება!

ამ ეტაპზე, you’re done. Assuming the scope is properly defined, ეს შესაძლებელი იქნება ფარგლებში წვეთი ზარალი მარტივი და გაფართოებული ძიება და როდესაც თქვენ ძებნის გამოყენებით, რომელიც ფარგლებს, თქვენ მხოლოდ მისაღებად შედეგების ველოდოთ.

შენიშვნები:

დავწერე ამ დღიურში შესვლის რადგან ჩემი ეძებს მარტივი ფარგლებს კონფიგურაცია აღმოჩნდა მშრალი გამოყენებით ფრაზები როგორიცაა:

  • კონფიგურაციის ფარგლებში წელს MOSS
  • კონფიგურაციის ძებნის ფარგლებს moss
  • ფარგლებში ამ SharePoint 2007
  • ფარგლებში ამ SharePoint
  • ძებნის დოკუმენტის ბიბლიოთეკა moss
  • ფარგლებში პირველი moss

თქვენ შეგიძლიათ შექმნათ ძებნის ფარგლებს on ფოლდერი, not just the entire document library.

ფარგლებს შეიძლება გაიზიარა მასშტაბით მრავალი საიტი კოლექციების (აქედან გამომდინარე,, a "shared service").

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

განახლების (I) როგორც 11/24/07:

Kai Shang put together a great post entitled როგორ კონფიგურაცია Microsoft Office SharePoint Server 2007 to ინდექსი და Crawl ქსელი ფოლდერები ძებნა @ http://kaishenghoo.spaces.live.com/blog/cns!8A7458DB12CA5AC9!206.entry

პროგრამები Tags: , ,