目前U8大部份模塊都可以在未結轉前直接在上年度帳中錄入下年度單據,年結時系統會自動將下年度單據結轉至下年度帳中。但還有一部份模塊只能等結轉后方可錄入下年度單據,這部份主要為財務模塊,如總賬、固定資產、工資等,這些模塊平常并不一定每天都要處理數據,等年結后再處理對日常工作影響并不大。但還有些模塊不能及時進行數據處理可能對日常工作影響較大,如應收、應付模塊等。本方案主要將要解決應收應付模塊在未結轉前可錄入下年度收付款單,以實現應收應付明細賬及余額表的查詢,以滿足數據實時查詢的需要。
本方案使用以下常用模塊:總賬、報表、固定資產、應收、應付、采購、銷售、庫存、存貨,本方案將從2009年度結轉為2010年度。
總賬、固定資產、存貨模塊未結轉前無法處理下年度數據,未結轉前2010年1月份的數據只能暫停處理,待結轉后再處理。
一、購銷存處理
采購、銷售、庫存模塊可以在上年度帳中錄入下年度單據,只需在錄入單據時將單據日期修改為2010年1月份的日期即可,采購發票不能進行結算,要等結轉后到新年度帳中進行結算,結轉后登錄到新年度帳中進手工或自動結算。其他的下年度單據都與上年度單據操作完全一樣,包括銷售發票可以復核,下年度出入庫單據可以審核,可錄入下年度組裝單、拆卸單、調撥單、轉換單等。
默認情況下,單據增加時單據日期為登錄日期,因未年結登錄日期只能錄入到2009-12-31,所以單據的默認日期也是2009-12-31日,按以下方法可以實現銷售、庫存大部份單據在增加時默認日期為當天日歷日期,原理是在單據模板中將日期默認值設為系統日期。
2010年1月1日在用友數據庫服務器上進行如下設置
(1)我的電腦à右鍵à管理à服務,在服務中將SQL代理服務SQLSERVERAGENT啟動,并設為自動啟動。
(2)添加一個SQL作業,每天自動運行一次,將單據模板的默認日期設為系統日期。
打開SQL企業管理器—>SQL代理—>作業,
a.新建作業,輸入作業名稱“設置單據日期”
b.轉到新建步驟設置,輸入步驟名稱“1”,數據庫:選擇對應的年度帳的數據庫,命令:輸下以下兩條內容
update voucheritems_base set maxlength=10 where fieldname='ddate' and maxlength=8
update voucheritems_base set vValueDefault=convert(varchar(10),getdate(),120) where fieldname='ddate'
c. 轉到調度設置,設置每天00:01分開始執行,設置完成后點確定。
(3)以上設置完成后,打開單據進行增加時默認日期就是實際日歷了,以上設置有效單據只是庫存和銷售中的大部份單據,并不是所有,因為有些單據模板日期項的值并不是ddate,所以要全部修改比較麻煩,考慮到主要的單據都可以,所以簡單處理可滿足大部份需求。
(4)準備年結時要將以上設置恢復原狀,先將SQL代理設為原先的狀態,再刪除SQL作業,然后在查詢分析器中執行
update voucheritems_base set vValueDefault=null where fieldname='ddate'
將單據模板默認日期設為空值,恢復原狀后再進行年結操作,如果未恢復原狀就進行新建年度帳,則以上單據默認日期會帶到下年度中,會超成下年度單據日期不正常。
二、應收應付處理
應收應付模塊,系統不允許錄入下年度的收付款單,下年度日期的采購發票和銷售發票可以在應收應付模塊中查詢到,所以只要解決將下年度日期的收付款單錄入到系統中,即可實現暫時的應收應付帳表查詢,按以下設置進行下年度收付款單處理。
(1)分別在應收、應付的收付款單顯示模板中復制一個新的收付款單,設置模板名稱:2010年收付款單顯示模板,在“2010年收付款單顯示模板”中添加一個表頭自定義項4,顯示名稱改為“日期”(以下所指的自定義日期就是指本日期),將該自定義項日期移到原日期的位置,原日期移到別的位置,這樣2010年收付款單與原收付款單看起來并無明顯差別。注意表頭自定義項4不能被別的收付款單模板使用,否則可能引起數據錯誤。
(2)設置觸發器,讓SQL在收付款單保存和修改時自動將單據日期修改為自定義日期。
打開企業管理器,打開要操作的數據庫,選擇表Ap_CloseBill,右鍵-所有任務-管理觸發器,將頁面中的內容刪掉,再錄入下面內容
CREATE TRIGGER 修改單據日期 ON [dbo].[Ap_CloseBill]
FOR INSERT, UPDATE
AS
update Ap_CloseBill set dVouchDate=cdefine4 where cdefine4>='2009-12-01' and cdefine4<='2010-01-31' and cCheckMan is null
然后按確定退出
以上內容是將收付款單的日期,在新增或修改時將單據日期修改為自定義日期,自定義時間有效范圍取2009-12-1至2010-1-31,正常情況下自定義日期應該都是2010年1月份的,但考慮到09年12月收付款單若誤錄到2010年1月時,在修改回12月時要能起作用,所條件日期包含了 2009-12-1至2009-12-31。
(3)以上設置完成后就可錄入2010年的收付款單了,錄入方法:打開收付款單,按增加,再選一下右上角的“2010年收付款單顯示模板”,然后錄入數據,單據上有兩個日期,一個是自定義項4的日期,另一個是單據日期,自定義項日期錄入2010年1月份日期時,單據日期仍是2009年12月31日,在保存后日期就會變成跟自定義日期一樣了。
(4)在應付應付業務明細表、余額表上設置過濾方案,在過濾方案中設置按日期查詢,設置開始和結束日期,按日期查詢時必須開始和結束都錄,否則日期無效,如開始日期 2009-01-01,結束日期2010-1-31,把過濾方案設為共用方案,這樣每個用戶打開時都生效,輸入日期查詢時報表中就有包含2010年的收付款單和發票數據了。
(5)2009 年數據處理完成要結賬并結轉時,首先進行帳套數據備份,先將2010年收付款單導出,然后刪除在2009年中錄入的2010年收付款單,再刪除觸發器(方法在觸發器中,名稱選“修改單據日期”,再按刪除),待結轉后再將導出的數據導入到2010年度帳中,具體操作:
a.應收應付選項中啟用遠程應用,輸入遠程號,原先沒有的設置就錄01,原先有設置的按原先設置不用修改。
b. 分別在應收、應付模塊中打開—>其他處理—>遠程應用—>開始—>新郵件,錄入本單位信息和收件單價信息,內容隨便錄入,點確定,然后錄入過濾條件,開始日期錄入2010-01-01,將已審核、未審核等選中,檔案不需要選,再按確定,顯示出2010年的收付款單,全部選中單據,然后按導出。數據導出后要將錄入的2010年收付款單全部刪除,然后進行年結處理。
c.導出后數據文件保存在C:\WINDOWS\UfMailBox\OutBox,每次導出生成不一樣的文件名,在哪臺電腦上操作就保存在哪臺電腦上,打開該文件,將Ap_CloseBill表中的會計期間iperiod字段的值12全部改為1,再將該文件拷到C:\WINDOWS\UfMailBox\inBox中,然后再登錄到2010年度帳中,打開遠程應用,就會出現原導出的文件,選中文件后進行導入。導入成功后就可在系統中查詢到之前錄入的收付款單了,導入的收付款單全部為未審核,要再進行審核。
三、登錄日期
如果客戶端都是通過終端服務使用用友,且終端服務器和用友數據庫服務器是分開的,那么在未年結前可在終端服務器上設置WINDOWS系統日期為 2009-12-31,這樣在登錄用友時都不用去修改登錄日期,對于一般的操作人員來說,他們就跟平常操作一樣,并沒有感覺年結的存在了。Windows 系統日期使終為2009-12-31的設置方法,新建一個文本文件,錄入內容date 2009-12-31,再將該文本文件擴展名改為.bat,然后在任務計劃添加任務,在2010-01-01 00:01運行該文件,年結完成后再刪掉該任務,并把終端服務器日期修改為正常日期。