II. XÂY DỰNG CHƯƠNG TRÌNH
1. Chứng từ và chứng từ chi tiết
+ Dùng để nhập số liệu trong quá trình hạch tốn
a. Chứng từ :
+ Khĩa chứng từ (KHOACT) : Đây là khĩa chính của bảng , chỉ dùng để liên kết.
- Kiếu dữ liệu: Autonumber( Bảng chứng từ)
+ Ngày chứng từ (NGAYCT): Dùng để ghi ngày thực tế phát sinh chứng từ.
- Kiểu dữ liệu: Date/Time
+ Ngày hạch tốn (NGAYHT): Dùng để ghi ngày làm cơng tác hạch tốn
- Kiểu dữ liệu: Date/Time
+ MACT: Mã chứng từ (phiếu thu, phiếu chi, UNC, GBN,GBC) - Kiểu dữ liệu: Text
+ SOCT : Số chứng từ lưu trữ số chứng từ được lưu trên chứng từ gốc làm căn cứ để đối chiếu.
- Kiểu dữ liệu: Text
+ ONGBA: Họ và tên người liên quan đến chứng từ - Kiểu dữ liệu: Text
+ HDTC: Hĩa đơn tài chính - Kiểu dữ liệu : Text
+ MATHUE: đánh dấu loại thuế - Kiếu dữ liệu : Text
+ Khĩa chứng từ (KHOACT): Chỉ dùng để liên kết - Kiểu dữ liệu: Number
+ TKNO: Tài khoản nợ:định khoản của chứng từ chi tiết, phải cĩ trong danh mục tài khoản.
- Kiểu dữ liệu: Text
+ TKCO: Tài khoản cĩ Tuơng tự như tài khoản nợ. - Kiểu dữ liệu:Text
+ SOTIEN: Số tiền giá trị của từng dịng chứng từ - Kiểu dữ liệu: Number
+ MACNNO: Mã cơng nợ nợ: Đối với các chứng từ chi tiết cơng nợ cần chi tiết đối tượng cơng nợ.
- Kiểu dữ liệu: Text
+ MACNCO: Mã cơng nợ cĩ: Tương tự như mã cơng nợ nợ - Kiểu dữ liệu: Text
+ DIENGIAI: Nội dung của từng dịng chứng từ - Kiểu dữ liệu: Text
2.Hạch tốn tiền mặt (TK:111):
2.1. Báo cáo quỹ tiền mặt:
+ Thao tác dữ liệu:
- Tại Modul khai báo biến N1, N2
N1 : Là thời điểm đầu của chu kỳ hạch tốn N2 : Là thời điểm cuối của chu kỳ hạc tốn.
Option compare database Option Explicit Public N1, N2 Public Funtion fn1() fn1() = #1/10/2005# (N1) End Funtion Public Funtion fn1() fn2() = #1/31/2005# (N2) End Funtion
Vào Insert\Procedure\nhập vào tên thủ tuc\OK. +Tại Query ta tạo các query;
- qSDTMNO:
- Nguồn: Dah mục tài khoản
-Đưa trường SDNO, kích nút ( sau đĩ chọn hàm sum, đổi tên truờng thành TONDK.
-Đặt điều kiện MATK: Like “111*”,tại dịng total chọn Where. Tạo qCTTH
- Nguồn :chứng từ và chứng từ chi tiết - Đưa tất cả các trường vào lưới thiết kế Tạo qPSTMNON0N1:
- Nguồn: qCTTH
- Kích nút ( , đưa trường SOTIEN , chọn hàm Sum, đổi tên là THU - Đặt điều kiện: + MACT: PT
+ TKNO: LIKE“111*” + NGAYCT: <fn1()
Tạo qPSTMCON0N1 - Nguồn: qCTTH
- Kích nút ( , đưa trường SOTIEN , chọn hàm Sum, đổi tên là CHI - Đặt điều kiện: + MACT: PC
+ TKCO: Like “111*”, NGAYCT: <fn1() Tạo qSDTMN1:
- Nguồn: qSDTMN1, qPSTMNON0N1,qPSTMCON0N1 - Tạo thêm trường TONCK theo cơng thức:
TONCK: nz([tondk]) + nz([thu]) – nz([chi]) Tạo qCHITIETPSTMN1N2
- Nguồn : Qctth
- Đưa các trường: NGAYCT, SOCT, DIENGIAI vào lưới thiết kế. - Đưa trường MACT, đặt điều kiện PT hoặc PC
- Tại trường NGAYCT:>=fn1() and <=fn2() - ĐưaTKNO, đặt điiều kiện Like”111*” - Đưa TKCO, đặt điều kiện Like”111*” - Tính trường TKDU theo cơng thức:
TKDU:iif([tkno] like”111*”,[tkco],[tkno]) - Tính trường THU theo cơng thức:
THU: iif([tkno] like”111*”,[sotien],0) - Tính trường CHI theo cơng thức:
CHI: iif([tkco] like”111*”,[sotien],0) qTONGPSN1N2
- Nguồn: qCHITIETPSTMN1N2 - Kích nút (
- Đưa trường THU , chọn hàm Sum, đổi tên là TONGTHU - Đưa trường CHI , chọn hàm Sum, đổi tên là TONGCHI qSDTMN2
- Nguồn: qSDTMN1 và qTONGPSN1N2 - Đưa trường TONCK, đổi tên là TONDK - Tính thêm trường TONCK theo cơng thức:
TONCK: nz([tondk]) + nz([tongthu]) – nz([tongchi]) + Tại đối tượng Report ta tạo báo cáo quỹ:
- Nguồn: qCHITIETPSTMN1N2
- Vẽ một text box Từ ngày, nhập cơng thức tại thuộc tính Control Source: = fn1()
- Vẽ một text box Đến ngày, nhập cơng thức tại thuộc tính Control Source: = fn2()
- Vẽ một text box Tồn đầu kỳ, nhập cơng thức tại thuộc tính Control Source: = Dlookup(“[tonck]”,”qSDTMN1”)
- Vẽ một text box Tồn cuối kỳ, nhập cơng thức tại thuộc tính Control Source: = Dlookup(“[tonck]”,”qSDTMN2”)
- Vẽ một text box Tổng thu, nhập cơng thức tại thuộc tính Control Source: = Dlookup(“[tongthu]”,”qTONGPSN1N2”)
- Vẽ một text box Tổng chi, nhập cơng thức tại thuộc tính Control Source: = Dlookup(“[tongchi]”,”qTONGPSN1N2”)
- Trang trí cho báo cáo.
2.2 Bảng kê Nợ, bảng kê Cĩ:
a. Bảng kê Nợ TK 111-Cĩ các tài khoản liên quan:
+ Thao tác dữ liệu: Tạo qLOCNO111:
- Nguồn : SOCT, NGAYCT, DIENGIAI, SOTIEN, TKNO,TKCO,MACT
- Đặt điều kiện: NGAYCT:>=fn1() and <=fn2() TKNO: Like “111*” MACT: PT Tạo qBKNO111: - Dạng :CrrossTab Query - Nguồn: qLOCNO111 - Tiêu đề hàng: SOCT,NGAYCT,DIENGAI - Tiêu đề cột: TKCO
- Trường cần thống kê :SOTIEN, hàm thống kê sum Tạo Report rBKNO111
- Nguồn: qBKNO111
- Tiêu đề cho bảng kê là: Chứng từ ghi Nợ TK 111- ghi cĩ các tài khoản liên quan.
b. Bảng kê cĩ TK 111- Nợ các tài khoản liên quan:
+ Thao tác dữ liệu: - Tương tự bảng kê nợ
- Tạo qLOCCO111 với điều kiện + TKCO: like “111*” + NGAYCT: >=fn1() and <=fn2() +MACT: PC 2.3 Chứng từ ghi sổ 01 Và 02: a. Chứng từ ghi sổ số 01: Tạo qCTGSNO111
- Nguồn: qLOCNO111, Danh mục tài khoản - Kết nối mối quan hệ giữa MATK và TKCO - Kích nút ( Tạo trường SOCT:”01”
- Tạo trường NGAYCT:#31/01/2005#
- Đưa trường TKNO, đổi tên thành “NOù” - Đưa trường TKCO, đổi tên thành “CO”
- Đưa trường SOTIEN, đổi tên sotien chọn hàm Sum. Tao rCTGSNO111:
- Nguồn: qCTGSNO111
- Tạo thêm ngày thág năm , là ngày tháng tạo chứng tưg ghi sổ - Tạo text box ngày tháng năm:
= “Ngày” & day ([NGAYCT]) & “tháng” & month([NGAYCT]) & “năm” & year ([NGAYCT]).
b. Chứng từ ghi sổ số 02:
+ Thao tác dữ liệu:
- Nguồn: qLOCCO111,danh mục tài khoản - Tương tự chứng từ ghi sổ số 01
2.4. Sổ Cái:
+ Thao tác dữ liệu: Tạo qSOCAI01
- Nguồn: qCTGSNO111
- Đưa trường SOCT, NGAYCT vào lưới thiết kế. - Đưa trường TRICHYEU đổi tên thành DIENGIAI - Đưa trường CO đổi thành TKDU.
- Đưa trường SOTIEN đổi tên thành SOTIENNO,tính thêm trường SOTIENCO theo cơng thức: SOTIENCO:0
Tạo qSOCAI02
- Nguồn: qCTGSCO111
- Đưa trường SOCT, NGAYCT vào lưới thiết kế. - Đưa trường TRICHYEU đổi tên thành DIENGIAI - Đưa trường NO,đổi thành TKDU.
- Tính SOTIENNO theo cơng thức : SOTIENNO:0 - Đưa trường SOTIEN, đổi tên thành SOTIENCO. Tạo q SOCAI
- Copy câu lệnh SQL của qSOCAI01,qSOCAI02.
- Thêm vào giữa hai câu lệnh cặp từ khĩa : UNION... DISTINCT Tạo rSOCAI : lấy nguồn từ qSOCAI và trang trí cho sổ cái.