NetSuite Transaction字典

修订历史

ID内容修订人日期
1初始化此文档Rick2022-5-23
2增加修订历史;参考资料;通用字段与Transaction Type别字段;Rick2022-5-29
3增加Paid Amount Is Discount {paidamountisdiscount}字段;Rick2022-11-12
4

增加Item Rate {rate}、Item Rate{fxrate}。前者为本币单价,后者为外币单价。

在Saved Search字段选择中这两个字段名称都是Item Rate,易混淆。

Rick2024-9-7

这个题目一直挂在心里,直到这个五一节我想通了一件事。如果一个问题你不把它不解决,它就会不停的纠缠你,直到你放弃抵抗,或者选择干掉它。

今朝,我选择干掉它!跟你们一起。

这个问题就是“在做Saved Search时,我们选择字段时的痛苦”。还记得我前段的帖子中,“靠,猜!”的梗么?它浪费了太多人的时间。今天我们需要把伊做踏,方法很简单,就是“死磕”。原来我不想动手,就是感觉太费时间,不过蹉跎至今,不能再忍。但是我个人力量有限,所以得借助大家的力量,集沙成塔。

大致思路是这样的。本应该以Wiki的方式,大家编辑。但是由于工具限制,未能这样做。所以我们因陋就简,我会开出这个工具贴,把字段列表框架搭出来。大家可以跟帖添加。最终我们可以大功告成,知识开源!

我们按照:

  • 表结构
  • 字段组A-Z

的方式来组织内容。

Transaction表的结构

首先,我们介绍下Transaction表的结构。从Record Browser中,我们可以看到Transaction的结构如下:

  • Joins
  • Filters
  • Columns

Joins在Saved Search中的对应关系:

Filters在Saved Search中的对应关系:

 Columns在Saved Search中的对应关系:

Transaction表中的通用字段和Transaction Type别字段

由于NetSuite对企业事务处理的理解是,将各类事务类型抽象化之后,合并在“Transaction”这个统一表中去。这是NetSuite构架师的选择,我个人推测此种设计的好处在于“简洁”。可以复用一些字段。例如,采购订单和销售订单,都会有“交易对象”,“交易行Item”,“本外币金额合计”,“币别”等等相同的属性字段,如果能够将之合并,就能够降低数据表中字段设计上的冗余。 但是这样设计的不好之处,也非常明显:

1. 一个Transaction表承载太多类型的业务信息。

虽然这个表对于整体系统来说,保持了简洁。但是导致这个表相对于某个类型的业务,有太多的冗余字段。对于用户来说,在处理某一类型的事务处理时,例如“销售订单”时,会发现表中有大量无关的,非“销售”类的字段。对于用户来说,从一大堆字段中选择某几个,是有难度的。这就是我们写这篇文章的原因。

2.未分表导致的交易量雪崩。

如果做了分表设计,例如销售类交易与采购类交易分表设计的话,那么如果“销售类交易”量激增的话,不会拖慢“采购类交易”的数据库操作性能。但是由于NetSuite是将各种事务处理类型混合在一个表中。那么出现“单一业务类型“激增带来整体事务处理的性能下降的情况。这就是我们把NetSuite的应用定位于中型企业的原因,用户1000人是个坎。

基于Transaction“统一表”设计的基本事实,我们需要将Transaction表中众多字段,按照“通用”与“专用”进行分类。进而开展下一步工作。

A

abbrev
account
accounttype
acctcorpcardexp
actualproductionenddate
actualproductionstartdate
actualshipdate
altsalesamount
altsalesnetamount
amount
amountpaid
amountremaining
amountunbilled
appliedtoforeignamount
appliedtoisfxvariance
appliedtolinkamount
appliedtolinktype
appliedtotransaction
applyingforeignamount
applyingisfxvariance
applyinglinkamount
applyinglinktype
applyingtransaction
approvalstatus
authcode
autocalculatelag
avsstreetmatch
avszipmatch
 

B

billable
billcountrycode
billeddate
billingamount
billingschedule
billingtransaction
billvariancestatus
binnumber
binnumberquantity
buildentireassembly
buildvariance
built
 

C

canhavestackablepromotions
catchupperiod
cccustomercode
ccexpdate
ccholdername
ccnumber
ccstreet
cczipcode
class
classnohierarchy
cleared
closed
closedate
cogsamount
commissioneffectivedate
commit
confirmationnumber
contribution
contributionprimary
costcomponentamount
costcomponentcategory
costcomponentitem
costcomponentquantity
costcomponentstandardcost
costestimate
costestimaterate
costestimatetype
createdby
createdfrom
creditamount
cscmatch
currency
customform
customgl
custtype
 

D

datecreated
daysopen
daysoverdue
debitamount
deferredrevenue
deferrevrec
department
departmentnohierarchy
depositdate
deposittransaction
discountamount
docunit
draccount
duedate
 

E

effectiverate
email
enddate
entity
entitystatus
estgrossprofit
estgrossprofitpct
estgrossprofitpercent
exchangerate
excludecommission
excludefromraterequest
expectedclosedate
expectedreceiptdate
expensecategory
expensedate
externalid
 

F

firmed
forecasttype
formulacurrency
formuladate
formuladatetime
formulanumeric
formulapercent
formulatext
fulfillingtransaction
fxaccount
fxamount
fxcostestimate
fxcostestimaterate
fxestgrossprofit
fxrate: Transaction Line中的外币Unit Price。
fxtrancostestimate
fxvsoeallocation
fxvsoeamount
fxvsoeprice

G

gcoavailabeltocharge
gcoavailabletorefund
gcoavsstreetmatch
gcoavszipmatch
gcobuyeraccountage
gcobuyerip
gcochargeamount
gcochargebackamount
gcoconfirmedchargedtotal
gcoconfirmedrefundedtotal
gcocreditcardnumber
gcocscmatch
gcofinancialstate
gcofulfillmentstate
gcoorderid
gcoordertotal
gcopromotionamount
gcopromotionname
gcorefundamount
gcoshippingtotal
gcostatechangeddetail
giftcert
grossamount

I

includeinforecast
incoterm
intercostatus
intercotransaction
internalid
inventorylocation
inventorysubsidiary
invsoebundle
isallocation
isbackflush
iscustomapproval
isgcochargeback
isgcochargeconfirmed
isgcopaymentguaranteed
isgcorefundconfirmed
isinsidedelivery
isinsidepickup
isintercompanyadjustment
isintransitpayment
isreversal
isrevrectransaction
isscrap
isshipaddress
istransferpricecosting
iswip
item
itemfulfillmentchoice
itemrevision

L


lastmodifieddate
lastviewed
leadsource
line
linesequencenumber
lineuniquekey
location
locationnohierarchy

M


mainline
mainname
matchbilltoreceipt
 

memo

PO行中的Description,在数据库中的字段名是Memo。在Saved Search时,搜索Description是找不到的。
memomain
memorized
merchantaccount
message
multisubsidiary

N


netamount
netamountnotax
nextapprover
nextbilldate
nexus
nonreimbursable

O


opportunity
options
orderallocationstrategy
originator
otherrefnum
overrideinstallments

P


packagecount
paidamount

Paid Amount Is Discount

字段ID是{paidamountisdiscount}。
此字段的含义是在Customer Payment中的Paid Amount字段的发生额,来自Discount Taken或是实际的Payment。如下图所示的两个字段。

这是一个特别Tricky的设计。在一个Customer Payment记录中,例如一个应收款是1000,在收款时客户实际付款是900,另外有100的Discount。该记录的保存形式是两条记录:

  • Paid Amount=900, Paid Amount Is Discount=False;
  • Paid Amount=100, Paid Amount Is Discount=True;

paidtransaction
partner
partnercontribution
partnerrole
partnerteammember
payingamount
payingtransaction
paymenteventdate
paymenteventholdreason
paymenteventpurchasecardused
paymenteventpurchasedatasent
paymenteventresult
paymenteventtype
paymenthold
paymentmethod
paymentoption
paypalpending
paypalstatus
paypaltranid
payrollbatch
pnrefnum
policyviolated
porate
posting
postingperiod
pricelevel
print
probability
projectedamount
projecttask
promocode
purchaseorder

Q


quantity
quantitybilled
quantitycommitted
quantitypacked
quantitypicked
quantityrevcommitted
quantityshiprecv
quantityuom

R


rate: Transaction Line中的转换为本币的Unit Price。
realizedgainpostingtransaction
recognizedrevenue
recordtype
requesteddate
revcommitstatus
revcommittingtransaction
revenuestatus
reversaldate
reversalnumber
revrecenddate
revreconrevcommitment
revrecstartdate
rgaccount
rgamount

S


saleseffectivedate
salesorder
salesrep
salesteammember
salesteamrole
schedulingmethod
serialnumber
serialnumbercost
serialnumbercostadjustment
serialnumberquantity
serialnumbers
shipcarrier
shipcomplete
shipcountrycode
shipdate
shipgroup
shipmethod
shippingamount
shiprecvstatusline
shipto
signedamount
source
startdate
statusref
subsidiary
subsidiarynohierarchy
subsidiarytaxregnum

T


taxamount
taxcode
taxline
taxperiod
taxpointdate
taxtotal
terminmonths
terms
termsofsale
title
tobeemailed
tobeprinted
tosubsidiary
tosubsidiarynohierarchy
total
totalcostestimate
trackingnumbers
trandate
tranestgrossprofit
tranfxestgrossprofit
tranid
tranisvsoebundle
transactiondiscount
transactionlinetype
transactionnumber
transferlocation
transferorderitemline
transferorderquantitycommitted
transferorderquantitypacked
transferorderquantitypicked
transferorderquantityreceived
transferorderquantityshipped
type

U


unit
unitcostoverride

V


vendtype
visibletocustomer
vsoeallocation
vsoeamount
vsoedeferral
vsoedelivered
vsoepermitdiscount
vsoeprice

W


website
 

参考资料

1.NetSuite几个Amount的含义

2.NetSuite Transaction表中的通用与专用字段_毛岩喆的博客-CSDN博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值