{"id":2981,"date":"2020-04-12T15:56:00","date_gmt":"2020-04-12T13:56:00","guid":{"rendered":"https:\/\/thebipower.fr\/?p=2981"},"modified":"2023-01-29T13:54:07","modified_gmt":"2023-01-29T12:54:07","slug":"automatic-translation-of-tabular-model","status":"publish","type":"post","link":"https:\/\/thebipower.fr\/index.php\/2020\/04\/12\/automatic-translation-of-tabular-model\/","title":{"rendered":"Automatic translation of tabular model"},"content":{"rendered":"\n<p>Automatic translation of tabular model using Tabular Editor and Excel is possible since the Power BI team gave read\/write access to the XMLA endpoint.  For the moment, it is a preview feature so be careful using it and work only on copies of your reports. <\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Automatic translation demonstration<\/h2>\n\n\n\n<p>Please watch this 5 mn video for an overview of the translation solution :<\/p>\n\n\n\n<figure class=\"wp-block-video aligncenter\"><video controls src=\"https:\/\/thebipower.fr\/wp-content\/uploads\/2020\/07\/Model-translation.mp4\"><\/video><\/figure>\n\n\n\n<section class=\"wp-block-uagb-columns uagb-columns__wrap uagb-columns__background-none uagb-columns__stack-mobile uagb-columns__valign-center uagb-columns__gap-10 align uagb-block-7c888da2 uagb-columns__columns-2 uagb-columns__max_width-theme\"><div class=\"uagb-columns__overlay\"><\/div><div class=\"uagb-columns__inner-wrap uagb-columns__columns-2\">\n<div class=\"wp-block-uagb-column uagb-column__wrap uagb-column__background-undefined uagb-block-ecc849e9\"><div class=\"uagb-column__overlay\"><\/div>\n<p class=\"has-text-align-right\">Download and try &#8220;PBI translations&#8221; report<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-uagb-column uagb-column__wrap uagb-column__background-undefined uagb-block-b14e9eb3\"><div class=\"uagb-column__overlay\"><\/div>\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/thebipower.fr\/wp-content\/uploads\/2020\/04\/PBI-translations-report.zip\">Download<\/a><\/div>\n<\/div>\n<\/div>\n<\/div><\/section>\n\n\n\n<h2 class=\"wp-block-heading\">Tabular Editor scripts<\/h2>\n\n\n\n<p>These are scripts I wrote to save objects from Tabular Editor to a tsv file and to load translations from a tsv file to Tabular Editor. A tsv file is a text file containing data separated by a tab character :<\/p>\n\n\n\n<section class=\"wp-block-uagb-columns uagb-columns__wrap uagb-columns__background-none uagb-columns__stack-mobile uagb-columns__valign-center uagb-columns__gap-10 align uagb-block-1131806c uagb-columns__columns-2 uagb-columns__max_width-theme\"><div class=\"uagb-columns__overlay\"><\/div><div class=\"uagb-columns__inner-wrap uagb-columns__columns-2\">\n<div class=\"wp-block-uagb-column uagb-column__wrap uagb-column__background-undefined uagb-block-4bbdf8e8\"><div class=\"uagb-column__overlay\"><\/div>\n<p class=\"has-text-align-right\">PBI translations scripts download<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-uagb-column uagb-column__wrap uagb-column__background-undefined uagb-block-493c3058\"><div class=\"uagb-column__overlay\"><\/div>\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/thebipower.fr\/wp-content\/uploads\/2020\/04\/PBI-translations.zip\">Download<\/a><\/div>\n<\/div>\n<\/div>\n<\/div><\/section>\n\n\n\n<p>Once the scripts are downloaded, you can load them in Tabular editor this way :<\/p>\n\n\n\n<ul>\n<li>Save the downloaded scripts in a folder<\/li>\n\n\n\n<li>Open &#8220;Advanced Scripting&#8221; tab, then click on the &#8220;Open a C# script from a file&#8221; and select a downloaded script<\/li>\n<\/ul>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/thebipower.fr\/wp-content\/uploads\/2021\/02\/image.png\" alt=\"automatic translation\" class=\"wp-image-3789\" width=\"528\" height=\"159\" srcset=\"https:\/\/thebipower.fr\/wp-content\/uploads\/2021\/02\/image.png 999w, https:\/\/thebipower.fr\/wp-content\/uploads\/2021\/02\/image-300x91.png 300w, https:\/\/thebipower.fr\/wp-content\/uploads\/2021\/02\/image-768x232.png 768w\" sizes=\"(max-width: 528px) 100vw, 528px\" \/><\/figure><\/div>\n\n\n<ul>\n<li>Modify the path in variables below &#8220;\/\/ Modify files locations&#8221;<\/li>\n\n\n\n<li>Click on &#8220;+&#8221; button<\/li>\n\n\n\n<li>Give a name to the custom action and check at least the &#8220;Model&#8221; checkbox then click &#8220;Ok&#8221; button<\/li>\n\n\n\n<li>Click on the &#8220;Play&#8221; button when you want to execute the script or right click on the &#8220;Model&#8221; in the tree and select &#8221; Custom actions\/your custom action name&#8221;<\/li>\n\n\n\n<li>Redo all these steps each time you get a new version of the scripts !<\/li>\n<\/ul>\n\n\n\n<p>When you execute the &#8220;Save translatable objects&#8221; script, translatable objects are exported to a tsv file which is used by the Excel file.<\/p>\n\n\n\n<p>You can get the Excel file in this blog post :   <a class=\"rank-math-link\" href=\"https:\/\/thebipower.fr\/index.php\/2020\/05\/10\/automatic-translation-of-visuals-labels\/\">https:\/\/thebipower.fr\/index.php\/2020\/05\/10\/automatic-translation-of-visuals-labels\/<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">References<\/h2>\n\n\n\n<p>Tabular Editor is a powerful tool for tabular model edition created by Daniel Otykier :   <a rel=\"noreferrer noopener\" aria-label=\" (opens in a new tab)\" href=\"https:\/\/tabulareditor.com\/\" target=\"_blank\">https:\/\/tabulareditor.com\/<\/a><br>Detailed presentation :   <a rel=\"noreferrer noopener\" aria-label=\" (opens in a new tab)\" href=\"https:\/\/powerbi.tips\/2020\/04\/tabular-editor-rocks\/\" target=\"_blank\">https:\/\/powerbi.tips\/2020\/04\/tabular-editor-rocks\/<\/a><\/p>\n\n\n\n<p>Supported languages and countries\/regions for Power BI :   <a href=\"https:\/\/docs.microsoft.com\/en-us\/power-bi\/supported-languages-countries-regions\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\" (opens in a new tab)\">https:\/\/docs.microsoft.com\/en-us\/power-bi\/supported-languages-countries-regions<\/a><\/p>\n\n\n\n<p>Watch this video from Ted Pattison which brings many information, tools, tips and ressources. Power BI Dev Camp Session 12 Building Multi Language Reports in Power BI :   <a href=\"https:\/\/youtu.be\/-yK-0P5-J38\" target=\"_blank\" data-type=\"URL\" data-id=\"https:\/\/youtu.be\/-yK-0P5-J38\" rel=\"noreferrer noopener\">https:\/\/youtu.be\/-yK-0P5-J38<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Limitations<\/h2>\n\n\n\n<p> Model name and hierarchies levels are not translated for the moment but might be in the future <\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Warning<\/h2>\n\n\n\n<p>Since March 2021, Power BI desktop doesn&#8217;t reflect model translations. Thus, they might appear once the report is published <\/p>\n\n\n\n<p>See also :<br>Visuals labels translations in Power BI reports :   <a href=\"https:\/\/thebipower.fr\/index.php\/2020\/05\/07\/visuals-labels-translations-in-power-bi-reports\/\">https:\/\/thebipower.fr\/index.php\/2020\/05\/07\/visuals-labels-translations-in-power-bi-reports\/<\/a><br>Automatic translation of visuals labels :   <a href=\"https:\/\/thebipower.fr\/index.php\/2020\/05\/10\/automatic-translation-of-visuals-labels\/\">https:\/\/thebipower.fr\/index.php\/2020\/05\/10\/automatic-translation-of-visuals-labels\/<\/a><\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n\t\t\t<div class=\"wp-block-uagb-post-carousel uagb-post-grid  uagb-post__image-position-top uagb-post__image-enabled uagb-block-2b60c133     uagb-post__arrow-outside uagb-post__items uagb-post__columns-3 is-carousel uagb-post__columns-tablet-2 uagb-post__columns-mobile-1\" data-total=\"1\" style=\"\">\n\n\t\t\t\t\t\t\t\t\t\t\t\t<article class=\"uagb-post__inner-wrap\">\t\t\t\t\t\t\t\t<div class='uagb-post__image'>\n\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/thebipower.fr\/index.php\/2020\/07\/05\/translations-life-cycle-management\/\" target=\"_self\" rel=\"bookmark noopener noreferrer\"><img loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"341\" src=\"https:\/\/thebipower.fr\/wp-content\/uploads\/2020\/07\/Translations-life-cycle-management.jpg\" class=\"attachment-large size-large\" alt=\"Translations life cycle management\" srcset=\"https:\/\/thebipower.fr\/wp-content\/uploads\/2020\/07\/Translations-life-cycle-management.jpg 640w, https:\/\/thebipower.fr\/wp-content\/uploads\/2020\/07\/Translations-life-cycle-management-300x160.jpg 300w\" sizes=\"(max-width: 640px) 100vw, 640px\" \/>\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<h4 class=\"uagb-post__title uagb-post__text\">\n\t\t\t\t<a href=\"https:\/\/thebipower.fr\/index.php\/2020\/07\/05\/translations-life-cycle-management\/\" target=\"_self\" rel=\"bookmark noopener noreferrer\">Translations life cycle management<\/a>\n\t\t\t<\/h4>\n\t\t\t\t\t\t<div class='uagb-post__text uagb-post-grid-byline'>\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<div class='uagb-post__text uagb-post__excerpt'>\n\t\t\t\t\t<p>Translations life cycle management must be considered seriously as soon as we decide to translate&#8230;\t\t\t\t<\/div>\n\t\t\t\t\t\t<div class=\"uagb-post__text uagb-post__cta wp-block-button\">\n\t\t\t\t<a class=\"wp-block-button__link uagb-text-link\" href=\"https:\/\/thebipower.fr\/index.php\/2020\/07\/05\/translations-life-cycle-management\/\" target=\"_self\" rel=\"bookmark noopener noreferrer\">Read More<\/a>\n\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t<\/article>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<article class=\"uagb-post__inner-wrap\">\t\t\t\t\t\t\t\t<div class='uagb-post__image'>\n\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/thebipower.fr\/index.php\/2020\/05\/10\/automatic-translation-of-visuals-labels\/\" target=\"_self\" rel=\"bookmark noopener noreferrer\"><img loading=\"lazy\" decoding=\"async\" width=\"468\" height=\"158\" src=\"https:\/\/thebipower.fr\/wp-content\/uploads\/2020\/05\/Visuals-labels-translations.png\" class=\"attachment-large size-large\" alt=\"Visuals translations Power BI reports\" srcset=\"https:\/\/thebipower.fr\/wp-content\/uploads\/2020\/05\/Visuals-labels-translations.png 468w, https:\/\/thebipower.fr\/wp-content\/uploads\/2020\/05\/Visuals-labels-translations-300x101.png 300w\" sizes=\"(max-width: 468px) 100vw, 468px\" \/>\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<h4 class=\"uagb-post__title uagb-post__text\">\n\t\t\t\t<a href=\"https:\/\/thebipower.fr\/index.php\/2020\/05\/10\/automatic-translation-of-visuals-labels\/\" target=\"_self\" rel=\"bookmark noopener noreferrer\">Automatic translation of visuals labels<\/a>\n\t\t\t<\/h4>\n\t\t\t\t\t\t<div class='uagb-post__text uagb-post-grid-byline'>\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<div class='uagb-post__text uagb-post__excerpt'>\n\t\t\t\t\t<p>Automatic translation of visuals labels in Power BI reports is possible using conditional formating, Tabular&#8230;\t\t\t\t<\/div>\n\t\t\t\t\t\t<div class=\"uagb-post__text uagb-post__cta wp-block-button\">\n\t\t\t\t<a class=\"wp-block-button__link uagb-text-link\" href=\"https:\/\/thebipower.fr\/index.php\/2020\/05\/10\/automatic-translation-of-visuals-labels\/\" target=\"_self\" rel=\"bookmark noopener noreferrer\">Read More<\/a>\n\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t<\/article>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<article class=\"uagb-post__inner-wrap\">\t\t\t\t\t\t\t\t<div class='uagb-post__image'>\n\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/thebipower.fr\/index.php\/2020\/05\/07\/visuals-labels-translations-in-power-bi-reports\/\" target=\"_self\" rel=\"bookmark noopener noreferrer\"><img loading=\"lazy\" decoding=\"async\" width=\"468\" height=\"158\" src=\"https:\/\/thebipower.fr\/wp-content\/uploads\/2020\/05\/Visuals-labels-translations.png\" class=\"attachment-large size-large\" alt=\"Visuals translations Power BI reports\" srcset=\"https:\/\/thebipower.fr\/wp-content\/uploads\/2020\/05\/Visuals-labels-translations.png 468w, https:\/\/thebipower.fr\/wp-content\/uploads\/2020\/05\/Visuals-labels-translations-300x101.png 300w\" sizes=\"(max-width: 468px) 100vw, 468px\" \/>\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<h4 class=\"uagb-post__title uagb-post__text\">\n\t\t\t\t<a href=\"https:\/\/thebipower.fr\/index.php\/2020\/05\/07\/visuals-labels-translations-in-power-bi-reports\/\" target=\"_self\" rel=\"bookmark noopener noreferrer\">Visuals labels translations in Power BI reports<\/a>\n\t\t\t<\/h4>\n\t\t\t\t\t\t<div class='uagb-post__text uagb-post-grid-byline'>\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<div class='uagb-post__text uagb-post__excerpt'>\n\t\t\t\t\t<p>Visuals labels translations in Power BI reports are not supported natively. However, there is a&#8230;\t\t\t\t<\/div>\n\t\t\t\t\t\t<div class=\"uagb-post__text uagb-post__cta wp-block-button\">\n\t\t\t\t<a class=\"wp-block-button__link uagb-text-link\" href=\"https:\/\/thebipower.fr\/index.php\/2020\/05\/07\/visuals-labels-translations-in-power-bi-reports\/\" target=\"_self\" rel=\"bookmark noopener noreferrer\">Read More<\/a>\n\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t<\/article>\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t","protected":false},"excerpt":{"rendered":"<p>Automatic translation of tabular model using Tabular Editor and Excel is possible since the Power BI team gave read\/write access to the XMLA endpoint. For the moment, it is a preview feature so be careful using it and work only on copies of your reports. Automatic translation demonstration Please watch this 5 mn video for&#8230;<\/p>\n","protected":false},"author":2,"featured_media":3166,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_uag_custom_page_level_css":"","_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_uf_show_specific_survey":0,"_uf_disable_surveys":false,"_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"footnotes":""},"categories":[69],"tags":[71,70],"uagb_featured_image_src":{"full":["https:\/\/thebipower.fr\/wp-content\/uploads\/2020\/04\/Automatic-translation-of-tabular-model.png",614,159,false],"thumbnail":["https:\/\/thebipower.fr\/wp-content\/uploads\/2020\/04\/Automatic-translation-of-tabular-model-150x150.png",150,150,true],"medium":["https:\/\/thebipower.fr\/wp-content\/uploads\/2020\/04\/Automatic-translation-of-tabular-model-300x78.png",300,78,true],"medium_large":["https:\/\/thebipower.fr\/wp-content\/uploads\/2020\/04\/Automatic-translation-of-tabular-model.png",614,159,false],"large":["https:\/\/thebipower.fr\/wp-content\/uploads\/2020\/04\/Automatic-translation-of-tabular-model.png",614,159,false],"1536x1536":["https:\/\/thebipower.fr\/wp-content\/uploads\/2020\/04\/Automatic-translation-of-tabular-model.png",614,159,false],"2048x2048":["https:\/\/thebipower.fr\/wp-content\/uploads\/2020\/04\/Automatic-translation-of-tabular-model.png",614,159,false],"mailpoet_newsletter_max":["https:\/\/thebipower.fr\/wp-content\/uploads\/2020\/04\/Automatic-translation-of-tabular-model.png",614,159,false]},"uagb_author_info":{"display_name":"Didier TERRIEN","author_link":"https:\/\/thebipower.fr\/index.php\/author\/masterpower\/"},"uagb_comment_info":61,"uagb_excerpt":"Automatic translation of tabular model using Tabular Editor and Excel is possible since the Power BI team gave read\/write access to the XMLA endpoint. For the moment, it is a preview feature so be careful using it and work only on copies of your reports. Automatic translation demonstration Please watch this 5 mn video for...","_links":{"self":[{"href":"https:\/\/thebipower.fr\/index.php\/wp-json\/wp\/v2\/posts\/2981"}],"collection":[{"href":"https:\/\/thebipower.fr\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/thebipower.fr\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/thebipower.fr\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/thebipower.fr\/index.php\/wp-json\/wp\/v2\/comments?post=2981"}],"version-history":[{"count":46,"href":"https:\/\/thebipower.fr\/index.php\/wp-json\/wp\/v2\/posts\/2981\/revisions"}],"predecessor-version":[{"id":4365,"href":"https:\/\/thebipower.fr\/index.php\/wp-json\/wp\/v2\/posts\/2981\/revisions\/4365"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/thebipower.fr\/index.php\/wp-json\/wp\/v2\/media\/3166"}],"wp:attachment":[{"href":"https:\/\/thebipower.fr\/index.php\/wp-json\/wp\/v2\/media?parent=2981"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/thebipower.fr\/index.php\/wp-json\/wp\/v2\/categories?post=2981"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/thebipower.fr\/index.php\/wp-json\/wp\/v2\/tags?post=2981"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}