SAP CRM One Order header資料庫表幾個和時間戳相關的欄位
這些欄位為:CHANGED_AT, HEAD_CHANGED_AT和CRM_CHANGED_AT
Have a look at Order header table CRMD_ORDERADM_H and you can find there are three different times. When, where and how is each populated?
CHANGED_AT
There is a scenario that the field CHANGED_AT is changed, but HEAD_CHANGED_AT remains untouched. The common scenario is that you make some changes on order line item only, for example change the description of line item. When the change is to be persisted, a new timestamp is populated and filled to both CHANGED_AT and CRM_CHANGED_AT field.
The usage of CRM_CHANGED_AT is clearly explained in the source code.
Kindly notice the difference between changed_at from database buffer and latest value.
In line 163, the field value filled based on database buffer is overwritten with the latest data:
The purpose is, after this assignment, in line 166 we can use simple “=” to compare whether there are some other changes on ORDERADM_H besides these three fields ( since in line 163~165 we forcefully ensure the equality of them ).
Since we actually only make changes on item, so line 239 will not be executed – head_changed_at remains unchanged.
Now in line 335 the header object buffer is now changed with latest value of changed_at:
So in function module CRM_ORDER_UPDATE_TABLES_DETERM, an entry will be determined for update, which is simply because the changed_at value now in object buffer and database buffer are different. See comparison screenshot in debugger:
After the update function module is executed, the CHANGED_AT and CRM_CHANGED_AT is now persisted to header table successfully.
HEAD_CHANGED_AT
The scenario with this field involved is quite straight-forward, for example just make changes on header description. In this case HEAD_CHANGED_AT will be overwritten with CHANGED_AT, since now header object buffer and database buffer has different value for field DESCRIPTION:
要獲取更多Jerry的原創文章,請關注公眾號"汪子熙":
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24475491/viewspace-2713956/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- ODI基於源表時間戳欄位獲取增量資料時間戳
- MySQL 資料庫技巧:批次更新隨機生成的時間戳欄位MySql資料庫隨機時間戳
- 獲取時間戳,幾個時間點的時間戳時間戳
- SAP CRM銷售訂單UI上的欄位對應的資料庫表儲存欄位:requested start date和end dateUI資料庫
- SAP Commerce(原Hybris)的訂單處理框架和SAP CRM One Order框架框架
- SAP CRM One order裡user status和system status的mapping邏輯APP
- SAP CRM和Cloud for Customer的擴充套件欄位後設資料Cloud套件
- SAP CRM One Order的事件序號產生器制事件
- SAP CRM One Order跟蹤和日誌工具CRMD_TRACE_SET
- [探索]在使用模型時,關於資料表欄位的一個思考?模型
- 我在德國做SAP CRM One Order redesign工作的心得
- 我做SAP CRM One Order redesign的一些心得體會
- 查詢資料庫表及表欄位資料庫
- 如何查詢SAP Fiori UI上某個欄位對應的底層資料庫表UI資料庫
- Dynamics CRM使用計算欄位自動計算兩個時間欄位的天數差
- Oracle undo保留時間的幾個相關引數Oracle
- 資料庫表欄位命名規範資料庫
- 如何使用程式碼修改SAP CRM One Order CUMULAT_H物件的值物件
- 織夢資料庫表結構_Dedecms資料庫表和欄位詳細介紹資料庫
- MySQL中修改一個資料庫下包含有某個相同欄位的所有表的欄位長度MySql資料庫
- 在 SAP MM 物料顯示介面上看到一個欄位,如何查詢哪張資料庫表的哪個欄位進行的儲存資料庫
- SAP物料主資料建立時間和建立個數的函式關係函式
- 如何檢視型別為LRAW的SAP ABAP資料庫表欄位的內容型別資料庫
- 兩個時間戳的時間差時間戳
- 如何自行查詢出 SAP ABAP 標準的 OData 服務返回資料的後臺資料庫表和表欄位名稱資料庫
- SAP CRM資料庫表CRMD_SRV_REFOBJ和CRMD_SRV_OSSET資料庫OBJ
- mysql資料庫新增和修改欄位MySql資料庫
- SQL Server中獲取資料庫名、表名、欄位名和欄位註釋的SQL語句SQLServer資料庫
- SAP CRM Fiori應用如何啟用Sales Office和Sales Group兩個欄位
- 時間型別和時間戳型別時間戳
- 關於日期及時間欄位的查詢
- SAP CRM calculated欄位的實現原理講解
- 如何在Oracle資料庫中查詢表和欄位說明Oracle資料庫
- 分享一段PHP格式化時間戳的程式碼,可以把時間戳轉化成幾天前,幾個月前的格式PHP時間戳
- SAP 資料庫表 TCURX 在定義貨幣欄位小數點位數中的重要作用資料庫
- SAP CRM資料庫表CRMD_CUMULAT_H的設計原理資料庫
- SAP CRM訂單資料庫表CRMD_SHIPPING的填充原理資料庫
- laravel sync()同步時修改中間表欄位Laravel