Search里几种常用的formula公式与SQL语句(一)DECODE

以前做Dynamics AX的,顺手会写一些简单的job,class,以及table和view,但是对SQL语言不是非常拿手,现在转到NetSuite,在search上就能在前端写一些简单的代码,并且测试和验证。个人觉得还是要利用好这个平台。

不一定非要做码农,人生还有很多好玩的事情,但懂一点编程思维对提升认知和做事方法很有帮助。有太多码农真的是只会敲代码了,既没有数据处理的思维方式,也没有改进模式的意识。。废话不多说。

NS里大部分的公式和Excel是相通的,直接用NS只是查看结果更快速一些。

但更重要的是,search里是可以直接修改数据的。

DECODE公式

这个应该类似于hardcode功能,下面是suite answers原文中的介绍,

Decode

Function

Syntax

Short Descriptions

Example

DECODE

DECODE(expr, search, result

[, search, result ]...

[, default ]

)

Compares expr to each search value one by one. If expr is equal to a search, the corresponding result is returned. If no match is found, default is returned.

DECODE({systemnotes.name}, {assigned},'T','F')

我还找到了一个它举的栗子,

Result Field

Formula Field

Suggested Formula

Amount

{amount}

DECODE({accounttype}, 'Expense', -1, 'Other Expense', -1, 'Cost of Goods Sold', -1, 1) *{amount}

是用来纠正Expense的金额。因为2014之前的版本,Expense计入Credit的。但是按国际会计记账原则,Expense,Cost等费用,增加时应该计入Debit正,Credit负。减少时相反。所以所有2014年以前的transaction,在对账的时候,都应该把正负调整过来。

如果搞不清debit和credit,搜一下会计文章吧,这里就不多讲了。

例子里的公式是,如果账目类型为'Expense', 'Other Expense', 或者 'Cost of Goods Sold', 那么金额数x-1;如果是其他类型,那么金额数保持不变。

默认第一个参数是expression,最后一个参数是默认值。中间可以添加任意多个[search, result ]。只要记录里符合中间的任一search,那么返回相应的result。如果都不符合,那么返回最后一个result。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值