现在我有两种方法可以从 NetSuite 获取税码,这些是每种方法的优点/缺点
1/ 第一种方式:
我从 saleTaxItem 列表中获取所有税码并保存在数据库中,这样既简单又快捷。
但我们必须检查,员工/供应商有权使用它。结果,SalesTaxItem 对象没有任何属性引用员工/供应商,并且员工/供应商对象也没有引用键到 SalesTaxItem。
那么,我怎么知道员工/供应商有权以这种方式使用税码?
这是 SalesTaxItem 对象的结构:
SalesTaxItem Object
(
[itemId] => Item Name
[displayName] =>
[description] =>
[rate] => 7.25%
[taxType] =>
[taxAgency] => RecordRef Object
(
[internalId] => -100
[externalId] =>
[type] =>
[name] => New Name
)
[purchaseAccount] =>
[saleAccount] =>
[isInactive] =>
[effectiveFrom] =>
[validUntil] =>
[eccode] =>
[reverseCharge] =>
[parent] =>
[exempt] =>
[isDefault] =>
[excludeFromTaxReports] =>
[available] =>
[export] =>
[taxAccount] => RecordRef Object
(
[internalId] => 37
[externalId] =>
[type] =>
[name] => New Name
)
[county] => Country Name
[city] =>
[state] => CA
[zip] => ,95646,96120
[nexusCountry] =>
[internalId] => -111
[externalId] =>
[nullFieldList] =>
)
2/ 第二种方式:
我得到员工名单,供应商名单。并使用 NetsuiteService 对象的函数 getSelectValueResult 获取这些列表以获取税码。
通过这种方式,对于每个员工/供应商,我们需要调用函数 getSelectValueResult 来获取该员工/供应商的税码列表。虽然我们有 10 个税码,但我们需要调用函数 1000 次(如果我们有 1000 个员工/供应商)。
这种方式的好处是,我们可以保存引用键[taxcodes,employee],[taxcodes,vendor],它有助于检查员工/供应商是否有使用税码的权限。
缺点:速度慢,浪费我们的时间,并且得到重复的税码记录。
这是为每个员工/供应商调用函数 getSelectValueResult 时 GetSelectValueResult 对象的结构
[getSelectValueResult] => GetSelectValueResult Object
(
[status] => Status Object
(
[statusDetail] =>
[isSuccess] => 1
)
[totalRecords] => 2
[totalPages] => 1
[baseRefList] => BaseRefList Object
(
[baseRef] => Array
(
[0] => RecordRef Object
(
[internalId] => 25821
[externalId] =>
[type] => platformCore:RecordRef
[name] => My tax code name 1
)
[1] => RecordRef Object
(
[internalId] => 27812
[externalId] =>
[type] => platformCore:RecordRef
[name] => My tax code name 2
)
)
)
)
我应该使用哪一个?
我认为第一种方法很好,但是在使用税码时如何检查员工/供应商的许可?
非常感谢你。