金蝶K3單據增加單據下推關聯關係(後臺調整欄位下推邏輯)
阿新 • • 發佈:2018-12-22
現狀:BOS裡邊銷售出庫單增加了一個單據欄位,引用的是BOS基礎資料裡邊的資料,在BOS裡邊是沒有設定單據下推攜帶關聯的地方,但是在單據自定義裡邊又選不到BOS基礎資料。
需求:增加的這個欄位需要引用繼承上游銷售訂單的同名欄位資料
操作方法:
- 使用BOS在銷售出庫單增加該欄位,資料來源為基礎資料裡邊BOS基礎資料裡邊的ABC分類維護,設定完畢後直接儲存;
- 以同樣的方法在BOS裡邊設定銷售出庫單的欄位;
- 使用單據自定義開啟銷售出庫單,可以發現選不到BOS裡邊的資料;
- 將欄位資料來源改為其他基礎資料,比如改成備註,只要上游單據能夠出現攜帶資料即可,選好以後儲存;
- 重新開啟BOS銷售出庫單,會發現變為空了,重新選擇一下資料來源類別,然後儲存即可;
- 改造資料庫-對比資料:
---對比新增的2列資料是否有差異,如有差異,按照上游欄位進行調整,記錄下單據標識碼和新增列名 select * from ICTemplateentry where (fid='s01' and FCtlIndex=66) or (fid='b01' and FCtlIndex=73)
-
改造資料庫-查詢下推關聯表記錄;
select FColName,FName,FAction from ICSelbills where FID='b01' and FTableName='SEorderentry' and FDstCtlField='FEntrySelfB0173'
-
改造資料庫,更新下推關聯資料攜帶欄位與對應取值;
--更新下推關聯表資料 update ICSelbills set FColName='FEntrySelfS01660',FName='FEntrySelfS0166',FAction='(SELECT FID FROM ICDevGroupInfo WHERE FID = u1.FEntrySelfS0166)' where FID='b01' and FTableName='SEorderentry' and FDstCtlField='FEntrySelfB0173'and FDK=0 update ICSelbills set FColName='FEntrySelfS01661',FName='FEntrySelfS0166',FAction='(SELECT FName FROM ICDevGroupInfo WHERE FID = u1.FEntrySelfS0166)' where FID='b01' and FTableName='SEorderentry' and FDstCtlField='FEntrySelfB0173'and FDK=1 update ICSelbills set FColName='FEntrySelfS01662',FName='FEntrySelfS0166',FAction='(SELECT FNumber FROM ICDevGroupInfo WHERE FID = u1.FEntrySelfS0166)' where FID='b01' and FTableName='SEorderentry' and FDstCtlField='FEntrySelfB0173'and FDK=2
- 新增一張銷售訂單,測試下新增欄位是否能夠選到值;
- 儲存銷售訂單,下推銷售出庫單,驗證下是否能夠正常攜帶下去;
OVER