Поэтому я пытаюсь добавить кнопку в форму заказа на продажу в netsuite, которая проверяет определенные поля на основе того, что вы ввели в предыдущих полях. У меня возникли проблемы с тестированием и отладкой этого в google chrome в netsuite. Во-первых, вот мой код: я добавляю кнопку, которая вызывает эту функцию, в запись клиентского скрипта.
function vsoeValidate(){
var calc = nlapiGetFieldValue('custbody_cv_vsoe_calculation');
calc = nlapiGetFieldValue('custbody_cv_renewal_rev_amount') - (nlapiGetFieldValue('custbody_cv_vsoe_cola') * nlapiGetFieldValue(1-'custbody_cv_vsoe_partner_disc')) - (nlapiGetFieldValue('custbody_cv_vsoe_bts_fees') * (1-nlapiGetFieldValue('custbody_cv_vsoe_partner_disc'))) /
(nlapiGetFieldValue('custbody_cv_vsoe_software_amt') * (1- nlapiGetFieldValue('custbody_cv_vsoe_multiyear_disc')));
nlapiSetFieldValue('custbody_cv_vsoe_calculation', calc);
var display = nlapiGetFieldValue('custbody_cv_vsoe_calculation_disp');
var bucket = nlapiGetFieldValue('custbody_cv_vsoe_bucket');
if(bucket === 'X'){
return false;
}
if(calc > (nlapiGetFieldValue('custbody_cv_vsoe_bucket.custrecord_cv_vsoe_maintenance_rate') *1.15) || calc < ('custbody_cv_vsoe_bucket.custrecord_cv_vsoe_maintenance_rate'*0.85)){
display = '<div style="; background-color:red; color:white;font-weight:bold;text-align:center">Out of bounds</div>';
return true;
}
else{
display = '<div style="; background-color:green; color:white;font-weight:bold;text-align:center">In bounds</div>';
return true;
}
}
когда я нажимаю кнопку, я получаю сообщение об ошибке TypeError undefined is not a function.
Я действительно не уверен, что делать дальше, это потому, что логика внутри vsoeValidate неверна, или я использую неправильный тип функции? Любая помощь будет большой спасибо!
Обновление: вот скриншот моей записи скрипта!
nlapiGetFieldValue(custbody_cv_vsoe_calculation)
должно бытьnlapiGetFieldValue('custbody_cv_vsoe_calculation')
, обратите внимание на кавычки. - person erictgrubaugh   schedule 04.08.2014