-
Xin trợ giúp code in report dựa vào checkbox
gmanhst > 29-05-16, 11:28 AM
https://drive.google.com/open?id=0B2vxVS...UxoUGQxZTA
File trên là project nhỏ mà tôi vừa làm xong. Tại phần Bán hàng, có mục in hóa đơn còn bị sai như hình minh họa sau:
Trên form tôi chỉ có 2 món hàng với tổng trị giá là 240k, khi chưa thanh toán thì ghi là số tiền đó đc xem như nợ, nợ đó sẽ được nhắc trong hóa đơn sau nếu khách chưa thanh toán.
Trên tờ hóa đơn, xin các pro trợ giúp cho cái code làm sao để nó ko nhắc số nợ đó ngay trong lần đầu mua hàng.
Hiện tôi đang tự dùng trên lỗi đó bằng cách nhập số tiền đã trả trên form để lúc in ko bị cộng dồn, sau đó cập nhật lại để ghi nợ.
Tôi có ý tưởng là tạo 1 checkbox trên form, khi check vào thì nó gán giá trị cho ô nợ cũ là 0, xem như tôi không nhắc nợ cũ. Nhưng do code còn hạn chế nên tôi vẫn chưa làm được. -
RE: Xin trợ giúp code in report dựa vào checkbox
lmthu > 29-05-16, 04:04 PM
Khi bạn lưu hóa đơn này thì dùng hàm Dcount() (đếm số lần mua của 1 KH dựa trên mã KH) để kiểm tra xem khách hàng này có mua hàng lần nào chưa?, nếu hàm Dcount trả về 1 giá trị =0 thì ta gán Textbox chứa nợ cũ bằng 0 -
RE: Xin trợ giúp code in report dựa vào checkbox
ongke0711 > 29-05-16, 04:54 PM
trong bài post trước tôi có nói với bạn phải phân tích kỹ vụ công nợ để tổ chức cơ sở dữ liệu cho hợp lý. Nó không đơn giản như bạn làm là cứ thêm cột [còn nợ] vô table hóa đơn là xong đâu. Nếu đơn giản như vậy phần mềm bán hàng đâu có bán được
.
Cái form nhập liệu bán hàng này cực kỳ quan trong và các table đi theo nó. Theo như cách bạn hiện tại bạn có làm được các nghiệp vụ sau không:
- Khách hàng muốn trả nợ hóa đơn cũ thì làm sao? Nhập ở đâu, làm sao xóa mục còn nợ trên table hóa đơn...đâu thể vô cái cột còn nợ sửa số tiền=0 là được...
- KH trả nợ cũ + trả một phần hóa đơn mới mua thì vô đâu nhập? (Đây là thực tế mua bán hằng ngày)
- In hóa đơn thì thuần túy là in hóa đơn vừa xuất (có phần trả trước, nợ còn lại của hóa đơn đó thôi). In báo cáo công nợ bao gồm nợ các hóa đơn tồn đọng.
Nói chung bạn phải lường trước các nghiệp vụ, các truy vấn có thể có rồi xem trả lời nó thông qua các table nào, tổ chức ra sao để có thể truy xuất trả lời được.
Như cái form Xem Sổ Nợ của bạn, tôi không biết nó chạy ra sao.
Nếu cứ hướng dẫn code làm như ý tưởng của bạn thì sau này còn nhiều vấn đề phát sinh nữa vì không giải quuyết cái cơ bản là CSDL. -
RE: Xin trợ giúp code in report dựa vào checkbox
gmanhst > 01-06-16, 09:46 AM
cảm ơn góp ý của bạn, đây là lần đầu tôi làm một đề tài mang tính thực tế và được sử dụng thật sự nên còn chưa nắm đc cái gì quan trọng nhất trong đề tài này. Qua những gì đc trao đổi, trợ giúp tôi cũng biết cái quan trọng nhất trong đề tài này chính là công nợ.
Nhưng do thời gian có hạn, ban ngày tôi bận rất nhiều việc, hết giờ hành chính tôi còn phải đi làm thêm, thời gian làm đề tài của tôi trung bình chỉ từ 2 tiếng (tầm 9h tới 11h khuya) nên tôi thấy ngán việc phải lập lại cả một CSDL mới.
Ở bên 2pic kia, bạn đã định hình cho tôi về một pm quản lý công nợ nhưng tôi thấy với kiến thức về code và khả năng làm việc độc lập của tôi, tôi chưa làm đc những yêu cầu đặt ra. Thời gian tôi làm đề tài thì mọi người có lẽ cũng nghỉ ngơi cả rồi, bí lối muốn đc tư vấn cũng ko có ai để hỏi.
Lý do chủ quan của tôi thôi, mong bạn thông cảm, có thể giúp tôi theo ý đã nêu trên không? Nếu đc thì rất cảm ơn bạn! -
RE: Xin trợ giúp code in report dựa vào checkbox
gmanhst > 01-06-16, 09:49 AM
Nhân tiện có thể hướng dẫn tôi cách nào có thể cho các combobox mã sau khi chọn nó hiện ra trường tên không? Trên form bán hàng, tôi chọn mã hàng thì sẽ hiện tên hàng, phần tên khách hàng tôi làm đối phó bằng cách dùng sk after update vào textbox để hiển thị tên đó. Nếu cho hiện tên ngay trên cbb mã thì hay hơn. -
RE: Xin trợ giúp code in report dựa vào checkbox
ongke0711 > 01-06-16, 10:09 AM
Hiện trường Tên trong combobox:
- Bạn vô Properties | Format.
- Mục Column count: set là 2 (lấy 2 cột trong table là Row source của combobox)
- Column width: 0",2" (0": là cho độ rộng cột thứ 1 =0" - tức là không hiển thị, cột thứ 2 rộng 2" để hiển thị trường Tên).
- Làm tương tự cho combo hàng hóa.
CSDL của bạn có 4 table, có lớn gì đâu mà ngại sửa. Nếu có sửa thì tôi thấy chỉ cần thêm 1 2 table gì đó thôi và chỉnh sửa một chút table hiện tại. Hơn nữa form xử lý của bạn cũng không có nhiều code liên quan đến table. Bước đầu là không chuẩn, sau đó phải viết code, thêm các bước để khắc phục thì càng mệt và mất thời gian hơn, tốc độ xử lý cũng bị ảnh hưởng.
Nếu bạn làm chỉ để báo cáo thì sao cũng được.. (cái này giống bác Thăng nói: các đồng chí lập dự án để chi ngân sách chứ có biết mục đích cuối cùng của dự án là gì không.....nói ngoài lề tí
)
-
RE: Xin trợ giúp code in report dựa vào checkbox
gmanhst > 01-06-16, 11:31 AM
cảm ơn bạn, tôi đã làm đc phần ccb rồi, tranh thủ chút thời gian rảnh rỗi ở cty :d
còn cái nợ, bạn có thể nói cụ thể hơn không? tôi vẫn chưa hình dung đc khâu xử lý nợ ra sao cả. như tôi làm bây giờ thì có một số bất tiện mà tôi nhận thấy như: không chính xác về việc in hóa đơn, khách hàng trả nợ cũ không thể tự động trừ vào các hóa đơn cũ,...
nếu bạn có thời gian rảnh, tôi mong bạn dành chút thời gian hướng dẫn tôi làm lại một CSDL chính xác hơn để tôi có thể làm pm của mình tốt hơn. cảm ơn bạn! -
RE: Xin trợ giúp code in report dựa vào checkbox
ongke0711 > 03-06-16, 02:41 PM
Tôi thì cũng chưa viết cái ứng dụng quản lý bán hàng nàonhưng theo cách theo dõi nợ của cái doanh nghiệp "nhỏ và nhỏ nữa" của tôi thì nó cũng đơn giản (như cái hình đính kèm). Vì không có nhiều giao dịch nên đang tạm sử dụng Excel. Tôi cũng đang làm draft draft bằng Access nhưng chưa xong
. Sẽ gửi lên cho ban tham khảo.