2016-04-13 1 views
1

Я пытаюсь найти способ объединить две записи клиентов в NetSuite. Наши данные NetSuite синхронизируются с базой данных SQL Server, и иногда две учетные записи клиентов объединяются. Мне нужно, чтобы это отразилось на NetSuite. Я вижу, что в интерфейсе NetSuite имеется некоторое дублирование обнаружения и слияния. Можно ли начинать слияние клиентов посредством вызова webservice? Я использую C# и пользовательское приложение SuiteTalk для перемещения данных в NetSuite.NetSuite - SuiteTalk - объединить клиентов

Редактировать: альтернативно, это может сработать, чтобы сделать старую учетную запись клиента субклиентом новой учетной записи. Кто-нибудь сделал это через webservices?

ответ

0

Вы не можете запустить процесс слияния через SuiteTalk.

Существует несколько способов достижения вашей цели. На мой взгляд, самым простым было бы создать пользовательское поле для клиента, которое указывает «слияние на master», а затем запустить сценарий расписания, чтобы проверить клиентов со значениями в этом поле и запустить процесс слияния для мастер-процесса.

Так в основном:

  1. создать пользовательское поле, которое содержит ссылку на основной запись
  2. обновления, поля на к-быть-объединенным дубликат через SuiteTalk
  3. создать запланированный скрипт, который проверяет заполнение этого поля; при обнаружении сценария будет задано слияние

Для этого вам не нужно включать обнаружение дубликатов в вашей учетной записи Netsuite. Механизм слияния доступен через список номеров. Функция ниже берет внутренний идентификатор ведущей и дублирующей записи и устанавливает задание слияния:

function queueMerge(masterId, mergeId) { 
    try { 
     var manager = nlapiGetJobManager('DUPLICATERECORDS'); 

     var dupeJob = manager.createJobRequest(); 

     dupeJob.setEntityType(dupeJob.ENTITY_CUSTOMER); 
     dupeJob.setMasterSelectionMode(dupeJob.MASTERSELECTIONMODE_SELECT_BY_ID); 
     dupeJob.setMasterId(masterId); 
     dupeJob.setOperation(dupeJob.OPERATION_MERGE); 
     dupeJob.setRecords([masterId, mergeId]); 

     var jobId = manager.submit(dupeJob); 
     nlapiLogExecution("DEBUG", "setup merge for " + mergeId + " with " + jobId); 
    } catch (e) { 
     nlapiLogExecution("ERROR", "on merge for " + mergeId, e); 
    } 
} 

 Смежные вопросы

  • Нет связанных вопросов^_^