D-Tools Quick TipsI have been asked several times in the past if D-Tools support multiple languages. The answer is yes, absolutely, and there is an easy way to implement this. During Cedia 2016, I was asked again the same question, but this time, the customer had some additional requirements, and his user case triggered me to write this post. This is an elegant solution and will support English plus 3 additional languages.

The original solution is to use the long and short description on the products/labor for each language, then before running the report, also apply the foreign currency feature. This method combined with a translated proposal report is simple to implement and satisfy most user cases.

Reviewing this “old” method, you would have a product (or labor) with two descriptions, one for each language, and depending on the language the you want to show on the report, you select to use “Long Description” or “Short Description” only under the Report Settings. If the rate is different (will always be), you apply the foreign currency and the exchange rate of the day. This will provide you with products with their correct description (on the correct language) and currency value and symbol.

The customer I was talking to during Cedia 2016 did not want to use this method for the following reasons:

  1. He did not want to have to change the Report settings every time since half of his proposals would be on each language.
  2. The Short Description only allows for 100 characters, and that’s not enough for his translated products description.

In a few words, the solution was to create a custom report, and utilize a custom field for the translated description. This is how we implement the solution:

Considerations:

  1. You will need to translate all the text of a Proposal Report to the desired language.
  2. We will need to translate all Products’ Description (short, long, or both) to the desired language.
  3. Product/Labor Manufacturer and Model number will not be translated.
  4. There are 14 Products and Labor custom fields. 3 of them (12, 13 and 14) offer long text, which means 1000 characters. We will need to use one of them for the Products’ Description. If supporting both Short and Long Description, you will need to use two of those fields.
  5. You could support up to 4 different languages. You can use each of the long text custom fields (12, 13 and 14) for an assigned language. Those 3 languages plus the original description would provide a total of 4 languages.
  6. You can bypass the Foreign Language feature by using a different Price Type.

 

Let’s get started!

Start by opening navigating to Standard Report Designer.

 

9-21-2016-4-53-07-pm

 

Click on “New”, then “New Report Based on Existing Report”

9-21-2016-5-08-13-pm

 

Now you will have the option to select the base of your Proposal Report. Information on Reports are available on the following link.

For the purpose of this article, I am selecting the Proposal with Images (Install Price).

Select the “Level 3” of the Proposal of your choice:

proposal-level-3

 

Give a name to the report. I recommend using a similar name to the original report. I will be using Custom Field 13 for the Foreign Language Description. Once you have provided a name to the report, click on “Finish”.

proposal-level-3-2

 

As shown below, click on the Description box and change both “(Name)” and “DataField” as explained on the next two images

9-21-2016-5-25-33-pm

 

The (Name) needs to be changed to something else. I changed to “MultiLanguage” as shown below. The DataField must be changed to dtr:CustomProperty12 or dtr:CustomProperty13 or dtr:CustomProperty14 – Select one. This allows you to create multiple reports with support for multiple languages. I selected dtr:CustomProperty13 for this example.

9-21-2016-5-34-10-pm

Perform any translation on text fields. An example here would be the “Alternates”. Select the field and then change it under the “Text” section of the properties, as shown below.

9-21-2016-5-57-05-pm

 

Publish the report. Do not exit.

proposal-level-3-5

 

Next, click on “New”, then “New Report Based on Existing Report”, then open the “Level2”. Be careful to open the report of the exact same type as the proposal type of your choice.

proposal-level-2-1

 

Provide a name to the report, then click on “Finish”.

proposal-level-2-2

 

Perform the same changes on the “DataField” and “(Name)” as discussed on the Level3 report.

The additional step is to bind the report Level3 to the Level2. The following image will help you on this process.

9-21-2016-5-41-27-pm

 

A window will pop-up. Select your custom level 3 report, and click OK.

Next, perform any translation on text fields as explained previously.

Publish the report when you are done with all changes.

 

Next we will work on the main Proposal report. Click on “New”, then “New Report Based on Existing Report”, then open the “Level2”. Be careful to open the report of the exact same type as the proposal type of your choice.  I am using the Proposal with Images (Install Price).

proposal-with-custom-property-for-description

 

Provide a name, then click on “Finish”.

proposal-with-custom-property-for-description-2

 

More of the same. Change both the “DataField” and “(Name)” as discussed on the Level3 report.

The next step is to bind to the Level2 subreport. Right-click on the highlighted area (as shown on the image below) and click on “Bind to D-Tools Report”.

9-21-2016-5-54-42-pm

 

Select the Level2 sub-report you created previously.

proposal-with-custom-property-for-description-5

 

Next, perform any translation on text fields as explained previously. There will be a lot of fields that requires translation here. Examples include the text “Proposal”, “Presented by”, “Modified”, and anything else that is not a data field.

9-21-2016-6-03-45-pm

 

Once your foreign language product description is added to the custom field used on this report, it will print it instead of the English description. For price and currency symbol, please use the “Foreign Currency” feature as explained on this link

I hope you enjoyed this tutorial!