日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

ERP 数据流脚本框架 Samsara v2.0 脚本规范 (修订稿)

發布時間:2023/12/15 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ERP 数据流脚本框架 Samsara v2.0 脚本规范 (修订稿) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

腳本規范:


Samsara v2.0 框架一共包含 7大模塊
數據模塊:Exchanger, Spliter, Loader,Mapper
流轉控制模塊:Ifer,Switcher,Channel


Exchanger
?

EXCHANGER?[TABLENAME]?[IDENTIFIER]
{
[COLUMNTYPE:][COLUMNNAME]?=?[EXPRESSION,]
}

EXCHANGER?TABLE1?T1
{
NUM:COLUMN1?
=?TABLE2.COLUMN1?+?MAX(TABLE3.COLUMN1)?+?SYS.SERIAL?+?@TIME
}


功能:
數據交換映射。

后續連接標記:
NEXT

COLUMNTYPE:
字段的類型,用于確認此字段的處理類型。
包括:NUM/STR/BOOL/NBOOL = 數字、字符、布爾、數字運算布爾

EXPRESSION:
表達式,包含各種標識符、函數符號。
標識符包括:TABLENAME.COLUMNNAME/@MARK/SYS.TYPE = 表標識、占位標識、系統標識
。表標識代表此數據來源于表
。占位標識代表此數據來源于此占位符代表的數據(于Mapper結合能構造通用模塊)
。系統標識是Samsara默認的數據源,包括:SYS.NULL/SYS.SERIAL/SYS.DATETIME/SYS.PK.TABLENAME.COLUMNNAME
函數符號包括:MAX/MIN/AVERAGE/COUNT/POWER等。


Spliter
?

SPLITER?[TABLENAME]?[IDENTIFIER]
{
[COLUMNTYPE:][COLUMNNAME]?=?[EXPRESSION,]
}

SPLITER?TABLE1?S1
{
NUM:COLUMN1?
=?TABLE1.COLUMN1?/?2,
COLUMN2?
=?TABLE2.COLUMN2
}

?

功能:
功能同EXCHANGER。

與EXCHANGER區別:
EXCHANGER是在原數據基礎上運算,即原來存在table1,那么在原table1數據基礎上進行運算然后返回給TABLE1
SPLITER在元數據基礎上運算后生成一個新的副本取代原數據。

后續連接符號
OLD/NEW/NEXT

其他定義同上。


Loader
?

LOADER?[TABLENAME]?[IDENTIFIER]
{
SQL?
=?[EXPRESSION],
[COLUMNTYPE]:[COLPARAM]?=?[EXPRESSION,]
}

LOADER?TABLE1?LOAD1
{
SQL?
=?SELECT?*?FROM?TABLE1?WHERE?COLUMN1?=?:COLUMN1,
NUM:COLUMN1?
=?TABLE2.COLUMN1?+?12
}

?

功能:
從數據庫裝載數據到Samrara進行運算,不需要用戶提供。
COLPARAM就是SQL中的參數,用分號標識。

后續標志:
TRUE/FALSE/NEXT

其他:同上。


Mapper?

MAPPER?[IDENTIFIER]
{
[MARK]?=?[EXPRESSION,]
}

MAPPER?MAPPER1
{
STR:@PERSON?=?TABLE2.COLUMN1?+?DEMO
}

?


功能:
把表達式運算結果賦值到標記,供后續模塊使用。提高復用性。

后續標志:
NEXT

其他同上。


Ifer IFER?[IDENTIFIER]
{
[EXPRESSION]
}

IFER?I1
{
AND((?TABLE1.COLUMN1?+?TABLE1.COLUMN2?)?>?MAX(TABLE2.COLUMN1?*?TABLE2.COLUMN2))
}?



功能:
根據表達式計算bool結果,然后根據結果控制后續。

后續符號:
TRUE/FALSE

EXPRESSION:
數字布爾、字符布爾運算表達式。包含函數AND / OR / 無.
AND表示輸入的數據必須全部符合才判真、or則有真則真、無就是每次都判斷。

例子:
例如訂單子表如果價格>5的,那么生成入庫單、否則生成送貨單。這個就是無函數。
如果訂單子表當所有的到貨數量 == 要貨數量,那么才訂單確認,這個就是AND.

其他同上。

Switcher

SWITCHER?[IDENTIFIER]
{
[CASE]?:?[EXPRESSION]
}

SWITCHER?SW1
{
CASE1?:?TABLE1.COLUMN1?
==?12,
CASE2?:?TABLE1.COLUMN1?
>?12,
CASE3?:?TABLE1.COLUMN1?
<?12
}


功能:
是更加復雜的if,判斷每個case,然后控制后續。

后續符號:
[CASE],用戶指定。

其他同Ifer.

?
Channel

CHANNEL?[IDENTIFIER]
{
[FROM]?=?[TO]
}

CHANNEL?CHANNEL1
{
EXCHANGER.TABLE1.E1.
NEXT?=?SPLITER.TABLE1.SP1,

SPLITER.TABLE1.SP1.OLD?
=?EXCHANGER.TABLE2.E1,
SPLITER.TABLE1.SP1.NEW?
=?EXCHANGER.TABLE2.E2
}


功能:
把各種模塊進行組織,達到數據流效果。

?


?

轉載于:https://www.cnblogs.com/zc22/archive/2007/11/27/973396.html

總結

以上是生活随笔為你收集整理的ERP 数据流脚本框架 Samsara v2.0 脚本规范 (修订稿)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。