カスタムトランザクションボディフィールドcustbody_siteentity
をList->Employee
として構成し、正しいトランザクションに関連付けました。freemarkerでリンクされたカスタムフィールド値にアクセス
しかし私は、トランザクション・テンプレートを介して連結された従業員レコードの任意のフィールドにアクセスするように見えることはできません。
<?xml version="1.0"?><!DOCTYPE pdf PUBLIC "-//big.faceless.org//report" "report-1.1.dtd">
<pdf>
<head>
</head>
<body>
<table class="body"><tr>
<th>${[email protected]}</th>
<th>${[email protected]}</th>
<th>${[email protected]}</th>
<th>${[email protected]}</th>
</tr>
<tr>
<td>${record.entity}</td>
<td>${record.entity.email}</td>
<td>${record.custbody_siteentity}</td>
<td>${record.custbody_siteentity.email}</td>
</tr></table>
</body>
</pdf>
まず 3つの列を期待通りに動作します。しかし、上記のテンプレートの実際の例をテストしようとすると、私はNULLポインタ例外を受け取ります。
誰もこの方法でフィールドにアクセスする方法を知っていますか?
(私は、特定のlist->employee
に溶液または何を持っていませリスト/レコードタイプのカスタム取引体フィールドへの一般的なソリューションに興味があり、その中のフィールドにアクセスする。)
[bknightsが指摘カスタム取引の本文フィールドに「レコードは親です」とマークする必要があります。
ほとんど!これは '$ {record.custbody_siteentity}'を解決します。しかし、私の想像上の例ではなく、実際のフィールドを参照するというような非意図的な例を使用すると、実際にテンプレートを保存する際にエラーが発生します。これまで有用だったことは: 'テンプレートマージ中の例外。 com.netledger.templates.TemplateServiceException:テンプレートのマージ中に例外が発生しました。 java.lang.NullPointerException' –
私はまったく同じように「$ {record.custbody_agencys_customer.companyname}」を実行しました。 NetsuiteがアドバンストXMLエディタを "改良"する前のことかもしれません。私はもうそのアカウントにアクセスできません。ラベルをハードコードすればどうなりますか?また、ここで推測すると、それらのフィールドが関連するカスタムフォームに含まれていることを確認してください。 – bknights