Hot answers tagged

12

From your description, I suspect you may have cache enabled on your app servers, but not using (or not correctly configured) the Cache Channel Service. There's some info on the Tridion object Cache on Tridion World and also on SDL Live Content (login required) Update The configuration seems OK as far as I can remember the 2009 config... can you double ...


10

Apart from Pankaj's reasons, also consider the following: In a production (live) environment, you wouldn't want the CM database running on the front end for security reasons. The usual setup is that the back end system, in this case the Tridion CM is running completely behind a firewall and in a different network than your front end servers, which need the ...


10

In an Assembly Template Building Block you can determine the RenderMode and PublishingContext via the engine. But before checking what Publication Target the current item is being published to, you need to know if you are actually being published, or if the render action of the Template is just a preview. if (engine.RenderMode == RenderMode.Publish) { ...


9

You can get version history on the following items: Component Component Template Template Building Block Page Template Page Schema Organizational items don't have a versioned history. To keep a history on this type of information, consider placing it in a "configuration" component or using the Event System to record the details in Application Data or a non-...


9

You mention this"Also if I put ASP code in the CT this ASP code is showed in the page as text." If you want to have asp code (i assume you mean asp.net code) and link resolving (which also uses an asp net server control) in a dynamic component presentation, then you should make sure to publish this dcp as an ascx control, not just as a html text fragment. ...


9

The TOM.NET API in 2009 was read-only, so your only option is the TOM API, and for .NET code, you can use the TOM Interop DLLs. You will need to reference Tridion.ContentManager.Interop.cm_tom.dll and Tridion.ContentManager.Interop.cm_defines.dll (found in the [Tridion]\bin\client\PIA folder on your CMS) Then you can use the TOM API in your .NET code (...


8

There is no such functionality in the CMS. However, Tridion CME is a ASP .Net application so you can execute some code when a new session is started. The easiest way is to do it in the global asax but it will implicated that you need to update the tridion source, I think you can add an http module and attach to the Http Application Session Start. public ...


8

It's only a checkbox when displayed in the CME. Basically it's a field like any other, so you can just check for the actual value. Something like this should work: <!-- TemplateBeginIf cond="MyField='MyValue'" --> ... <!-- TemplateEndIf -->


7

You are right, the Publishing Queue only stores the most recent publish action for an item. The best way to get this information is to capture it in a custom database using the Event System. You can implement an event with the following signature: EventSystem.SubscribeAsync<RepositoryLocalObject, SetPublishStateEventArgs> (ItemFinishedPublishing, ...


7

Legacy events are backwards compatible in Tridion 2011. Check if you class is using this Prog Id "TDSEvents.Events" Is your class COM visible?, you can check it in the AssemblyInfo class Does your assembly have an strong name? As Nuno always recommends, after you have checked all the steps above, create a single vbs file and try to create an object for ...


7

In a Format Area (aka. Rich Text Editor) all content is stored as XHTML and thus it needs to be well formed. So this means that if you add this URL in the content, the & sign needs to be escaped into &amp;. Now technically that isn't necessary for the href attribute of your link, but SDL Tridion still seems to force that on to us. Nothing you can ...


7

You should not run into any issues. SDL will always recommend installing these two databases on different machines. It is a fully supported scenario. If you are moving your Broker DB to the new machine, all you should need to do is edit your cd_broker_conf.xml (for 2009) or cd_storage_conf.xml (for 2011 or 2013). NOTE: Most implementations have more than ...


7

If your license expires, all of the relevant functionality will silently disappear from the CME. The services will refuse to start, though, and will log the licensing exception. There's separate licenses for Audience Manager and Outbound E-mail and each feature checks for the appropriate license. Generally speaking anything related to managing and ...


7

The link in pankaj's answer does have some great points, if that doesn't resolve it, I'd recommend adding the following information to your question: The DWT code where you perform the HREF to your component link Confirm the link you wish to link to is published The language you are using to publish the content asp, rel, etc An overview of your CD ...


7

I think the best way to do it is to add a C# Fragment or .NET TBB to calculate the number of elements you will be rendering in your DWT and push it in a Package Variable so that you can access it. <div class="orbit-slide-number"> <span>1</span> of <span> @@NumberOfElements@@ </span> </div>


7

Only one user needs database access, and that's the "TCMDBUSER" account. The MTSUser account does not need any database permissions. In Tridion CM in 2011, you'll have just one user account (default: TCMDBUSER) and in CD you may have multiple users depending on number of databases. None of these users is a "Tridion user", they're purely DB users. You will ...


7

"JAXBUtil - Unmarshalling failed" means that the XML file was not able to be parsed (deserialized). This typically happens when the java class(es) mapped to the Xml elements don't match up. This seems logical because transport/deployer mechanism was seriously updated/changed from 2009 to 2013. And I don't believe this is an officially supported scenario ...


7

You can find 'Release notes' associated with each version of SDL Tridion in the online documentation. For example, these can be found on the PDF documentation downloads page in the online documentation for SDL Tridion 2013 SP1. This document is described as: The release notes describes new features, changed features, what has been fixed in this ...


7

engine.GetSession().User returns the User for which the Session was created. So it definitely will not solve the issue. I guess PublishEngine.GetPublishInfo(item) excludes the current publish because the current publish operation is still not finished. But I guess publish transaction can help you getting the user title. You can try getting the publish ...


7

The Publisher for sure caches objects, but the lifetime of that cache is normally from the point the the Publish Transaction is picked up from the queue to the point that rendering (of all items in the Publish Transaction) is done. There is a possibility to configure a shorter lifetime (only during rendering of individual items) but this is normally not ...


6

The Tridion reporting project will allow you to discover this and many more things about your users' behaviour. It uses the events system to log pretty much all Tridion activity. Of course, you could also write your own event handlers if you wanted a more direct focus on logins. Either way, it's interesting to look at this project.


6

An often seen issue with SDL Tridion 2009 is that the SDL Tridion Content Manager COM+ application does not have a memory limit set and it will be using up too much memory on the server. There can be multiple causes for this, there are known memory leaks which have been solved by hotfixes, but it is also just a standard behavior of COM+ to not do a timely ...


6

You seem to be missing one of the function sources. You should find a dll which contains the function GetImageAlt and add it to the GAC. After, you need to add a reference to this dll into the functionSources section of your Tridion.ContentMananger.config. See an example snippet of the Tridion.ContentMananger.config below: <tridion.templating> <...


6

It completely depends on what kind of performance you are looking for, how many concurrent publishing of items will you be doing and what all are your performance benchmarks. Let me tell you a practical example, We so far have done all the implementation (moderately big and huge) where we have kept CD database on the same server as that of CM database and ...


6

The answers are basically already given, but allow me to summarize in my own view. The separation of the CM and CD database is there for the following reasons: security, you don't want your CM database server to be in a location where it can be exposed to the internet. In the disastrous event that your CD database server is ever compromised, you will at ...


6

<!-- TemplateBeginIf cond="Field.Values(1) != ''" --> ... <!-- TemplateEndIf --> above will check if checked


6

In 2011 and up you have the BluePrint Hierarchy option under the BluePrinting context menu, in 2009 this was part of the Where Used option in your context menu. Opening the Where Used in 2009 you will see an additional tab called BluePrint hierarchy which shows the exact same information as you have in 2011 and up. It really is only the location which has ...


6

You can get the bytes of the document/image/... that was uploaded to the multimedia component. I believe you can get it using this code // MMComp contains the multimedia component - you can get this via a call to the GetObject(tcmuri) function if (MMComp.BinaryContent != null) { var bytes = MMComp.BinaryContent.GetByteArray(); } Now, you have the ...


6

Did you read these https://stackoverflow.com/questions/12210711/tridion-template-builder-and-visual-studio-debugging How can I debug Tridion Templates locally without connecting to TcmTemplateDebugHost? http://docs.sdl.com/LiveContent/content/en-US/SDL%20Tridion%20full%20documentation-v1/GUID-05CAD6E3-2CC0-4846-AB72-0F062A07C844 If you did - but they didn'...


5

Tridion Content Delivery database does not include Stored Procedures indeed, and all queries are generated on the fly. In Tridion 2009 (I believe) the queries are not cached, but the individual objects are cached - so executing the query will hit the database, but then loading each object involved in the result will come from cache (if available). Anyway, ...


Only top voted, non community-wiki answers of a minimum length are eligible