以前用工作日志軟件,覺得保存起來是個麻煩。而且備份恢復的話都要注冊,十分不便。先傳上來保存一下。
printtable.jsp中完成的SQL包括訂單號,銷售部門,銷售員。商品單價,數量,小計。
缺少商品名稱,商品描述。收貨人,收貨人地址,收貨人聯系電話。
DU_INV_倉庫管理超級用戶->物料->主組織。得到商品名稱和描述。可以得到OE_ORDER_LINES_V,分解此view,有一個table( MTL_SYSTEM_ITEMS_B)中有字段INVENTORY_ITEM_ID。
超級報價經理中可以得到歷史記錄view aso_pvt_quote_headers_ui_v(aso_quote_headers_all)。操作菜單-幫助->檢查,SYSTEM的LAST_QUERY得到ASO_PVT_QUOTE_LINES_UI_V。其中的字段INVENTORY_ITEM_ID。
這樣通過INVENTORY_ITEM_ID就可以實現商品描述的查詢,例如:
select DESCRIPTION
from inv.mtl_system_items_b t
WHERE INVENTORY_ITEM_ID =
(SELECT INVENTORY_ITEM_ID
FROM ASO_PVT_QUOTE_LINES_UI_V
WHERE (QUOTE_HEADER_ID = 392))
剛剛檢查合同打印頁,發現還有四個地方也是需要SQL的,客戶公司名稱,客戶公司地址,客戶公司電話,客戶公司傳真還有聯系人。
客戶公司關系比較復雜,從"DU_OM_客戶管理"入手。
得到SQL的內容比較復雜,需要一個個的排查。AR_CONTACTS_V ,HZ_CUSTOMER_PARTY_FIND_V,ar_contacts_v,HZ_CUSTOMER_PARTY_FIND_V,ar_phones_v。明天繼續.........
查找幾個關鍵字段,連接客戶公司名稱,電話,地址,聯系人。
剛剛仔細分析了一下ASO_PVT_QUOTE_LINES_UI_V好像沒有看到什么關于客戶的聯系的關鍵字段。
從銷售報價經理這個模塊是找不到什么關于客戶的信息。現在換一下,從銷售員那邊找一次
銷售員這邊沒有找到與訂單相符的KEY,可能是訂單與客戶資料之間還有其他的表或者視圖關聯,先要通過它們才能將這兩者關聯起來。
AR_CONTACTS中有用的字段,contact_id,customer_id,address_id.
account_name也許是個有用的字段。
hz_customer_party_find_v中的party_id和aso_quote_headers_all中的party_id關聯。
現在可以通過hz_customer_party_find_v查詢客戶公司的名稱,地址。
例如:select customer_name, address1
from hz_customer_party_find_v t
where party_id = 84319
結果是
1 istore測試客戶公司 廣州正道科技-廣州正道測試客戶公司-24706 廣州市天河區五山路金山大廈
現在還有聯系人,電話,傳真,收貨人,收貨人聯系電話,收貨人地址。
下個星期繼續.............
今天接著上周的活繼續來
分析了OE_ORDER_HEADERS_V,得到了party_id的外鍵連接。
hz_party_sites中的party_id=84319可以得到party_site_id = 48505。
ar.hz_cust_site_uses_all中得到site_use_id=25091,cust_acct_site_id= 8172,cust_account_id = 50152.
ar.hz_parties通過party_id可以得到客戶公司名字,地址,電話,聯系人,郵件聯系等。
另外,ar_phone_v 中的owner_table_id對party_id對應。
從ar_contact_v入手,得到address_id是cust_acct_site_id的別名,
customer_id是cust_account_id的別名,
contact_id是cust_account_role_id的別名。
對應關系表ar.hz_cust_account_roles。
現在開始收貨信息的查找。
不過似乎這個有點混亂。
OE_ORDER_LINES_V查到收貨人信息。
從"DU_OM_銷售訂單超級用戶"進入"訂單管理"
查看訂單編號是3020700029的信息。"行項目"中可以看到收貨人相關信息。
得到幾個關鍵字段,SHIP_TO_CONTACT_ID (98595),地址信息可以在hz_locations中查到。例如"測試地址1"。
收貨人和聯系人信息都是在同一張表存儲,所以要區分他們
新方案:
從訂單入手,新開一張訂單,修改收貨人和客戶聯系人資料,空都填滿。
得到報價編號 376
進入后臺管理程序進"報價銷售經理"得到訂單編號,再換到"DU_OM_銷售訂單超級用戶"進入"訂單管理",查找收貨人信息。
得到假定人的信息。
key:party_id
hz_parties可查找收貨人信息
例如:select * from hz_parties where party_id = 107357
今天是3月12日,基本上要查詢的字段都可以查到,現在可以把它們拼接起來測試。
從aso_quote_headers_all中的invoice_to_cust_party_id等同ar.hz_parties的party_id。
這樣就可以查出所有訂單相關的信息。
連接商品代碼,描述,數量,單價,合計。
select distinct msib.segment1,msib.description,apqlv.quantity,apqlv.line_quote_price,apqlv.line_extended_price
from inv.mtl_system_items_b msib
left join aso_pvt_quote_lines_ui_v apqlv on msib.INVENTORY_ITEM_ID =apqlv.inventory_item_id
where apqlv.quote_header_id = 419
收貨人,收貨人電話,收貨人地址。
select person_last_name||person_first_name as name,
primary_phone_area_code||'-'||primary_phone_number||'-'||primary_phone_extension as phone,county||city||address1||address2 as address
from ar.hz_parties where party_id = (select invoice_to_cust_party_id from aso.aso_quote_headers_all where quote_header_id = 419)
但是在jdbc1.jsp中報錯。
這里要注意的左右連接的問題。另外,收貨人和客戶聯系人信息有點混亂,明天的工作要區分兩者,另外查明jsp內不能通過編譯的原因。
收貨人和客戶信息都可以在hz_parties中可以看到:
select * from ar.hz_parties t
where party_id = 84319 --聯系人
select * from ar.hz_parties t
where party_id =107359 --收貨人
如何得到收貨人的party_id?以107359為例,回溯一次。aso_quote_headers_all沒有相關信息。
用時間降序的方式查詢OE_ORDER_LINES_V。得到SHIP_TO_ORG_ID(收貨方) 25224,INVOICE_TO_ORG_ID(收單方) 25225。
大概整理一下流程,從開單到發運。
客戶訂購商品并登記完收貨人信息,提交報價,系統處理確認訂單有效,訂單發出,收貨人收貨。
系統處理流程:得到報價編號,生成訂單編號,訂單信息打印確認。
程序處理流程:得到報價編號quote_header_id,查詢得到帶合同訂單編號,根據訂單中的一些字段查詢出客戶聯系人信息,商品信息和收貨人信息。由客戶聯系人信息進一步得到客戶聯系人,客戶聯系電話,客戶聯系地址還有客戶聯系傳真。由商品信息得到商品的項目編號,商品描述,商品的訂購數量,單價,合計金額。由收貨人信息可以得到收貨人名字,收貨地址,收貨人電話。
其中一共涉及到幾個view,從銷售報價經理的報價可以得到aso_pvt_quote_headers_ui_v,ASO_PVT_QUOTE_LINES_UI_V
從DU_OM_銷售訂單超級用戶"進入"訂單管理"可以得到OE_ORDER_LINES_V,OE_ORDER_HEADERS_V
從DU_OM客戶管理進入"客戶管理"可以查詢到客戶的詳細資料,這里得到AR_CONTACTS_V,AR_ADDRESSES_V 和AR_PHONES_V
收貨方,訂單關系
收單方,客戶管理。
結合后臺測試,查詢訂單編號對應的報價編號,ORDER_ID就是對應訂單的HEADER_ID。這樣就有了報價到訂單的關聯。
Technorati : 工作,日志
posted on 2008-03-06 11:17
湘江夜游神 閱讀(544)
評論(0) 編輯 收藏