0

我希望创建一个功能,用户可以通过该功能从 PDP 上的选项卡下载与该项目相关的任何可用文档。

到目前为止,我已经创建了一个名为 Documentation (customrecord_documentation) 的自定义记录,其中包含以下字段:

  • 相关项目: custrecord_documentation_related_item
  • 类型: custrecord_documentation_type
  • 文档: custrecord_documentation_document
  • 描述: custrecord_documentation_description
  • 相关项目 ID: custrecord_documentation_related_item_id

该功能在 NetSuite 的后端运行良好,我可以在其中将文档分配给 Inventory 项目。绊脚石是试图将数据提取到 SCA 网店的前端。

对上述任何帮助将不胜感激。

4

2 回答 2

0

已经有一段时间了,但您应该能够从相关的 Backbone View 类中访问 JSON 数据。从那里,在返回上下文中,将您想要的值输出到 PDP。希望您扩展原始类而不是覆盖/更改核心代码:P。

与 PDP 关联的模型应该包含您要查找的所有 JSON 数据。Model.get('...') 之类的语法。

我建议不要使用 Suitelets,因为这是额外的执行时间,而且速度有点慢。

我确定您知道,但您还需要将文档设置为公开可用。

希望这会有所帮助,谢谢。

于 2018-10-04T03:27:58.187 回答
0

我有很多方法。

一种方法是创建一个 Suitelet,它返回文档名称和 URL 的 JSON。url 可以是真正的 Netsuite url,也可以是套件的 url,您可以在其中设置套件以在使用 action=doc&id=_docid_查询参数访问时返回文档。

将目标添加<div id="relatedDocs"></div>item_details.tpl

在你ItemDetailsViewinit_Plugins添加

$.getJSON('app/site/hosting/scriptlet.nl...?action=availabledoc').
    then(function(data){
        var asHtml = format(data); //however you like
        $("#relatedDocs").html(asHtml);
    });

您也可以走整个模块路线。如果您创建了第三方模块DocsView,那么您将DocsView作为子视图添加到ItemDetailsView.

这涉及更多一些,因此请先尝试上面的选项,看看它是否符合您的需求。好处是您可以使用这种方法忽略 Backbone。您可以通过使用 service.ss 而不是套件来使其更便携。您可以为该功能创建自己的 ssp 应用程序,因此您不必处理 SCA url 结构。

于 2017-10-03T16:53:56.150 回答