Как получить контакт NetSuite, связанный с записью - PullRequest
0 голосов
/ 17 апреля 2019

В NetSuite при редактировании записи у меня есть кнопка, которая должна быть в состоянии захватить все имена контактов, фамилии, адрес электронной почты и, возможно, роль, чтобы я мог прикрепить это к другому коду, который я уже написал.Кажется, я не могу понять, как извлечь контакты, связанные с записью.

Я извлек запись из модуля 'N / record' и получил список контактов "contact", используя sublistId "contact", однако единственныйМетод с Sublist - это getColumn, и для него требуется options.fieldId, которого у меня нет или я не знаю, как его найти, и даже если бы я сделал объект, который он должен вернуть (объект столбца), то, по-видимому, не имеет значений, которые я быкак.

/**
 * @NApiVersion 2.0
 * @NScriptType ClientScript
 * @NModuleScope SameAccount
 */

define(['N/currentRecord','N/record'],function(context, recordKeeper){
    var options = {type:context.get().type, id:context.get().id, isDynamic:context.get().isDynamic};
    var record = recordKeeper.load(options);

    function TestButtonClick(){
        var contactSublist = record.getSublist({sublistId:"contact"});
        //Need to get the contact information here
        alert(JSON.stringify(contactSublist));//{"id":"contact","type":"staticlist","isChanged":false,"isDisplay":true}
    }

    function pageInit(context){
        //some code
    }

    var exports = {};
    exports.TestButtonClick = TestButtonClick;
    exports.pageInit = pageInit;

    return exports;
});

**EDIT 2**
NetSuite Fields
+customer
+customer - Address
-customer Contact
   -customer Contact 1
       Alt. Email
       Assist. Phone
       Assistant
       Attached Role
       Catagory
       Comments
       Contact (Auto-Filled)
       Contact Company
       Customer ID/Project
       Email
       Externalid
       Fax
       First Name
       Global subscription Status
       Home Phone
       Image
       Inactive
       Job Title
       Last Name

Мой contactSublist дает мне объект, как я и ожидал, однако из этого списка контактов я не уверен, как получить контакты, связанные с записью, или если я даже выбираю правильный путь, чтобы получить этоИнформацияrecord.getSublistText ({sublistId: "contact", fieldId:, line:}) однако я выкидываю исключения, как будто мои контакты не существуют, даже если я их вижу на экране.Это сообщение об исключении: «Вы попытались выполнить недопустимый подсписок или операцию с позицией. Вы либо пытаетесь получить доступ к полю на несуществующей строке, либо пытаетесь добавить или удалить строки из статического подсписка».

РЕДАКТИРОВАТЬ 2

Я не знаю, как прикрепить скриншот здесь, если это возможно, так что здесь текстовое изображение этого, посмотрите в разделе кода, потому что я не мог получитьмакет, чтобы выглядеть хорошо здесь, только в разделе кода он сохранит мое форматирование.

1 Ответ

1 голос
/ 17 апреля 2019

Если вы хотите получить контактную информацию, вам нужно пройти через список контактов. Сначала получите счетчик подсписка, используя record.getLineCount({sublistid: "contact"}). Затем вы можете получить информацию о каждом поле / столбце подсписка, используя цикл record.getSublistValue({sublistId: "contact", fieldId: <field>,line: <index>}), обычно цикл for.

...