葉文
摘 要:工資報表分為個人工資單,各個部門的工資表,各個工資款項的總和計。
關鍵詞:工資軟件
個人工資單,即每個人的工資條,它有二個項目,一個項目是工資獎金,另一個項目是扣除部分,工資獎金的具體名目為:基本工資、職務工資、崗位工資、津貼一、津貼二、津貼三、電話補貼、住房補貼、夜班、加班、月獎、其它一、其它二、其它三、其它四、其它五、其它六、應發工資,扣除部分的具體名目為水電費、房租、公積金、會費、醫療、失業保險、養老金、應繳稅,扣除一、扣除二、扣除三、扣除四、扣除五、實發工資。其中,應發工資為工資獎金各個款項的累加,實發工資為應發工資減去扣除部分。
各個部門的工資表,一個單位由若干個部門構成,一個部門由若干人員組成,各個部門的工資單從此而產生,那么,部門一的工資表為:序號1,姓名1,月份,部門名稱,基本工資、職務工資、崗位工資、津貼一、津貼二、津貼三、電話補貼、住房補貼、夜班、加班、月獎、其它一、其它二、其它三、其它四、其它五、其它六、應發工資、水電費、房租、公積金、會費、醫療、失業保險、養老金、應繳稅,扣除一、扣除二、扣除三、扣除四、扣除五、實發工資。序號2,姓名2,月份,部門名稱,基本工資、職務工資、崗位工資、津貼一、津貼二、津貼三、電話補貼、住房補貼、夜班、加班、月獎、其它一、其它二、其它三、其它四、其它五、其它六、應發工資、水電費、房租、公積金、會費、醫療、失業保險、養老金、應繳稅,扣除一、扣除二、扣除三、扣除四、扣除五、實發工資……。部門一的累計:基本工資、職務工資、崗位工資、津貼一、津貼二、津貼三、電話補貼、住房補貼、夜班、加班、月獎、其它一、其它二、其它三、其它四、其它五、其它六、應發工資、水電費、房租、公積金、會費、醫療、失業保險、養老金、應繳稅,扣除一、扣除二、扣除三、扣除四、扣除五、實發工資。其中累計的款項位數是個人工資單的10倍數。由此類推,部門二、部門三、部門四的工資表。
各個工資款項的總和計,首先對各個部門的工資款項進行和計,產生部門統計表,然后對部門統計表產生總的統計表。
此軟件系統應有三個數據庫,一個數據庫是部門數據庫(a1.dbf),另一個是個人信息數據庫(a2.dbf),還有一個是存放各字段名的數據庫(a3.dbf)。
部門數據庫的作用是使用軟件時更加方便快捷,個人數據庫的作用是方便的打印工資單,存放各字段名的數據庫的作用是任意修改字段名稱,或者是刪除某些個工資單的字段名,使程序更具有通用性、實用性。
部門數據庫(a1.dbf)在程序中具體描述為:序號:數字型、2位,部門名稱:字符型、8位。
個人信息數據庫(a2.dbf)在程序中具體描述為:
姓名:字符型、6位:部門名稱:字符型、8位,基本工資:整數型、4位(千元),職務工資:整數型、4位,崗位工資:整數型、4位,津貼一:整數型、4位,津貼二:整數型、4位,津貼三:整數型、4位,電話補貼:整數型、4位,住房補貼:整數型、4位,夜班:整數型、4位,加班:整數型、4位,月獎:整數型、4位,其它一:整數型、4位,其它二:整數型、4位,其它三:整數型、4位,其它四:整數型、4位,其它五:整數型、4位,其它六:整數型、4位,應發工資:整數型、5位,水電費:6位、小數點1位,房租:整數型、4位,公積金:整數型、4位,會費:整數型、4位,醫療:整數型、4位,失業保險:整數型、4位,養老金:整數型、4位,應繳稅:整數型、4位,扣除一:整數型、4位,扣除二:整數型、4位,扣除三:整數型、4位,扣除四:整數型、4位,扣除五:整數型、4位,實發工資:整數型、5位。
存放各字段名的數據庫(a3.dbf)在程序中具體描述為:
基本工資:字符型、8個字符,職務工資:字符型、8個字符,崗位工資:字符型、8個字符,津貼一:字符型、6個字符,津貼二:字符型、6個字符,津貼三:字符型、6個字符,電話補貼:字符型、8個字符,住房補貼:字符型、8個字符,夜班:字符型、4個字符,加班:字符型、4個字符,月獎:字符型、4個字符,其它一:字符型、6個字符,其它二:字符型、6個字符,其它三:字符型、6個字符,其它四:字符型、6個字符,其它五:字符型、6個字符,其它六:字符型、6個字符,應發工資:字符型、8個字符,水電費:字符型、6個字符,房租:字符型、4個字符,公積金:字符型、6個字符,會費:字符型、4個字符,醫療:字符型、4個字符,失業保險:字符型、8個字符,養老金:字符型、6個字符,應繳稅:字符型、6個字符,扣除一:字符型、6個字符,扣除二:字符型、6個字符,扣除三:字符型、6個字符,扣除四:字符型、6個字符,扣除五:字符型、6個字符,實發工資:字符型、8個字符。
依次對上述數據庫建立A1.dbf、a2.dbf、a3.dbf。
A1.DBF有序號(數字型、2位)、部門名稱(字符型、8個字符)。
A2.DBF有姓名(字符型、6位),部門名稱(字符型、8位),字段名A1對應基本工資(整數型、4位),A2對應職務工資(整數型、4位),A3至A31對應上述(a2.dbf)字段,A32對應實發工資(實數型、7位,小數點1位)。
A3.DBF字段名B1對應基本工資(字符型、8個字符),B2對應職務工資(字符型、8個字符),B3對應崗位工資(字符型、8個字符),B4至B30對應上述(a3.dbf)字段,B31對應扣除五(字符型、6個字符),B32對應實發工資(字符型、8個字符)。
建立完數據庫后,就要進行編寫工資軟件,編寫軟件的模塊有:對數據庫A1、A2的記錄的添加、修改、刪除,對數據庫A3的記錄的修改,打印工資單(打印某個部門的工資單,打印所有的工資單,統計報表)等等。
程序處理:SELE 1 USE A1 SELE 2USE A2 SELE3USE A3
1、對數據庫A1記錄的添加: 2、對數據庫A1記錄的改寫:
SELE1 SELE1
APPEN BLANKGO TOP
@10,10 SAY “序號” GET 序號DO WHIL .NOT. EOF( )
@15,10 SAY “部門名稱” GET 部門名稱@10,10 SAY “序號” GET 序號
READ @15,10 SAY “部門名稱” GET 部門名稱
READ
SKIP
ENDDO
3、對數據庫A1記錄的刪除:指定某條記錄確定刪除后,用DELE、PACK 刪除。
用上述方法,對數據庫A2(所有人員)的記錄添加、修改、刪除。數據庫A3只有一條記錄,能夠對工資款項字段名進行修改,或者如果要刪除某個工資款項(除應發工資外),用空格替代,再用32個全局變量(C1至C32)依次存放數據庫A3的字段名變量的值,打開數據庫A2,用全局變量(C1至C32)顯示工資款項(請注意工資款項的名稱已改變,是根據自己單位的具體情況而改變的)。
用判斷語句分別對C1至C32的值判斷它是否為空,當工資款項的名稱C12為空格時,用語句REPL ALL A12 WITH 0 清零,把所有空值變量對應的值都清零,用REPL ALL A18 WITHA1 + A2+ A3 + A4 + A5+ A6 + A7+ A8+A9+A10+A11+A12+A13+A14+A15+A16+A17計算應發工資,清零的變量加任何數其值不變。
用REPLALL A32 WITHA18 - A19 - A20 - A21 - A22- A23-A24 - A25 - A26 - A27- A28- A29- A30 - A31計算實發工資。
當某工資款項C1至C32的值為空格時,數據庫A2的記錄添加、修改、刪除的操作,都不顯示此工資款項,打印工資單時,也不打印此工資款項。打印工資單,或者顯示工資款項時,都使用全局變量C1至C32用來替代原工資款項,這樣編制軟件的難度要加大很多。打印工資表單時,用制表符和變量組合成表格。
當你用此種方法編制完工資軟件后,一個高質量的軟件就會出現。此工資軟件的工資款項的名稱都可以變通、修改,或者可以刪除,此軟件可以長年使用,工資表單可寬可榨,工資單款項名稱可以變化無窮。