2012-02-23 11 views
7

Estamos utilizando Tridion 2009 con SP1 plantillas XSLTArchivo binario multimedia: para una versión menor, ¿publica metadatos pero el binario real no?

Un nuevo componente multimedia (v0.0) y su archivo binario cargado será publicado correctamente a la vista previa del sitio en el punto que se primera salvó (editorial del binario se realiza mediante la plantilla tbbPublishMultimedia, que se muestra a continuación).

El componente multimedia entrará flujo de trabajo como revisión menor versión v0.1 y al mismo tiempo en el flujo de trabajo (en "Preparar contenido Edición artículo") el componente puede ser editado y el archivo binario re-subido en el componente por el autor según sea necesario.

Cada vez que el componente v0.x se guarda en el flujo de trabajo (como v0.1, v0.2, v0.3 , v0.4, etc) la última "en el flujo de trabajo" versión del componente y su archivo binario se publicará correctamente en el sitio de vista previa.

Cada vez que se aprueba el componente multimedia para su publicación, deja el flujo de trabajo y se convierte en una nueva versión principal (por ejemplo, v1.0 .... o v2.0, v3.0, etc.).

Si una versión principal es editado posteriormente y re-guardado se convierte en una nueva versión de revisión menor (egv1.1) será entonces re-publica en el sitio vista previa (al igual que su archivo binario) y se luego volverá a ingresar al flujo de trabajo .

Sin embargo, mientras que Tridion publica correctamente la versión más reciente revisión menor del componente real de multimedia (por ejemplo, v1.1) parece publicar sólo la última versión principal del archivo binario que contiene (por ejemplo, la v1.0 versión). Curiosamente, parece publicar los últimos metadatos v1.1 para ese archivo binario (es decir, tipo de archivo y tamaño de archivo ), pero no el archivo binario en sí.

En resumen, parece Tridion para publicar la última de menor importancia/revisión "en flujo de trabajo" versión del archivo binario si el componente multimedia es v0.x pero una vez que existe una versión principal sólo se publicará la última versión principal del archivo binario (esencialmente la versión anterior al reingreso al flujo de trabajo ).

Eso es lo que parece de todos modos ...

<xsl:template name="tbbPublishMultimedia"> 
    <xsl:if test="string(//tcm:Type)='Multimedia'"> 
     <xsl:variable name="binaryid" 
     select="string(//tcm:Component/@ID)"/> 
     <xsl:element name="tcm:MultimediaPublishedFileName"> 
      <xsl:value-of select="tcmse:PublishBinary($binaryid)"/> 
     </xsl:element> 
    </xsl:if> 
    </xsl:template> 

Nota ... en la plantilla por encima de su posible especificar una versión principal como la tcmse:PublishBinary parameter por ejemplo concat($binaryid,"-v2") a determinar qué versión de publicar, pero ya que no le permite especificar una versión menor de así que eso realmente no ayuda mucho

+0

¿Qué usuario está ejecutando el servicio del editor? –

Respuesta

2

No he hecho mucho con las plantillas XSLT últimamente, no estoy seguro de poder ayudar. De todos modos, puede confirmar si es solo con XSLT o si sucede también con otras plantillas. Si solo ocurre con XSLT, es posible que enfrente un error, mientras que si le sucede a todos los demás idiomas, simplemente podría ser "por diseño" y no hay mucho que pueda hacer aparte de abrir una solicitud de Mejora.

Encontré recientemente que si pido la versión 0 (tcm: 1-23-16-v0) de cualquier elemento, Tridion devolverá la última versión del artículo que el usuario actual puede leer, incluidas las versiones menores (Cª#). Tal vez puedas probar eso?