Localization, Localisation

Practical and concise answers to common questions in G11N, I18N and L10N

Archive for the ‘SDL WorldServer’ Category

SDL WorldServer: Getting Started with Custom Reports

Posted by Nick Peris on October 22, 2012

The Report Center was completely upgraded with the last major release of WorldServer. Overall the new offering was very good, with a more modern interface and a more powerful underlying technology.

Yet upgrading the Report Center and starting to make the most of its full potential required a certain amount of effort. This is mostly because while it is accessible through WorldServer, the Report Center is in fact a completely separate application. Moreover,  it is made-up of three distinct elements, for which no integrated documentation exists: the queries, the reports layout and the repository site.

This post reviews the basic functionality of the current version and suggests ideas to improved it in the future.

Managing the Report Center

Adding Reports

Adding Jasper Reports

WorldServer Reports are designed offline (see next section). Once ready, they need to be imported:

  1. Open the Report Center (Tools > Report Center)
  2. Click View > Repository
  3. Right-click on the folder where you want to add a report
  4. Click Add Resource > JasperReport
  5. Enter a name for your report and upload the JasperReport file (.jrxml)

At first glance this works well and certainly is easy. There are however a few ways I think it could be made more efficient:

  • Add Version Control and Roll-back functions for successive uploads of the same JRXML. This is essential since the queries and layout cannot be edited via the Report Center.
  • Automatically read the Report Name and Resource ID from the JRXML file, to save manual steps and prevent typos.
  • Batch JRXML upload: this would be very useful to support upgrade effort, as well as to transfer reports from a Test server to a Production environment.
  • JRXML Download would help with future migration and simplify back-up processes
  • Finally some editable JRXML samples should be provided to show users how JasperReports can be used in WorldServer.

Data Sources

Creating a Report

Next, each Report has to be connected to a database. The setup steps may differ slightly depending on whether WorldServer uses Oracle or SQL, and drivers may need to be installed.

First, create a Data Source:

  1. Right-click on the folder where the reports are located
  2. Click Add Resource > Data Source
  3. Enter your Database details and test the connection before clicking Submit

You can now connect Reports to the Data Source:

  1. Right-click on a Report
  2. Choose Data Source > Select data source from repository
  3. Browse to the database you just connected

Here again, there is room for improvement in my opinion. The possibility to connect a location within the Report Center to a database would be helpful. Instead we have to connect each report one at a time.

Permissions

User access can be managed at both user or role-level. You can also setup different access for each report separately or for a folder within the repository. This is in keeping with one of WorldServer’s strengths, where permissions are extremely flexible, and relatively easy to fine-tune.

You could for instance have some reports only visible to Project Managers and others to Language coordinators. You could show linguists reports where the data only relates to their own work, or create Customer or Business Unit specific reports and then only grant access to them to people in selected groups.

Permissions can be edited by right-clicking on a report and choosing Permissions. Roles and Users are accessed via the Manage menu.

Inputs Controls

Search Parameters

A dialog box can easily be created to allow users to filter their searches or, more precisely, to set up the value of parameters to use when the report runs. In an SQL-based setup, percentage signs can be used for wildcards. A parameter added to the report during layout design is associated to each Input Control setup in the Report Center.

To create an Input Control:

  1. Right-click on Input Controls in the Repository
  2. Click Add Resource > Input Control and follow the steps on-screen

Note: the parameter name must match that from the Jasper Report (case-sensitive).

Once an Input Control is created it can be re-used for any number of reports:

  1. Right-click on the Report
  2. Click Edit > Controls & Resources > Add Input Controls and follow the steps on-screen

A Report can have several input controls, so the user could for example set a value for Project NameLanguage and Workgroup themselves, before running the Report. The Input Controls dialog also lets you save commonly used search parameters.

Overall this too works very well and is also  relatively easy to setup. My only criticism is the lack of documentation: there is no Online Help or Report creation guide apart from the Samples in the View menu.

Designing the Reports Layout

JasperSoft

The layout of WorldServer Reports cannot be designed or changed from WorldServer. The best way to do that is to embed your SQL query within a Jasper Report (.jrxml) using the JasperSoft iReport Designer. There is a free version available for download, which provides everything needed to design a WorldServer Report. Once again though, there doesn’t seem to be any WorldServer-related documentation available.

Jaspersoft iReport Designer

Here are a few pointers to get you started:

  1. Connect iReport to your WorldServer database
  2. Create new report (File – New)
  3. Copy your query into the Query viewer iReport Query Edit button
  4. Click Read Fields iReport Read Fields button
  5. Go back to the Designer and drag 1 or more fields from the Report Inspector into the Detail area. This will automatically create headers which you can then rename, align etc.

Online vs. Offline

It can be time-consuming to pretty-up reports in iReport. The first way to gain efficiency is to make a choice between the way they look online and how clean the exports are. If you expect your users to consult the reports online, you may want to spend time making the report look good online, and load fast for example by breaking the output into pages. By opposition, if you expect the reports to be downloaded and their data further manipulated in Excel, you should instead make sure that the output doesn’t have empty lines or columns.

Re-using layouts

If you are creating several variations of a report, or migrating a number of reports between successive versions of the Report Center, it is worth trying re-use some of this tedious layout work:

  1. Open an existing JRXML in iReport
  2. Save it under an alternate name
  3. Overwrite or edit the query
  4. Click Read Fields iReport Read Fields button to update the list available in Designer
  5. Edit the Fields, Descriptions, and Parameters which need to be changed in the layout.

Editing Queries

SQL Server Management Studio

SQL server management studio

The query viewer in iReport is useful to a point but it doesn’t provide much feedback regarding syntax errors or other issues in queries. Another big limitation is that it doesn’t give any visibility into which Tables and Views are available in the database.

If your WorldServer uses an SQL database, you should consider using SQL server management studio when writing the queries. You can create and test your queries there before copying them to iReport, and browse through the database to get familiar with how the data is structured.

One thing to remember is that active and completed projects are in two separate locations. Just like in WorldServer you have a view for Active projects and another for Completed and Cancelled Projects, under Assignements, the database has the latter in dbo.archive Tables, and the former in dbo.active Views. Performance is much better when querying active projects, and the way the data is structured can also differ in the two locations.

You must have a very clear understanding of the following 3 WorldServer concepts.

  1. Project Group: all files, all languages, 1 file submission
  2. Project: all files, 1 language, 1 file submission
  3. Task: 1 file, 1 language

Their ID numbers are essential within queries because they link information associated with each of them. For example the language name is Project data, but the current owner is Task information. The 2 will need to be joined in order to create a report on current Task owners which lists the languages.

Lastly, any search parameter is better created directly in iReport once the query is finalised. Just replace them with an arbitrary value for testing purposes while working in the server management studio.

Learning resources

There are plenty of tutorials available for beginners and less-experienced database users, and a lot of them are free. I found SQL course.com very clear and concise. The interactive SQL interpreter is great for practicing and experimenting safely. W3Schools is another very good resource.

Posted in Beginner's Guide, SDL WorldServer | Tagged: , , , , , , , , | Leave a Comment »

WorldServer v. SDL TMS

Posted by Nick Peris on March 20, 2012

Designing Workflows in WorldServerSDL recently made a statement via the SDL Users Group on LinkedIn updating and clarifying their strategy for their 2 competing Workflow Management applications, WorldServer and TMS.

Paul Harrap (Enterprise Localization Consultant at SDL) said: “We’ve obviously got several products that fit the same broad product niche in the enterprise TMS space (…) and need to focus on one for future Sales and Marketing to avoid a confusing message to the marketplace. That is World Server.” more

Tim Lee (Director of Product Management at SDL) added: “(…) As the person responsible for product management of SDL TMS and SDL WorldServer, please let me start by confirming that SDL continues to be committed to both TMS and WorldServer with dedicated teams and roadmaps for each product respectively.more

The overall message is that WorldServer is now the flagship product, but support and development will continue for both products until at least 2013. This may be seen as a change in direction compared to what was originally stated when SDL acquired Idiom in 2008, and the priority seemed to be given to TMS. However, SDL commits to a Service Pack 3 for TMS 2011 and at least one new major release, tentatively called SDL TMS 2013.

Giving priority to WorldServer is in my opinion the correct choice, but this still seems like a non-fully committed announcement, and we could easily see another adjustment by 2013 or later. Having first hand experience using and managing both applications, I want to take this opportunity to share with you what I think are the main strengths and weaknesses of each system, and why my personal preference goes to WorldServer.Designing Workflows in TMS

Designing Workflows

WorldServer is the clear winner in this category. It has a very intuitive, flexible and powerful graphic workflow designer. TMS really only offers lists of entries to pick from, and I find the Workflow/Configuration distinction inefficient.

WorldServer workflows can go back and forth, but also loop and go through parallel Steps. It can skip Steps, or offer multiple transitions in and out of every Step. The transitions are represented as radio buttons when a user completes the Step. In TMS, one can only Submit a Task to the next Stage or Reject it back to the previous one.

You can also add your own custom Human Steps and Automatic Actions (through Java script imports) to WorldServer’s catalog (more about customisations in the next section). Even the Task History shown within projects is much clearer, with a graphic representation of the full workflow, with current Step visually highlighted, as well as a list of past Steps with owners, time stamps and global comments included.

Customising FunctionalitiesCustomisations in WorldServer

This is another of WorldServer’s core strengths, thanks to the immense flexibility of its design. Custom automation can be created using the SDK and is relatively easy to add. Even easier are the “LSP pages”: jsp files dropped into the WorldServer installation folder structure let you add custom dashboards for project overview or even some batch processing (e.g. push all languages within a Project Group from a given Workflow Step through a predetermined transition)

User permissions in WorldServer can seem confusing at first, but once the Administrator gets familiar with them, the possibilities are limitless. Each users’ privileges are defined through a set of parameters. All of these are fully customisable, meaning that you can not only adjust their settings but also create entirely new categories.

  • User Types define the general rights: project view or edit access, TM and TD read or write access, possibility to edit offline, import export etc.
  • Workflow Roles: define who is assigned specific Steps in a Workflow, in conjunction with the Locales. This may be set for specific users or entire Workgroups.
  • Workgroups list users of all types, locales and roles assigned to a Program, Customer or Project Type
  • Project Types are presets used during project creation to automate the linking to TMs, TDs, Filter groups, Workgroups, Cost Models etc.
  • Clients determine access to the Transport Portal for project submission or quote requests by third-party users.

All this potential for customisation can mean time-consuming setup. Thankfully by exporting and importing WorldServer Objects settings can easily be copied from a test to a production environment. Items can be backed up for recovery or roll-back, either in batches (e.g. all settings for a certain customer) or individually. For instance, you could export a whole workflow as an xml file, rename it and reimport it to quickly create a variant of it.

Filters are also much better in WorldServer than TMS. While in TMS Filters are SDLX-based and only some can be customised,  in WorldServer they can be imported from a number of CAT tools (Trados ini, xsd, dtd, raw xml). All Filters can be edited from the WorldServer UI, they can be teamed up in Filter Groups and linked to Project types. WorldServer Projects use the out-of-the-box filters unless the Project Type is linked to a custom filter for the given File Type.

But WorldServer filters are not perfect in every way: I have experienced problems with certain rtf files, json files, even xlsx (in relation to repetitions) in WorldServer 2009. Still few tools can filter xml and resx files as precisely as WorldServer: the content of one tag can be set to be exposed to translation or not depending on the value of another tag’s attribute. There are even desktop CAT tools which can’t do that!

User Interface FeaturesDesigning Workflows in TMS

Here TMS has a few unique features that its users would probably miss if they migrated to WorldServer. For example, Project Managers can impersonate other users to check the content of their Inbox, or even submit Tasks on their behalf if they were unable to do so themselves. This is much faster than logging as those users every time. TMS also lets translators upload multiple deliveries within the same zip file. The version control is smart enough that you do not need to open the project for which you are submitting a delivery. Another interesting out-of-the-box feature of TMS is the QA Check which can be set to run automatically to prevent submission to the next Stage if for example there are untranslated segments or Terminology inconsistencies. The QA Check can be overridden by users if needed, but it is a useful automation.

Overall though, I find the .NET Framework-based UI is a lot more rigid and prone to screen freezes than WorldServer’s Browser-based UI. The latter is more friendly and requires less training and user support because it mostly works like any website. That said, it is also one of the downfalls of WorldServer: the browser support is not always keeping up, particularly with Firefox. Since browsers are often set to auto-update, this is a problem. Browser-specific issues can be difficult to troubleshoot. Getting a hotfix from SDL for them has proved impossible.

For linguists working online WorldServer’s Browser Workbench has an edge over the outdated TMS Translation interface. Again it benefits from being browser-based which makes it more intuitive and versatile. User support is much lighter with WorldServer than TMS.

CAT Tools Compatibility and Offline EditingTM Searches and Maintenance in TMS

Things are a little more complicated when it comes to working offline, which is the most common scenario. Both tools have removed support for TTX (i.e. Trados 2007) in their 2011 releases. This is part of the push for linguists to migrate to Trados Studio. TMS relies on ITD’s for work in SDLX which is also very outdated. Both tools support downloads for Trados Studio. Up until WorldServer 2009, the “free” tool Desktop Workbench was available and quite full-featured. In WorldServer 2011, it is only compatible with projects using legacy (i.e. Idiom) file Filters and not the new Studio File Types, which require Trados Studio. Even worse, Desktop Workbench is about to reach end-of-life. In short, whichever Workflow system you are using, SDL are actively pushing for linguists to use a version of Trados Studio, whether it is the full desktop tool, Studio Online for TMS or Studio Express for WorldServer 2011. None of these are free.

Translation Memory and Terminology ManagementTM Searches and Maintenance in WorldServer

This is an area where I’ve always had concerns about TMS.

WorldServer still benefits from a more CAT Tool-agnostic approach dating from the IDIOM era. It can be used as a full-fledged Translation Memories and Terminology Repository and Portal. Through User Types and Workgroups, access to the Tools tab can be precisely managed. Users can view selected individual or Groups of Linguistic Assets, and the Administrator can easily turn Editing, Exporting, Importing, Purging, on and off for either Linguistic asset types. Term-based workflows can even be created so the Terminology approval process can be managed exactly like any other WorldServer Project.

For offline work, TMS relies on scheduled TM exports. These are usually weekly occurrences; exports are made available through a dedicated page in TMS, which unfortunately is quite difficult to search through when there are several pages of TMs. I observed and heard of several cases where the export stopped working, often after a Service Pack upgrade, so not only is this impractical it is also unreliable. By opposition WorldServer has none of these issues and all the solutions: any user with the right permissions can export and import a TM or TM Group at any time. TMX exports can also be scheduled to process automatically, as often as every 15 minutes if you so wish. I’ve only seen this process fail once, and I must admit it was my own fault…TM Sequencing in TMS

TM sequencing can be setup in both systems. TMS is the only one to allow the updating of multiple TMs. But WorldServer has a more sophisticated leveraging algorithm, cycling through all the TMs in the Groups for each fuzzy band, including ICE (in-context) Matches and reverse leveraging.

IT and infrastructure

TMS earns a few more points here: for example LDAP support makes User ID Management more flexible. It also appears less complicated to install because WorldServer has so many separate components.TM Sequencing in WorldServer

However WorldServer is immensely more scalable. The database architecture is well thought-out and individual components can be separated into clusters, which has advantages for troubleshooting and reliability.

Posted in CAT Tools Comparison, SDL WorldServer, Translation Management Systems | Tagged: , , , , , | 9 Comments »