0

我想自定义从我公司的电子商务网站生成的订单确认电子邮件。我已经搜索了在 SSP Applications 文件夹中可以找到的所有文件。这封电子邮件来自哪里?

4

3 回答 3

2

NetSuite 建议我目前无法为网上商店自定义电子邮件模板(或“不支持” - 我忘记了使用的确切词),但是您可以通过关闭设置 Web 的电子邮件选项卡中的电子邮件来解决此问题网站页面,然后使用工作流程创建您自己的页面。您可以在工作流中添加一个条件,以仅对源字段等于 Web 订单上的任何源(通常为“Web ({sitename})”)的销售订单执行操作。根据我的经验,您需要将整个字符串添加到条件中,而不仅仅是“Web”,因为它出现在已保存的搜索中。

希望这会有所帮助 - 如果您需要更多详细信息,请告诉我。

于 2017-06-21T19:51:33.567 回答
0

这取决于您使用的是基本打印类型还是高级打印类型。我最近刚刚对我的订单确认进行了更改。

于 2017-06-22T17:34:08.977 回答
0

您可以在 netsuite Suitecommerce 网站中自定义订单电子邮件,是的,您写到您找不到用于订单电子邮件的默认模板,但是通过用户事件,您可以触发自定义订单电子邮件。

您需要在 'AFTER SUBMIT FUNCTION' 上创建用户事件,它应该应用于销售订单

以下是您可以使用的一些示例 SuiteScript,我们已经通过用户事件完成了订单确认电子邮件,它对我们来说工作得很好。这是您可以自定义电子邮件的唯一方法

`var CONTEXT = nlapiGetContext(); //get the current context
var executeScript = true;

function OrderConfirmEmail()
{
    nlapiLogExecution('DEBUG', 'Process Error', "hi");
    var stExecType = CONTEXT.getExecutionContext();
    if(stExecType != 'webstore')
    {
      try
      {
        return true;
      }
      catch(e)
      {
        nlapiLogExecution('ERROR', 'e', e);
        return true;
      }
    }
    try
    {
        var orderid = nlapiGetRecordId();
        var order = nlapiLoadRecord('salesorder',orderid);
        var detail  = getOrderDetail(order);

        if(detail.tranid == null)
        {
            var order = nlapiLoadRecord('salesorder',orderid);
            detail  = getOrderDetail(order);
            SendEmail(detail);
        }
        else
        {
            SendEmail(detail);
        }
    }
    catch(error)
    {
        if(error.getDetails != undefined)
        {
            nlapiLogExecution('ERROR', 'Process Error', error.getCode() + ': ' + error.getDetails());
            throw error;
        }
        else
        {
            nlapiLogExecution('ERROR', 'Unexpected Error', error.toString());
            throw error;
        }
    }
}

function SendEmail(detail)
{
    var htmltext = '';
    htmltext = htmltext + getHead(detail.entity);
    htmltext = htmltext + getTemplateHeader(detail.entity);
    htmltext = htmltext + getStatus(detail.tranid,detail.entity);
    htmltext = htmltext + getOredrInformation(detail,detail.entity);
    htmltext = htmltext + getShippingDetail(detail,detail.entity);
    htmltext = htmltext + getOrderDetailEN(detail);
    htmltext = htmltext + SuggestedProduct(detail.entity);
    htmltext = htmltext + thankYouMessage(detail.entity);
    htmltext = htmltext + services(detail.entity);
    htmltext = htmltext + getTemplateFooter(detail.entity);
    htmltext = htmltext + getTemplateFoot(detail.entity);

    nlapiSendEmail('18', detail.email, 'Order Confirmation Email', htmltext);
}

`

注意: nlapiSendEmail() 中的 18 是客户的 ID,您需要从他的电子邮件 ID 创建客户,这将被触发。

让我知道更多信息。

于 2017-06-22T04:50:50.630 回答