SuiteCloud 的自定义代码模板 IDE
Custom Code Templates for SuiteCloud IDE
我计划在生成新脚本时制作自己的代码模板。由于 SuiteCloud IDE 仅为 SuiteScript 1.0 配置,我希望为 SuiteScript 2.0 创建新模板。
也就是说,我已经到了可以为我的自定义模板指定目录的部分,我已经继续创建了我的模板,但是,因为我缺少 templates.xml , SuiteCloud IDE 无法识别我的自定义模板。
NetSuite 帮助除了声明该文件存在之外并没有太大帮助。但它没有说明它应该包含什么,甚至没有说明数据的结构。
如果有人能在这里提供帮助,我们将不胜感激。 TIA.
我们很久以前就为 SuiteScript 1.0 做了同样的练习,我最近刚刚为我们的 SuiteScript 2.0 集做了同样的练习。
您可以在 P2_POOL_HOME/plugins/com.netsuite.ide.core_2016.2.0.e4.jar/templates/[=39= 中找到默认模板] 其中 P2_POOL_HOME
通常是 ~/.p2/pool/
templates.xml的一般格式为:
<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>
以下是我们模板中的两个示例:
<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
设置,并且在下面只有一个 <file>
标签<types>
。对于那些有多个入口点可供选择的(例如客户端、Map/Reduce、用户事件),您使用 checkbox
作为 typesControl
,然后使用 [=16 列出您想要的每个选项=] 标签在 <types>
.
下
我实际上不知道 rename
设置的作用。
生成文件的基本文件结构为:
/* 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 */
我使用 2017 尝试过同样的事情。您会在 ide jar 文件中找到一些 js 和模板文件。我修改了 ss_2.0_suitelet.js 和 ss_header.js 文件。
只需从 jar 中选择这些文件并将其放入您自己的本地库中。然后修改。不要忘记在 preference->netsuite (eclipse ide) 中指向模板目录。
您还可以添加作者和日期。但不确定如何在注释中添加 $filename 作为变量。这是一些示例。
Version Date Author Remarks
1.00 ${date} ${author} Initial version
我计划在生成新脚本时制作自己的代码模板。由于 SuiteCloud IDE 仅为 SuiteScript 1.0 配置,我希望为 SuiteScript 2.0 创建新模板。
也就是说,我已经到了可以为我的自定义模板指定目录的部分,我已经继续创建了我的模板,但是,因为我缺少 templates.xml , SuiteCloud IDE 无法识别我的自定义模板。
NetSuite 帮助除了声明该文件存在之外并没有太大帮助。但它没有说明它应该包含什么,甚至没有说明数据的结构。
如果有人能在这里提供帮助,我们将不胜感激。 TIA.
我们很久以前就为 SuiteScript 1.0 做了同样的练习,我最近刚刚为我们的 SuiteScript 2.0 集做了同样的练习。
您可以在 P2_POOL_HOME/plugins/com.netsuite.ide.core_2016.2.0.e4.jar/templates/[=39= 中找到默认模板] 其中 P2_POOL_HOME
通常是 ~/.p2/pool/
templates.xml的一般格式为:
<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>
以下是我们模板中的两个示例:
<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
设置,并且在下面只有一个 <file>
标签<types>
。对于那些有多个入口点可供选择的(例如客户端、Map/Reduce、用户事件),您使用 checkbox
作为 typesControl
,然后使用 [=16 列出您想要的每个选项=] 标签在 <types>
.
我实际上不知道 rename
设置的作用。
生成文件的基本文件结构为:
/* 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 */
我使用 2017 尝试过同样的事情。您会在 ide jar 文件中找到一些 js 和模板文件。我修改了 ss_2.0_suitelet.js 和 ss_header.js 文件。 只需从 jar 中选择这些文件并将其放入您自己的本地库中。然后修改。不要忘记在 preference->netsuite (eclipse ide) 中指向模板目录。 您还可以添加作者和日期。但不确定如何在注释中添加 $filename 作为变量。这是一些示例。
Version Date Author Remarks
1.00 ${date} ${author} Initial version