What API can I use to write SDL Tridion workflows?

I would like to create a workflow using SDL Tridion 2011 SP1, and I am viewing the documentation on the live content portal.

I have a few questions when I look at the documentation as follows:

  • Is it possible to use C # (TOM.NET) for automated actions / solutions? or should I use only VBScript (TOM) ? Is there any code example presented on the real content portal for automated activities / solutions?

  • If C # (TOM.NET) is not allowed to be used in workflows, why are its links to namespace / class / member given there in the TOM.NET API file?

  • If VBScript is only allowed in WF, where can I get a link to the / TOM API code in the live SDL content? At the moment, I do not have access to the SDL Tridion server to get documentation from the installer package.

+6
source share
4 answers

Is it possible to use C # (TOM.NET) for automated actions? Or should I use only VBScript (TOM)?

You can use TOM in C # code to write automated actions. Primary assembly (IIRC) is provided for this purpose.

Is using TOM.NET used in workflows?

Access to workflow elements from existing TOM.NET code is supported (i.e. TBB or DataExtender). That way, you can request items that are in the workflow, start workflows, etc. But using TOM.NET to write automated workflow operations is not supported .

The reason for this has something to do with incompatible stream models from what I remember. But I basically just took the floor of the developers for it; they should know better than me.

Where can I get a link to the / TOM API code?

The API reference documentation for Tridion is missing from LiveContent, but is instead provided in CHM files (or zipped JavaDocs). The latest documentation for the TOM API can be found in the "full SDL Tridion 2009 documentation" on the Tridion 2009 documentation page on the SDL Tridion World (login required).

Thanks to Quirijn and Alvin for pointing this out in the comments.

+9
source

You can use C # for automated tasks. Create a class and sign it with:

[ProgId("[Namespace].[Class Name]")] [ComVisible(true)] 

And sign the assembly using RegAsm.exe with the /codebase option.

Then in Script Automated Action you can use this object.

0
source
  • Create a workflow diagram (based on requirement) using visio after installing the visio plugin.
  • Upload the workflow to the SDL Content Manager by providing credentials and selecting the appropriate publication.
  • For automated actions: create a C # class library and pass trillion dlls and custom progid and comvisible = true in the solution.
  • Create the necessary features for your workflow.
  • register the assembly on the SDL Tridion Content Manager server.
  • in the "Edit script" workflow, use the vb script code to get the C # object and its methods.
  • This will simplify VBScript code and provide development flexibility for working in C #.
-1
source

It is good to use the TOM.Net API. However, we must take into account that we will need to create session instances, since our new TOM.Net for Workflow will not allow you to transfer a WorkItem instance from VBScript (the "Code" tab in Visio for automatic activity), and you are forced to transfer TcmUri for which WorkItem . Creating a session is required to instantiate Tridion objects, since you just have tcmuri. It is recommended that you use the C # class registered as a COM class using the ComVisible and ProgId attributes, but use CoreServices for all processing in the Com Visible class.

If you use Core Services for processing, you will not need to worry about creating sessions, and your kernel will be much faster and more scalable. You might be interested in using a TCP binding or Net Pipes binding for performance.

-2
source

Source: https://habr.com/ru/post/918920/


All Articles