LanguageApp.translate不适用于脚本共享用户?

时间:2013-08-28 10:50:28

标签: google-apps-script google-translate

我需要在GAS中格式化日期,月份/年份,以月份为单位,用意大利语。

我使用了Language.App.translate,因为Utilities.formatDate用英语格式化月份。 代码片段如下:

  var dteng = Utilities.formatDate(dt, "CET", "MMMM/yyyy");
  dttran = LanguageApp.translate(dteng, 'en', 'it');

当我用我的用户执行脚本时,它工作正常,翻译完成。 当我以不同的用户(实际使用脚本的那个)执行它时,翻译不会发生。

执行记录报告:

  

LanguageApp.translate([January / 2007,en,it])

但结果是相同的,未翻译的字符串。

脚本的所有剩余部分都可以顺利执行。

任何提示?我应该打开一个问题吗?

TKS

的Massimo

1 个答案:

答案 0 :(得分:0)

在我的情况下,行为:

function getTranslate() {
  var dteng = Utilities.formatDate(new Date(2007, 0, 1), 'CET', 'MMMM/yyyy');
  var dttran = LanguageApp.translate(dteng, 'en', 'it');
  /*var dttran = LanguageApp.translate(dteng, 'en', 'es'); // `Enero/2007` <- works as expected.*/
  Logger.log(dttran); // January/2007
}

在所有情况下都相同,对于任何用户,始终返回January/2007

显然某些字符无法正确解释,格式如:'MMMM/yyyy''MMMM.yyyy''MMMM_yyyy'无法执行相应的翻译。

使用其他格式(例如'MMMM-yyyy'),按预期工作。

<强>更新

从网上使用Google翻译:

enter image description here