Как создать пользовательскую запись из записи сотрудника через UE в suitescript 2.0? - PullRequest
0 голосов
/ 03 марта 2020

Мне нужно создать пользовательскую запись в бэкэнде после создания новой записи сотрудника, я просто хотел знать, является ли record.transform(options) правильным выбором для нее. Я пытался сделать это, но пока ничего не происходит, и я не знаю, что добавить в toType prop of record.transform obj, потому что моя запись не стандартная. Пожалуйста, предложите решение из вашего опыта. спасибо

мой код:

define(['N/record', 'N/ui/serverWidget', '../library/global_constants.js'], function (record, ui, globalConstants) {


  function afterSubmit(context) {
    if (type == ctx.UserEventType.CREATE || type == ctx.UserEventType.EDIT) {
      createPayrollRec(context);
    }
  }

  function createPayrollRec(ctx) {
    try {
      var rec = ctx.newRecord;
      var form = ctx.form;

      var hireDate = rec.getValue({ fieldId: 'hiredate' });
      var childRecLen = rec.getLineCount({ sublistId: 'here_will_come_payroll_child' });

      if (!!hireDate && childRecLen > 0) {// if hireDate field is populated and chidlRec has lines

        var tranfRec = rec.transform({
          fromType: rec.Type.EMPLOYEE,
          fromId: req.parameters.id,
          toType: 'customrecord_mxp_payroll',// this is my custom rec id
          isDynamic: true,
        });
        log.debug('tranfRec', tranfRec);

        tranfRec.save({
          ignoreMandatoryFields: true
        });
        log.debug('Payroll Record Created!');

      }
    } catch (error) {
      log.error('Error: on afterSubmit', error)
    }
  }

  return {
    afterSubmit: afterSubmit
  }

});
...