Programu SharePoint Designer — Czynność niestandardową do wykonywania funkcji zdefiniowanych przez użytkownika C#

AKTUALIZACJA: To zostało zwolnione do CodePlex tutaj: http://www.codeplex.com/spdwfextensions

AKTUALIZACJA: Aby uzyskać najnowsze informacje o wydaniu, zobacz tutaj: http://paulgalvin.spaces.live.com/blog/cns!1CC1EDB3DAA9B8AA!381.entry

AKTUALIZACJA: Zobacz tutaj dla moich myśli na commercializing tego projektu: http://paulgalvin.spaces.live.com/blog/cns!1CC1EDB3DAA9B8AA!569.entry

Ten projekt zawiera niestandardowe działania w programie SharePoint Designer. Używać ten niestandardowe działania aby wywołać (wysyłki) dowolnej funkcji C#, który można włączyć do połączonego Zgromadzenia.

Od końca października, 2007, to jest po prostu wstępnej wersja projektu. Mam zamiar rozszerzyć go z kilku dodatkowych funkcji, tym podciąg, Indeks, Zamień, wywoływania usługi sieci web i wszystko, co wydaje się przydatne lub ciekawe. Również zamiar ten post na witrynie codeplex, gdy już mój akt razem na tym froncie. To również będzie rozmieścić jako rozwiązanie w pewnym momencie.

Jeśli masz uwagi, pytania lub sugestie, Proszę opuścić je w uwagach lub e-mail ja.

Zrzeczenie się odpowiedzialności:

Robię absolutnie żadnych roszczeń co do przydatności tego w celach. Używać przy twój własny ryzyko.

Kroki instalacji (dla każdego WFE w gospodarstwie):

1. Pobrać .zip i wyodrębnić.

2. Rata ten .dll w pamięci podręcznej GAC. Zwykle open c:\windowsassembly przy użyciu Eksploratora windows i kopia it.

3. Modyfikowanie pliku web.config, aby dodać wirtualny plik dziennika do bezpiecznych formantów:

<System.Workflow.ComponentModel.WorkflowCompiler>
<konfiguracyjnych>

<authorizedType montaż = "SpdGenericInterface, Wersja = 1.0.0.0, Kultura = neutral, PublicKeyToken = abe076fd8125f3c4" Namespace = "Nivlag" Atrybut TypeName = "*" Zezwolenie = "True" />

4. Kopia "SpdGenericInterface.actions" c:\Program FilesCommon FilesMicrosoft Sharedweb server extensions12TEMPLATE1033Workflow

Należy zauważyć, że powyżej lokalizacji jest specyficzne dla języka angielskiego instalacji.

5. Zamknięcie programu SharePoint Designer (Jeśli jest już otwarty).

6. polecenie iisreset

7. SPD i tworzenie nowego przepływu pracy.

Jeśli wszystko pójdzie dobrze, powinien być wynagradzany z nowej kategorii działań:

obraz

Notatki:

Zobacz tutaj (http://blogs.msdn.com/sharepointdesigner/archive/2007/03/15/adding-activities-to-spd.aspx) wspaniałe przegląd procesu tworzenia, Instalowanie i Konfigurowanie rozwiązanie jak to.

Zip jest zaprojektowany aby rozpakować bezpośrednio do Ciebie c:\ jazdy. Jeśli to zrobisz, można otworzyć projektu i wszystkie ścieżki będą zgodne.

Do korzystania z programu visual studio, ty staż potrzebować wobec rata "Rozszerzenia dla Windows WF".

Początkowe upload zawiera tylko jeden "funkcja podglądu", "ToLower()". Aby dodać więcej funkcji, dodać go do Execute Metoda, jak pokazano:

 chronione zastępowanie ActivityExecutionStatus
          Wykonać(Kontekst ActivityExecutionContext executionContext)
        {

            ciąg functionToDispatch;
            functionToDispatch = to.DispatchFunction.ToLower();

            przełącznik (functionToDispatch)
            {
                Sprawa "tolower()":
                    {
                        to.OutResult1 = to.InParam1.ToLower();
                        przerwa;
                    }

                Domyślnie:
                    {
                        to.OutResult1 = "Nieznana funkcja: [" + to.DispatchFunction + "].";
                        przerwa;
                    }
            }

            Powrót ActivityExecutionStatus.Zamknięte;
        } // ActivityExecutionStatus

    }

Następnie, ponownie Skompiluj projekt i skopiować wirtualny plik dziennika do pamięci podręcznej GAC. Oczekuję, że iisreset będzie wymagane.

9 przemyślenia na temat „Programu SharePoint Designer — Czynność niestandardową do wykonywania funkcji zdefiniowanych przez użytkownika C#

  1. Gerry Whitworth
    Podążyłem za jego wskazówkami i wszystko wydawało się do pracy, dopóki mogę wybrać akcję w SP projektanta. Projektant nie wklei Kodeksu pracy. Wysłałem ten facet e-mail i myślę, że jest on zbyt zajęty, aby odpowiedzieć.
    Rozwiązał problem sam.
    Ostatnie działania z "SpdGenericInterface.actions" do "WSS.actions" plik i wszystko działało. Mam nadzieję, że to pomaga innym.
  2. Marco mancinelli
    brzmi to dobrze, ale nie mogę zainstalować rozszerzenie =(
    Projektantem przeciw Zobacz to, ale gdy klikam na to nic nie pojawiają się… prosze o pomoc… tnx.
  3. Bernard Lambeth

    Ja jestem przy pomocy ten zwyczaj działalności Zamień() Funkcja. Farmy programu SharePoint jest 2007, z równoważeniem obciążenia sieci web z przodu końców. I 'm getting sporadyczny błąd zacząć błędy, ale przepływy pracy zwykle ponownie w 5 – 15 min. Uważam, że zadania czasomierza przepływu pracy i przepływu pracy awaryjnej są ponowne przepływy pracy. Sprawdziliśmy dzienników programu SharePoint, i wreszcie złapać ten błąd.

    RunWorkflow: Microsoft.SharePoint.SPException:
    w Microsoft.SharePoint.Workflow.SPNoCodeXomlCompiler.LoadXomlAssembly(Ciąg assmNameIn, Sieci Web programu SharePoint w sieci web)
    w Microsoft.SharePoint.Workflow.SPWinOeHostServices.CreateInstance(Identyfikator GUID trackingId, SPWorkflow pracy)
    w Microsoft.SharePoint.Workflow.SPWinOeEngine.RunWorkflow(Identyfikator GUID trackingId, SPWorkflowHostService hosta, SPWorkflow pracy, Kolekcja "1 wydarzenia, Przedział czasowy limit czasu)
    w Microsoft.SharePoint.Workflow.SPWorkflowManager.RunWorkflowElev(SPWorkflow originalWorkflow, SPWorkflow pracy, Kolekcja "1 wydarzenia, SPRunWorkflowOptions runOptions)

    Znalazłem odniesienia do tego błędu na innym blogu, http://www.kentd.com/index.php/all-blog/218-nivlag-and-spdgenericinterface. Autor wskazał, że był przy użyciu niestandardowych actitivity zastąpić(), jak dobrze. Mieć ty widział ten błąd? Czy masz jakieś sugestie, jak go rozwiązać?

    1. Paul Galvin autor postu

      Przepraszam, ja nigdy nie odpowiedział. Thi w punkcie, jest to prawdopodobnie dyskusyjny. Mam nadzieję, że udało Ci się go rozwiązać.

Zostaw odpowiedź do Marco mancinelli Anuluj odpowiedź

Twoj adres e-mail nie bedzie opublikowany. wymagane pola są zaznaczone *