志翔科技有限公司後勤網

後勤等待處理訊息站,請各位成員努力消除待工區
 
首頁首頁  會員註冊會員註冊  登入登入  

分享 | 
 

 單據窗專屬函數check_winpaper_column

向下 
發表人內容
flying
Admin
avatar

文章數 : 207
注冊日期 : 2008-11-11

發表主題: 單據窗專屬函數check_winpaper_column   周二 11月 18, 2008 11:34 am

check_winpaper_column(string mcolname,long row)
此為單據窗w_top_bottom_paper 專用函數
參數: mcolname一般為單據的單號欄位,row為保留欄位,尚未用到.

用途: 新單據存檔時,找出表頭區的單據mcolname欄位值,再到dw_tab1,dw_tab21,dw_sub1-dw_sub6,找出如果有相同mcolname欄位時,以表頭區的相同欄位名稱的值成批置換之.如果不是單號主鍵,此函數不會執行.執行完後,單據窗的視窗抬頭會改成新單號.

說明: 新增單據的表頭區的單號可能在存檔前被其他人搶單存檔,造成表頭區的單號必須重新找過,可選擇讓系統自動重新賦予新單號或自行撰寫函數取新單號,系統自動取單號也會自動執行check_winpaper_column,如果是自行寫函數取單號,就必須在該函數後段執行此函數,以讓表頭區與其他明細資料區的單號一致.會選擇人工寫函數的原因,是單號的編法為雙欄位以上的判斷式,系統只支援單欄位的單號判斷.

下面為自行寫存檔函數的部分片段,碰到新稱單據的時候會被執行到
單號欄位為tranno,但取新單號函數s_get_noctrl_new(string,string)為雙欄位,當取出的新單號ls_testtranno<>原表頭區單號mtranno時,表頭區單號就換新單號,且呼叫check_winpaper_column以連帶統一其他資料視區的單號值.
....
if record_status=new! or record_status=NewModified! then
 ls_testtranno=s_get_noctrl_new("LA",mtrantype)
 if ls_testtranno<>mtranno then
  w_paper.dw_up.setitem(1,"tranno",ls_testtranno)
  w_paper.check_winpaper_column("tranno",1)
  mtranno=ls_testtranno
 end if
end if
.....

何謂單號? 單號就是單據的編號,一般的單據在上方都會編有唯一的號碼,以便查單用.例如發票單據的單號就是發票號碼.
回頂端 向下
檢視會員個人資料 http://idon.666forum.net
 
單據窗專屬函數check_winpaper_column
回頂端 
1頁(共1頁)

這個論壇的權限:無法 在這個版面回復文章
志翔科技有限公司後勤網 :: 系統主題 :: 系統架構-
前往: