(11-08-21, 03:50 PM)minhvu410 Đã viết: thực hành giải quyết bài toán thì đi ngược từ dưới lên, tức là đi từ 1 cái output cụ thể (và cần thiết nhất) theo nhu cầu cuối, đi ngược trở lên
Đây là nguyên tắt cho tất cả mọi người chứ không là người mới người cũ gì cả. Giống như hành trình phá án của công an, yêu cầu là tìm thủ phạm. bạn phải đi ngược từ các bằng chứng hiện trường đi ngược lên. Đây gọi là phân tích ngược.
Tôi không biết các yêu cầu của phần mềm của bạn nhưng đây là 1 ví dụ:
Tất nhiên phần mềm trên không chỉ có Biên lai - phiếu, và trong Biên lai - phiếu tôi chỉ lấy 1 thứ là phiếu nhập. Tất nhiên xong phiếu nhập sẽ tới phiếu khác, xong các phiếu sẽ tới các báo cáo khác... bla, bla...
Các khung màu nâu chỉ dữ liệu đơn vị sử dụng phần mềm cũng có thể dùng label để xử lý, nhưng nếu tạo hẳn 1 table sẽ dễ dàng hơn khi thay đổi địa chỉ, điện thoại chẳng hạn.
Các khung màu xanh dương rõ ràng là form chính có resource là table chính - table phát sinh vì dữ liệu của nó có ngày/số chứng từ, ngày/số phiếu nhập, đơn vị bán hàng (đây cũng là các field của table này)
Khung màu tím chính là subform có số liệu chi tiết của hàng hoá, kho...
Khung màu đỏ là các số liệu hạch toán tài khoản là 1 subform khác. Tất nhiên, nếu không cần thì bỏ qua nó.
Giống như vậy, hàng chữ ký cuối cùng có thể đưa vào các field tên họ của các người ký để in cho đẹp còn nếu sử dụng mộc tên thì không cần.
Ngoài ra cùng phải có 1 cái mã ID nào đó để liên kết table chính và các subtable. Rồi phải có 1 function để biên dịch số tiền ra bằng chữ.
Subtable số liệu của hàng hoá có tên hàng hóa -> cần phải có table Danh sách hàng hóa, sub table tài khoản có têntài khoản -> cần phải có table danh sách tài khoản.
Nếu có nhiều kho thì trên chi tiết hàng hóa phải có field tên kho cho từng record -> phải có table danh sách kho quản lý tên kho.
Có nhập thì có xuất, 2 phát sinh này hoàn toàn giống nhau trừ nghiệp vụ -> thêm field nhập/xuất để quản lý record.
có nhập/xuất ở table phát sinh chỉ cần xử lý thêm field tồn cho sub table chi tiết hàng hóa: nhập -> tồn = + số lượng, xuất -> tồn = - số lượng. Sau này tạo query chỉ cần sum 1 phát̀ ra tồn số lượng.
Xong trường hợp nhập/xuất xử lý đến trường hợp khác - ví dụ thu/chi, Xong biên lai-phiếu chuyển sang các báo cáo khác. số liệu các field nào đã có nằm trong table nào. Cần thiết tạo 1 table mới để chứa field dữ liệu hay nhét field đó vào table nào thì hợp lý hơn
Để phân tích OK cần phải mở 1 file word hay lấy quyển tập ra gạch từng đầu dòng 1, xem xét xử lý từng cái cho hợp lý. chứ không nên mở ngay field access tạo tùm lum mà không table nào ra table nào. Chúc bạn thành công