netsuite nlapiLineInit

function nlapiValidateField(type, fld, optionswin, linenum)
{
var isValid = true;
if (optionswin != null)
optwin = optionswin;
if (nsapiGetMainForm( ).elements.nlapiVF != null && nsapiGetMainForm( ).elements.nlapiVF.value.length > 0)
{
var fldnam = fld.name;
if (linenum != null)
fldnam = fldnam.substring(0,fldnam.length-linenum.toString().length)
else if ( type != null )
linenum = nlapiGetCurrentLineItemIndex(type)
var scripts = nsapiGetMainForm( ).elements.nlapiVF.value.split(',');
for ( var i = 0; isValid && i < scripts.length; i++ )
{
var checkValidOrig = fld.checkvalid
try
{
fld.checkvalid = false;
isValid = eval( scripts[ i ]+"(type, fldnam, linenum)" );
}
finally
{
fld.checkvalid = checkValidOrig;
}
if (!isValid)
{
if (typeof(ftabs) != 'undefined')
{
var tab = ftabs[fldnam.toLowerCase()];
if (tab != null && tab != "main" && !isTabShown(tab))
ShowTab(tab,true);
}
setFieldFocus( fld );
if ( fld.select != null ) fld.select();
optwin = null;
}
}
}

optwin = null;
nsapiBuildChangedLineItems();
return isValid;
}
function nlapiFieldChanged(type, fld, optionswin, linenum)
{
var fldnam = fld.name;
if (linenum != null)
fldnam = fldnam.substring(0,fldnam.length-linenum.toString().length)
else if ( type != null )
linenum = nlapiGetCurrentLineItemIndex(type)
if (optionswin != null)
optwin = optionswin;
if (nsapiGetMainForm( ).elements.nlapiFC != null && nsapiGetMainForm( ).elements.nlapiFC.value.length > 0)
{
var scripts = nsapiGetMainForm( ).elements.nlapiFC.value.split(',');
for ( var i = 0; i < scripts.length; i++ )
eval(scripts[ i ]+"(type, fldnam, linenum)");
}

optwin = null;
nsapiBuildChangedLineItems();
}
function nlapiPostSourcing(type, fldname)
{
if (nsapiGetMainForm( ).elements.nlapiPS != null && nsapiGetMainForm( ).elements.nlapiPS.value.length > 0)
{
var origflag = window.isinited;
try
{ /* --- set inited flags so that machine calls function correctly. */
setIsInited( window, true );
var scripts = nsapiGetMainForm( ).elements.nlapiPS.value.split(',');
for ( var i = 0; i < scripts.length; i++ )
eval(scripts[ i ]+"(type, fldname)");
}
finally /* unset page_init flags. */
{
setIsInited( window, origflag );
}
}
}
function nlapiLineInit(type)
{
if (nsapiGetMainForm( ).elements.nlapiLI != null && nsapiGetMainForm( ).elements.nlapiLI.value.length > 0)
{
var scripts = nsapiGetMainForm( ).elements.nlapiLI.value.split(',');
for ( var i = 0; i < scripts.length; i++ )
eval(scripts[ i ]+"(type)");
}
}
function nlapiValidateLine(type)
{
var isValid = true;
if (nsapiGetMainForm( ).elements.nlapiVL != null && nsapiGetMainForm( ).elements.nlapiVL.value.length > 0)
{
var scripts = nsapiGetMainForm( ).elements.nlapiVL.value.split(',');
for ( var i = 0; isValid && i < scripts.length; i++ )
isValid = eval(scripts[ i ]+"(type)");
}
return isValid;
}
function nlapiRecalc(type)
{
if (nsapiGetMainForm( ).elements.nlapiRC != null && nsapiGetMainForm( ).elements.nlapiRC.value.length > 0)
{
var scripts = nsapiGetMainForm( ).elements.nlapiRC.value.split(',');
for ( var i = 0; i < scripts.length; i++ )
eval(scripts[ i ]+"(type)");
}
}

原文地址:https://www.cnblogs.com/backuper/p/1432281.html