SharePoint Designer — Actividad personalizada para ejecutar funciones definidas por el usuario C#

ACTUALIZACIÓN: Esto ha sido lanzado a CodePlex aquí: http://www.codeplex.com/spdwfextensions

ACTUALIZACIÓN: Consulte aquí para notas de la versión más recientes: http://paulgalvin.spaces.live.com/blog/cns!1CC1EDB3DAA9B8AA!381.entry

ACTUALIZACIÓN: Consulte aquí para mis reflexiones sobre la comercialización de este proyecto: http://paulgalvin.spaces.live.com/blog/cns!1CC1EDB3DAA9B8AA!569.entry

Este proyecto proporciona una actividad personalizada en SharePoint Designer. Utilizar esta actividad personalizada para invocar (envío) cualquier función de C# que incorporado en el conjunto vinculado.

Finales de octubre, 2007, Esto es sólo una versión inicial del proyecto. Voy a ampliar con una serie de funciones adicionales, incluida la subcadena, índice, reemplazar, invocación de servicios web y cualquier cosa que parezca útil o interesante. También planeo publicar esto en codeplex una vez tengo mi acto juntos en ese frente. Esto también será desplegable como una solución en algún momento.

Si tienes cualquier comentario, preguntas o sugerencias, por favor dejar en los comentarios o enviarme un correo electrónico.

Descargo de responsabilidad:

No hacer absolutamente ninguna reclamación en cuanto a la idoneidad de éste para cualquier propósito. Usar bajo su propio riesgo.

Pasos de instalación (que deben seguirse para cada WFE en la granja):

1. Descargar el .zip y extraer.

2. Instalar el .dll en la GAC. Generalmente abro c:\WindowsAssembly utilizando el explorador de windows y copia TI allí.

3. Modificar el archivo web.config para agregar el ensamblado a los controles de seguridad:

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

<authorizedType Asamblea = "SpdGenericInterface, Versión = 1.0.0.0, Cultura = neutral, PublicKeyToken = abe076fd8125f3c4" Namespace = "Nivlag" TypeName = "*" Autorizado = "True" />

4. Copia "SpdGenericInterface.actions" a c:\Programa de programaArchivos comunesMicrosoft Sharedweb server extensions12TEMPLATE1033Workflow

Tenga en cuenta que la ubicación anterior es específica para las instalaciones en inglés.

5. Cierre de SharePoint Designer (Si ya está abierto).

6. iisreset

7. Abrir SPD y crear un nuevo flujo de trabajo.

Si todo va bien, Usted debe ser recompensado con una nueva categoría de acción:

imagen

Notas:

Ver aquí (http://blogs.msdn.com/sharepointdesigner/archive/2007/03/15/adding-activities-to-spd.aspx) para una visión increíble del proceso de creación, instalación y configuración de una solución como ésta.

El .zip está diseñado para extraer directamente a usted c:\ en coche. Si haces esto, puede abrir el proyecto y todas las rutas serán coherentes.

Para utilizar esto en visual studio, probablemente deba instalar "Extensiones de Windows WF".

La carga inicial contiene sólo una "función de distribuidor", "ToLower()". Para agregar más funcionalidad, Agregue el método Execute como se muestra:

 protegido reemplazar ActivityExecutionStatus
          Ejecutar(ActivityExecutionContext executionContext)
        {

            cadena functionToDispatch;
            functionToDispatch = Esto.DispatchFunction.ToLower();

            conmutador (functionToDispatch)
            {
                caso "tolower()":
                    {
                        Esto.OutResult1 = Esto.InParam1.ToLower();
                        salto;
                    }

                predeterminado:
                    {
                        Esto.OutResult1 = "Función desconocida: [" + Esto.DispatchFunction + "].";
                        salto;
                    }
            }

            retorno ActivityExecutionStatus.Cerrado;
        } // ActivityExecutionStatus

    }

A continuación, volver a construir el proyecto y copiar el ensamblado a la GAC. Espero que se requeriría un iisreset.

9 pensamientos sobre "SharePoint Designer — Actividad personalizada para ejecutar funciones definidas por el usuario C#

  1. Gerry Whitworth
    Seguí sus instrucciones y todo parecía funcionar hasta elegir la acción en SP Designer. El diseñador no pegue el código en el flujo de trabajo. Te envié a este chico un mail y supongo que él está demasiado ocupado para responder.
    Resuelto el problema yo mismo.
    Pasadas las acciones de "SpdGenericInterface.actions" en la WSS.actions"" archivo y todo funcionó. Espero que esto ayude a otros.
    Respuesta
  2. Marco mancinelli
    suena bien, pero no puedo instalar la extensión =(
    mi diseñador ver con ella pero cuando hago clic en nada parece… por favor ayuda… Tnx.
    Respuesta
  3. Bernard Lambeth

    Estoy usando esta actividad personalizada para reemplazar() función. La granja es SharePoint 2007, con equilibrio de carga web front-ends de. Me estoy poniendo Fallo intermitente para empezar errores, Pero los flujos de trabajo reiniciar normalmente en 5 – 15 min. Yo creo que los trabajos de temporizador Failover de flujo de trabajo y flujo de trabajo están reiniciando los flujos de trabajo. He revisado los logs de SharePoint, y finalmente alcanzó este error.

    RunWorkflow: Microsoft.SharePoint.SPException:
    en Microsoft.SharePoint.Workflow.SPNoCodeXomlCompiler.LoadXomlAssembly(Cadena assmNameIn, SPWeb web)
    en Microsoft.SharePoint.Workflow.SPWinOeHostServices.CreateInstance(GUID trackingId, SPWorkflow flujo de trabajo)
    en Microsoft.SharePoint.Workflow.SPWinOeEngine.RunWorkflow(GUID trackingId, SPWorkflowHostService host, SPWorkflow flujo de trabajo, Eventos de colección 1, TimeSpan timeOut)
    en Microsoft.SharePoint.Workflow.SPWorkflowManager.RunWorkflowElev(SPWorkflow originalWorkflow, SPWorkflow flujo de trabajo, Eventos de colección 1, SPRunWorkflowOptions runOptions)

    He encontrado una referencia a este error en otro blog, http://www.kentd.com/index.php/all-blog/218-nivlag-and-spdgenericinterface. El autor indicó que usaba la labor personalizado reemplazar(), así como. ¿Has visto este error? ¿Tienes alguna sugerencia sobre cómo resolverlo?

    Respuesta
    1. Paul Galvin Envío autor

      Lo siento nunca me respondió. En punto de thi, es probablemente discutible. Espero que hayas podido resolverlo.

      Respuesta

Contesta

su dirección de correo electrónico no será publicada. Los campos necesarios están marcados *