首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SuiteCloud IDE的自定义代码模板

SuiteCloud IDE的自定义代码模板
EN

Stack Overflow用户
提问于 2016-03-18 13:55:36
回答 2查看 884关注 0票数 1

我计划在生成新脚本时创建自己的代码模板。由于SuiteCloud IDE只为SuiteScript 1.0配置,所以我希望为SuiteScript 2.0创建新的模板。

尽管如此,我还是可以为我的自定义模板指定目录,但是,由于缺少templates.xml,SuiteCloud IDE无法识别我的自定义模板,我继续创建了模板。

除了声明该文件存在外,NetSuite帮助实际上没有多大帮助。但它没有说明它应该包含什么,甚至也没有说明数据的结构。

如果有人能帮忙的话,我会很感激的。蒂娅。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-03-18 14:57:36

我们很久以前就对SuiteScript 1.0做过同样的练习,而我最近在我们的SuiteScript 2.0集上也做了同样的练习。

您可以在P2_POOL_HOME/plugins/com.netsuite.ide.core_2016.2.0.e4.jar/templates/中找到默认模板,其中P2_POOL_HOME通常为~/.p2/P2_POOL_HOME/

templates.xml的一般格式是:

代码语言:javascript
复制
<configuration>
    <templates>
        <template label="TEXT YOU WANT IN DROPDOWN"
                defaultFilename="DEFAULT NAME FOR FILE"
                typesControl="radio|checkbox"
                headerFilename="PATH/TO/FILE/HEADER"
                startFilename="PATH/TO/START/FILE"
                endFilename="PATH/TO/END/FILE"
                rename="false">
            <types>
                <files label="TEXT LABEL FOR CHECKBOX" bodyFilename="PATH/TO/FILE/WHEN/SELECTED" />
            </types>
        </template>
    </templates>
</configuration>

下面是我们的模板中的两个示例:

代码语言:javascript
复制
<configuration>
    <templates>
        <template label="2.0 Portlet"
                defaultFilename="360CUSTOMER_PROJECT_PL_DESCRIPTION.js"
                typesControl="radio"
                headerFilename="header.ss2.js"
                startFilename="portlet_start.ss2.js"
                endFilename="portlet_end.ss2.js"
                rename="false">
            <types>
                <files label="Render" bodyFilename="portlet.ss2.js" />
            </types>
        </template>

        <template label="2.0 RESTlet"
            defaultFilename="360CUSTOMER_PROJECT_RECORDTYPE_RL_DESCRIPTION.js"
                typesControl="checkbox" headerFilename="header.ss2.js"
                startFilename="RESTlet_start.ss2.js"
                endFilename="RESTlet_end.ss2.js"
                rename="true">
            <types>
                <files label="GET" bodyFilename="RESTlet_get.ss2.js" />
                <files label="POST" bodyFilename="RESTlet_post.ss2.js" />
                <files label="PUT" bodyFilename="RESTlet_put.ss2.js" />
                <files label="DELETE" bodyFilename="RESTlet_delete.ss2.js" />
            </types>
        </template>
    </templates>
</configuration>

对于只有一个入口点方法(例如Suitelet、Portlet、Scheduled)的脚本,您可以使用radio作为typesControl设置,并且在<types>下面只有一个<file>标记。对于那些有多个入口点可供选择的(例如,客户端、地图/减少、用户事件),您可以使用checkbox作为typesControl,然后列出您希望在<types>下使用<file>标记的每个选项。

我实际上不知道rename设置是做什么的。

生成的文件的基本文件结构为:

代码语言:javascript
复制
/* CONTENTS OF HEADER FILE */

/* CONTENTS OF START FILE */

/* CONTENTS OF ENTRY POINT 1 FILE */

/* CONTENTS OF ENTRY POINT 2 FILE */

/* ... */

/* CONTENTS OF ENTRY POINT N FILE */

/* CONTENTS OF END FILE */
票数 4
EN

Stack Overflow用户

发布于 2017-07-12 05:07:57

我在2017年也尝试过同样的方法。您将在jar文件中找到一些js和模板文件。我已经修改了ss_2.0_suitelet.js和ss_header.js文件。只需从jar中选择这些文件并将其放在您自己的本地库中即可。那就修改。不要忘记将模板目录指向首选项->netsuite (eclipse )。还可以添加作者和日期。但不确定如何将$filename作为变量添加到注释中。这是一些样品。

代码语言:javascript
复制
Version    Date            Author            Remarks
1.00       ${date}         ${author}         Initial version
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36086254

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档