Multimedia binary - for a minor version, metadata is published, but the actual binary does not work?

We use Tridion 2009 SP1 with XSLT Templates

The new multimedia component (v0.0) and its downloaded binary file will be correctly published on the preview site in the place where it is located first (the binary file is tbbPublishMultimedia by tbbPublishMultimedia , shown below).

The multimedia component will go into the workflow as a small revision of version v0.1 and during the work (in the section "Content of the finished version" Element "), the component can be edited and the binary file reloaded into the component as necessary.

Each time the v0.x component is saved in the workflow (as v0.1, v0.2, v0.3, v0.4, etc.), the latest version of the “in the workflow” component and its binary file will be correct published on the preview site.

Each time the multimedia component is approved for publication, it leaves the workflow and becomes a new major version (for example, v1.0 .... or v2.0, v3.0, etc.).

If the main version is subsequently edited and re-saved, it becomes the new version of the small version (for example, v1.1), it will be re-published the preview site (like its binary file), and it will be re-introduced workflow.

However, although Tridion correctly publishes the latest small revision of the version of the actual multimedia component (e.g. v1.1), it seems to publish only the latest major version of the binary file that it contains (e.g. version 1.0). Interestingly, it seems to publish the latest v1.1 metadata for this binary (i.e. file type and file size), but not the binary file itself.

In general, Tridion seems to publish the last small / “workflow” revision of the binary, if the multimedia component is v0.x but as soon as the main version exists, it will publish only the last major version of the binary (essentially the version before re-entry workflow).

Which looks anyway ...

  <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> 

Note ... in the above template, you can specify the main version as tcmse:PublishBinary parameter for example, concat($binaryid,"-v2") - determine the version for publication, but since it does not allow you to specify a minor version, so in fact it doesn’t helped.

+7
source share
1 answer

Lately, I have really done little with XSLT templates, but I'm not sure I can help. In any case, can you confirm that this is only with XSLT or does this also happen with other templates? If this happens only with XSLT, then you may encounter an error, and if this happens with all other languages, then it may just be “by design”, and you can do nothing but open a request for improvement.

I recently discovered that if I ask for version 0 (tcm: 1-23-16-v0) of any element, Tridion will return the latest version of the element that the current user can read, including minor versions (in C #). Maybe you can try a try?

+2
source

All Articles