-
Trừ hai bảng dữ liệu
buida > 04-11-22, 09:57 AM
QUẢN LÍ KHO HÀNG
Kính chào quý vị chư huynh
Em có một kho hàng với các trường
KhoHang(idHang, TenHang, KhoiLuong, NguonGoc,…)
NguoiMuon(idNguoiMuon, Ten, NamSinh, DiaChi,…)
PhieuMuon(idPhieuMuon, idHang, idNguoiMuon, NgayMuon, GhiChu,…)
Em có điều muốn hỏi là
Làm sao sau khi Hàng hoá có người mượn rồi, thì tạo 1 bảng HangTonKho còn trong kho ạ.
Đại khái là làm sao lấy bảng KhoHang trừ đi bảng PhieuMuon để tạo ra bảng HangTonKho.
Quý vị có thể giải giúp em, hoặc gửi em vài bài liên quan, vì em tìm hoài mà không ra với các từ khoá như là: trừ 2 bảng, tồn kho…
Em chân thành cảm ơn ạ. -
RE: Trừ hai bảng dữ liệu
tranthanhan1962 > 04-11-22, 04:59 PM
Bạn phải có một table phát sinh hàng hóa và Table Chi tiết phát sinh hàng hóa
Table phát sinh hàng hóa: PhatSinhHangHoa([Số phiếu],[Ngày phát sinh],[Người mượn/trả],[kiểu phát sinh:Mượn/trả],[ghi chú])
Table Chi tiết phát sinh hàng hóa: ChiTietPhatSinh([Số phiếu],[Tên hàng],[Số lượng])
Quan hệ: PhatSinhHangHoa[Số phiếu] <=>ChiTietPhatSinh[Số phiếu]
Query 1: PhatSinhHangHoa([Số phiếu],[Ngày phát sinh],[Người mượn/trả],[kiểu phát sinh:Mượn/trả],[ghi chú]),ChiTietPhatSinh([Tên hàng],[Số lượng]), (Tồn kho: IIf(PhatSinhHangHoa([kiểu phát sinh:Mượn/trả]=mượn; -ChiTietPhatSinh([Số lượng]),ChiTietPhatSinh([Số lượng])))
*Nếu phát sinh = mượn => sẽ giảm kho => tồn kho = - số lượng, khi trả tồn kho sẽ = số lượng.
Để tính số lượng tồn kho tạo total Query 2 từ Query 1
Query 2([Tên hàng],[Tồn kho]) / Total: [Tên hàng]=Group By ; [Tồn kho]=Sum
Nếu cần quản lý công nợ của người mượn/trả thêm field [Người mượn/trả]/Total: Group By
Kết quả giá trị field tồn kho của query 2 chính là bảng tồn kho hoặc tồn nợ tùy theo thiết kế. Những phần như: số phiếu, ngày, năm sinh người mượn, nguồn gốc, ghi chú... không nên đưa vào query vì nó ảnh hưởng các nhóm tên hàng gây sai lệch kết quả, nếu cần sẽ lên kết vào sau để hiển thị. -
RE: Trừ hai bảng dữ liệu
buida > 07-12-22, 10:14 PM
Cháu chân thành cảm ơn và xin lỗi bác vì giờ này mới trả lời được ạ.
Nhờ câu trả lời của bác mà cháu biết bài của cháu quá tệ.
cháu chỉ viết một chương trình đơn giản là cửa hàng cho thuê các dụng cụ thể dục, cắm trại, và những thứ lặt vặt thôi ạ.
cho nên:
mỗi một mặt hàng số lượng chỉ có 1 và chỉ có 1 mã số. mượn rồi thì tương lai họ sẽ trả
do đó
cháu chỉ cần công thức nào đó tính được rằng: kho hàng khởi đầu trừ đi số hàng đang mượn ra kết quả là kho hàng hiện tại (tồn kho)
cháu rất xin lỗi nếu làm phiền bác và mọi người nhé. -
RE: Trừ hai bảng dữ liệu
tranthanhan1962 > 08-12-22, 01:01 AM
Cái này dễ mà:
Bạn tạo 1 table nhập liệu có các Field: Ngày [Ngay] (là ngày phát sinh: mua; mượn; trả); Đối tượng [DoiTuong](Người bán; Người mượn; người trả); Mã dụng cụ [Madungcu](Mỗi dụng cụ sẽ có 1 mã); Số lượng [SoLuong](Số lượng dụng cụ trùng mã nếu có); Nghiệp vụ [Nghiepvu](cái này dùng kiểu số luôn mua = trả =1, mượn = -1)
Cứ thế bạn nhập dữ liệu theo từng phát sinh:
Tính tồn kho thì tạo query Query TonKho1 : Madungcu, SoLuong, TonKho: SoLuong*Nghiepvu (Select Query)
Query TonKho2 : TonKho1.Madungcu <Group By>, TonKho1.TonKho <Sum> (Total Query: Đây là Kết quả tồn kho)
Tính công nợ Khách hàng thì : Query TonNo1 : DoiTuong, Madungcu, SoLuong, TonKho: SoLuong*Nghiepvu (Select Query)
Query TonNo2 : TonNo1.DoiTuong<Group By>, TonNo1.Madungcu<Group By>, TonNo1.TonKho <Sum>(Total Query)