スイートレットのサブリストに、作成済みのカスタム保存済み検索のデータを入力しようとしています。私の問題は、サブリストが、私が行っている保存済み検索の「タイプ」に対応するフィールドからのデータのみを入力していることです。たとえば、この場合、保存された検索は「トランザクション」タイプの検索です。たとえば、「名前」や「請求先住所」など、保存された検索で顧客フィールドを参照したい場合、このデータはスイートレットのサブリストに入力されません。トランザクション レコード自体で参照されている他のすべてのフィールドは、サブリストに適切に入力されます。誰かが同じ問題に遭遇したことがあるかどうか疑問に思っていましたが、とにかくここに私が実装しようとしているコードがあります。
var form,
sublist;
//GET
if (request.getMethod() == 'GET')
{
//create form
form = nlapiCreateForm('Test Custom Suitelet Form', false);
//create sublist to show results
sublist = form.addSubList('custpage_sublist_id', 'list', 'Item List');
//form buttons
form.addSubmitButton('Submit');
form.addResetButton('Reset');
// run existing saved search
var searchResults = nlapiSearchRecord('transaction','customsearchID');
var columns = searchResults[0].getAllColumns();
// Add the search column names to the sublist field
for ( var i=0; i< columns.length; i++ )
{
sublist.addField(columns[i].getName() ,'text', columns[i].getLabel() );
nlapiLogExecution('DEBUG', 'Column Label',columns[i].getLabel());
}
//additional sublist fields
sublist.addMarkAllButtons();
sublist.addField('custfield_selected', 'checkbox', 'Selected');
sublist.setLineItemValues(searchResults)
response.writePage(form);
}