Mới đây bạn
lamvankhanh về hỏi cách tính tồn kho theo phương pháp đích danh. Thực ra đây là câu hỏi về cách tính giá vốn tồn kho. Tính tồn kho số lượng thì cực kỳ dễ, đẩy một phát query là xong. Nhưng tính giá vốn tồn kho thì không đơn giản chút nào. Có 2 nguyên tắt tính giá vốn: 1. tính giá vốn theo phương pháp bình quân gia quyền, 2.Tính giá vốn theo phương pháp xuất đích danh. Thông thường tính giá vốn tồn kho chỉ thực hiện trong báo cáo thuế, để xác định lời lỗ từ đó đóng thuế thu nhập doanh nghiệp (Cái này phải đăng ký kiểu hạch toán ngay khi đăng ký kinh doanh).
1/Tính giá vốn theo phương pháp bình quân gia quyền: đối với một ứng dụng access thì phần này tương đối phức tạp: phải sử dụng code VBA để giải quyết trình tự của một thời điểm tính tồn kho theo công thức:
Số lượng tồn đầu = Số lượng tồn cuối liền trước| Giá trị tồn đầu= Giá trị tồn cuối liền trước| Số lượng nhập trong khoảng [thời gian] | Giá trị nhập trong khoảng | Số lượng xuất trong khoảng | Giá trị xuất trong khoảng = {(Giá trị tồn đầu+ Giá trị nhập trong khoảng)/(Số lượng tồn đầu + Số lượng nhập trong khoảng)}*Số lượng xuất trong khoảng| Số lượng tồn cuối = Số lượng tồn đầu+Số lượng nhập trong khoảng-Số lượng xuất trong khoảng| Giá trị tồn cuối = Giá trị tồn đầu+Giá trị nhập trong khoảng-Giá trị xuất trong khoảng.
Đơn vị thuế sẽ lấy: Giá bán trong khoảng - Giá vốn trong khoảng = Lãi gộp sau đó sẽ trừ chi phí để tính lãi ròng và đánh thuế thu nhập doanh nghiệp. Đối với ứng dụng access sẽ phải viết code VBA để xử lý, Nhưng ưu điểm khi chỉnh sửa số liệu chỉ cần chạy code lại là xong.
2/Tính giá vốn theo phương pháp xuất đích danh: Còn gọi là nhập giá nào xuất giá đó hay nhập trước - xuất trước nhập sau - xuất sau: Với cách tính này ngay khi nhập người ta lấy giá bán - giá xuất (giá vốn) thể hiện ngay lãi gộp cho phát sinh bán ngay lúc xuất.
Trong access phương pháp này dễ xử lý hơn phương pháp 1, chỉ cần sử dụng query một cách đơn giản đem giá vốn và giá bán vào cùng một record để tính ngay lãi gộp. Khuyết điểm một loại hàng có rất nhiều giá. Ví dụ loại hàng A có giá 5.000, 10.000, 15.000, 20.000...Và tất nhiên còn tăng giá theo thời gian. Để xử lý dễ dàng buột phải tạo nhiều mã hàng theo giá vốn làm table mã hàng phình to, làm phần mềm ngày càng nặng nề. Đôi khi với một phát sinh xuất cần phải xử dụng từ 2 record trở lên (Ví dụ xuất hàng A với số lượng 500, mà hàng A giá 10.000 chỉ còn 300, hàng A giá 12.000 còn 10.000 thì phải xuất hàng A giá 10.000 =300+Hàng A giá 12.000=200 ) bù lại cách tính toán đơn giản chỉ cần một số query là xong.
*Trong demo để đơn giàn tôi sẽ dùng tên hàng + giá hàng thành mã hàng.
Demo
Để người sử dụng dễ dàng bạn
lamvankhanh cần tạo thêm một form hiển lọc tồn cuối mã hàng cho người sử dụng nắm được số lượng chính xác để xuất.
Chúc bạn thành công.