diff --git a/plugin.xml b/plugin.xml index 4c65b93..1e78dc3 100644 --- a/plugin.xml +++ b/plugin.xml @@ -2,14 +2,15 @@ com.fr.solution.plugin.form.widget.rh.iframe yes - 6.5 + 7.0 8.0 2016-06-30 solution - [2018-06-15]增加网页框设计器模板的显示信息。
+ [2018-07-30]适配10.0。
+ [2018-06-15]修复决策报表无法正确传递参数给网页框中的报表的问题。
+ [2018-06-15]增加网页框设计器模板的显示信息。
[2017-06-20]修复模板类型的网页框参数为中文时候的问题。
[2017-06-14]模板类型的网页框链接支持数组参数。
[2017-06-13]修复模板名字不能为中文的问题。
diff --git a/src/com/fr/plugin/form/widget/core/TemplateSource.java b/src/com/fr/plugin/form/widget/core/TemplateSource.java index 94d35c6..1cf69b1 100644 --- a/src/com/fr/plugin/form/widget/core/TemplateSource.java +++ b/src/com/fr/plugin/form/widget/core/TemplateSource.java @@ -15,6 +15,9 @@ import com.fr.json.JSONUtils; import com.fr.script.Calculator; import com.fr.stable.CodeUtils; import com.fr.stable.ParameterProvider; +import com.fr.stable.ProductConstants; +import com.fr.stable.ProductConstantsBase; +import com.fr.stable.StableUtils; import com.fr.stable.UtilEvalError; import com.fr.stable.js.WidgetName; import com.fr.stable.script.CalculatorProvider; @@ -55,9 +58,16 @@ public class TemplateSource extends RHIframeSource { try { String realPath = TemplateUtils.render(path, calculator); if (realPath.contains(".cpt")) { - return NetworkHelper.createServletURL(req) + "?reportlet=" + CodeUtils.cjkEncode(realPath); + if (isNewerThan9()) { + return NetworkHelper.createServletURL(req) + "/view/report?viewlet=" + CodeUtils.encodeURIComponent(realPath); + } else { + return NetworkHelper.createServletURL(req) + "?reportlet=" + CodeUtils.encodeURIComponent(realPath); + } } else if (realPath.contains(".frm")) { - return NetworkHelper.createServletURL(req) + "?formlet=" + CodeUtils.cjkEncode(realPath); + if (isNewerThan9()) { + return NetworkHelper.createServletURL(req) + "/view/form?viewlet=" + CodeUtils.encodeURIComponent(realPath); + } + return NetworkHelper.createServletURL(req) + "?formlet=" + CodeUtils.encodeURIComponent(realPath); } } catch (Exception e) { return null; @@ -65,6 +75,10 @@ public class TemplateSource extends RHIframeSource { return null; } + private boolean isNewerThan9() { + return Integer.parseInt(ProductConstants.MAIN_VERSION) > 9; + } + @Override public String[] dependence(CalculatorProvider ca) { Parameter[] parameters = ParameterHelper.analyze4Parameters(path, false);