OpenExchange is a quite nice way to improve SDL translation tools without having to reinvent them from the begining. SDL proposes a whole API to use the functionality of Studio and Multiterm 2009, so that private companies can insert these tools more deeply in their own project management system. Programming small applications can help win a lot of time in project management and quality insurance for example.
I made my first step to learn about the content of this API. Here are listed some steps and difficulties I met, working with Microsoft Visual C# 2010 Express.
1. Contact SDL to get a link to the API documentation: link at the bottom of this page http://www.sdl.com/en/language-technology/partners/sdl-openexchange/start-developing/.
2. Install the SDK package by clicking on "SDL SDK 2.0 Installer (sample code, project templates)" (see screenshot OpenExchange Website below)
3. In Windows "Start menu", there are now sample projects available. I made my first steps with the project automation API/batch analyser tool. The sample codes are written for Visual Studio 2008, so that the first message I got in Visual C# 2010 Express is a note about this. A conversion wizard can be launched.
A large description of this example is to be found following the link "Project Automation API 1.0 (allows automation of the project creation, project tasks, etc.)" (see screenshot OpenExchange Website above)...
4. After converting the project, I had to make three corrections to make the program work:
A. In the "project properties", tab "application", change the "target framework" to ".NET Framework 3.5"
B. In the project properties, tab debug, enter the argument you need, for instance "c:\temp\test c:\temp\tm\tm.sdltm /y /y /y /y"
C. In "ProjectCreator.cs", in Region "CreateReports", the line
project.SaveTaskReportAs(reportId, path + "/AnalyzeTaskReport.xls", ReportFormat.Excel);
generated an error on my computer "Could not find report format". (Is this function not working with Excel 2007?)
I changed it with
project.SaveTaskReportAs(reportId, path + "/AnalyzeTaskReport.htm", ReportFormat.Html);
(The report will be saved in the folder you entered at the beginning)
D. In "Program.cs", in Region "SetVariables", I corrected "args.Length == 3" (and ==4 and ==5 as well) with "args.Length >= 3".
I could run the application through the debug tool and I got these console screenshots.
The project files and folders can be found in "My Documents\SDL Trados Studio\Projects\BatchAnalyzer_DD_MM_YYYYTHH_MM_SS"
I will enjoy contact with other developpers...