SPWorkflowTaskProperties.ExtendedProperties no están llenando los campos en mi tarea

StackOverflow https://stackoverflow.com/questions/218988

  •  03-07-2019
  •  | 
  •  

Pregunta

Estoy intentando pasar información de una tarea creada dentro de un flujo de trabajo a su formulario de tarea correspondiente. Antes de la actividad CreateTask, creo un SPWorkflowTaskProperties y lo lleno con la información habitual (título, asignado a, etc.). También agrego algunos elementos a la propiedad ExtendedProperties. Sin embargo, esas propiedades personalizadas nunca llegan a la Tarea.

He intentado configurar la clave de propiedad en:

  • el Guid de uno de los contenidos de mi tarea campos de tipo;
  • el nombre interno de uno de los tipos de contenido de mi tarea campos;
  • un nombre no relacionado (en el espera obtener la información en el propiedades de la tarea en lugar de su campos).

Nada funciona. La tarea, una vez creada, contiene solo los valores de campo integrados que he establecido. No se muestra ninguno de los valores que agregué explícitamente a las propiedades extendidas.

La secuencia (simplificada) de mis actividades es la siguiente:

  • PrepareTask. Esta es una costumbre actividad que contiene el SPWorkflowTaskProperties
  • CreateTask. Las propiedades de la tarea están vinculadas a la de la actividad PrepareTask.
  • OnTaskCreated. Las propiedades de la tarea están vinculadas a la de la actividad PrepareTask.
  • Mientras (tarea no completada)
    • OnTaskChanged

Estoy usando WSS 3.0 SP1 y un formulario de tarea ASPX (NO InfoPath).

¿Fue útil?

Solución

Todavía no sé por qué mi solución original no funcionó. Pero he encontrado una solución alternativa. Mi secuencia de actividades es ahora:

  • CreateTask
  • OnTaskCreated
  • CopyTaskItems. Esta es una costumbre actividad que pone valores en mi campos de tareas personalizadas, luego actualizaciones la tarea.
  • Mientras (tarea no completada)
    • OnTaskChanged

Por lo tanto, tengo que crear la tarea, luego introducir valores inmediatamente y actualizarla.

Espero que esto ayude a algún futuro lector de esta pregunta.

Otros consejos

Debería utilizar un documento ItemMetadata.xml como fuente de datos secundaria que contiene la definición de los campos que desea pasar a su formulario de tarea. Algo así como:

<z:row xmlns:z="#RowsetSchema" 
    ows_Instructions="" 
    ows_Body=""
    ows_Comments=""
    ows_ApprovalStatus=""
/>

El nombre del archivo es importante por cierto.

Observe el ows_ (ya que utiliza los servicios web todos los campos de la lista tendrán el prefijo ows .)

Luego, en su formulario de ruta de información, establezca el valor predeterminado de cada control en el que desea mostrar esta información. Presione el botón fx e inserte un campo o grupo desde el origen de datos secundario.

Un buen recurso: http: // weblog .vb-tech.com / nick / archive / 2007/02/25 / 2207.aspx

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top