Pregunta

Estoy siguiendo un artículo que explica cómo utilizar la clase ICustomAttributeDataHandler .

Estoy creando una columna personalizada para la pantalla de la bandeja de entrada, pero el problema es que el valor puse para mi atributo personalizado no se refleja en la pantalla.

Como prueba de que estoy cambiando el nombre de la tarea de "Whoknows". Sin embargo, este código no se está efectuando lo que se emite en la pantalla:

ICustomAttributeRecordSet.setCustomAttributeValue(i, "taskName", "whoKnows");

(soy capaz de imprimir líneas de depuración de mi clase personalizada cuando la bandeja de entrada es vista, así que sé que mi código se está ejecutando.)

Alguien en los comentarios de este artículo escribió:

  

el usuario debe llamar al   método "setCustomAttributesInQuery ()   en el DataProvider que pasa en una   matriz de cadenas de los atributos personalizados

... lo que hace que meen? Podría ser este mi problema?

gracias.

¿Fue útil?

Solución

Para ser honesto, ya he utilizado Webtop, pero sólo como un usuario. He encontrado una href="http://www.dmdeveloper.com/forum/showthread.php?t=13518" rel="nofollow puesto en el grupo de discusión desarrollador dm que pueden ser útiles , sin embargo:

  

Para crear una columna personalizada en el   Lista de documentos de que no tienes que ir a través de   este complejo procedimientos. Puedes usar   atributo personalizado para datahandlers   esto.

     
      
  1. En primer lugar en su lista de objetos de archivo del componente XML añadir su columna personalizada   definición en la etiqueta de "columnas". Tú   Incluso puede agregar columnas estáticas en lugar de   los atributos de Documentum.
  2.   
  3. Ahora crear una clase que implementa la ICustomAttributeDataHandler.
  4.   
  5. Implementar el valor por defecto los métodos y getRequiredAttributes la getData   función.
  6.   
  7. En getRequiredAttributes añadir atributos del objeto que está   buscando.
  8.   
  9. En el método GetData recuperar cada fila y luego en base a la   atributo que se ve, acaba de establecer la   valor que desea. 6) Por último   definir su clase en el archivo app.xml
  10.   
     

Hay una sección en WDK Desarrollos   guía con respecto   ICustomAttribuetDataHandlers. Buscar   el tema llamado "Adición de encargo   atribuye a una cuadrícula de datos".

No estoy seguro si esto es la solución final, pero espero que ayude!

Otros consejos

Para contestarle pregunta sobre setCustomAttributesInQuery ()

cada cuadrícula de datos en WDK está respaldado por un proveedor de datos subyacente. Usted puede obtener este proivder utilizando el siguiente código.

Datagrid datagrid = (Datagrid)getControl("doclist_grid",com.documentum.web.form.control.databound.Datagrid.class);
DataProvider dp = datagrid.getDataProvider();

Una vez que hayas hecho esto, puede llamar

dp.setCustomAttributesInQuery(myArr);

No estoy realmente seguro de si esto es parte de la solución a su problema, pero se puede probar esto y ver a dónde te lleva.

Tiene que configurar el componente de la bandeja de entrada.

Si utiliza la vista clásica, vaya a inboxlist componente y añadir su atributo personalizado.

<column>
    <attribute>CustomAttributeName</attribute>
    <label>Custom Attribute Label</label>
    <visible>true</visible>
</column>

Su atributo personalizado tiene que estar en un tipo personalizado que es un subtipo de dmi_queue_item, porque inboxlist muestra sólo dmi_queue_item objetos.

Espero que esta ayuda,

Saludos, Tejas.

Esto puede ser un problema inexistente, pero en base a su código, no puede decir si está haciendo esto:

ICustomAttributeRecordSet.setCustomAttributeValue(i, "taskName", "whoKnows");

o esto:

ICustomAttributeRecordSet rs;
rs.setCustomAttributeValue(i, "taskName", "whoKnows");

Usted debe llamar al método setCustomAttributeValue en el puerto RS instancia de objeto, no en la interfaz.

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