Quản lý kho = Excel + Access

Liên hệ QC

levanduyet

Hãy để gió cuốn đi.
Thành viên danh dự
Tham gia
30/5/06
Bài viết
1,798
Được thích
4,700
Giới tính
Nam
Chào các bạn,
Tôi xin giới thiệu với các bạn File quản lý kho đơn giản. Các bạn có thể phát triển thêm nếu muốn.
Tôi xin đính kèm file hướng dẫn, file dữ liệu và cả file Excel.

Chúc các bạn thành công.

Lê Văn Duyệt

User Name: Le Van Duyet
Pass: Le Van Duyet


Password VBA Excel: duyet@hien
From Thien:
Anh Duyệt ơi !

Nó báo không thể kết nối với cơ sở dữ liệu ! xin bạn kiểm tra lại

Xin bạn đọc hướng dẫn và tạo System DSN trước.

Lê Văn Duyệt
 

File đính kèm

  • HuongDanQLKho.rar
    774 KB · Đọc: 34,440
  • Warehouse.rar
    181.7 KB · Đọc: 20,196
  • WarehouseControllingSys.rar
    525.3 KB · Đọc: 21,311
levanduyet đã viết:
Chào các bạn,
Tôi xin giới thiệu với các bạn File quản lý kho đơn giản. Các bạn có thể phát triển thêm nếu muốn.
Tôi xin đính kèm file hướng dẫn, file dữ liệu và cả file Excel.

Chúc các bạn thành công.

Lê Văn Duyệt

Bác Duyệt đóng mã nguồn thì làm sao anh em phát triển được hô hô. Nếu Bác Duyệt đồng ý mình sẽ post mã nguồn của bác lên. Mình nghĩ trên diễn đàn anh em đừng đóng mã nguồn, chủ yếu là chia sẽ để học hỏi và phát triển.
Thân

From LeVanDuyet: Bạn nào cần thì liên hệ với mình. Tôi chỉ protect for viewing mà thôi. Không dùng kỹ thuật gì cả.

Lê Văn Duyệt

vậy để anh em tự liên hệ với bác duyệt vậy hehe. Bác duyệt có thể vào đây để tham khảo http://www.giaiphapexcel.com/forum/showthread.php?t=823&page=3 . Mình nghĩ chương trình bác viết rất hay nhưng để khi mở file tự nó enable macro thì có hay hơn ko ???
 
lachinhan đã viết:
vậy để anh em tự liên hệ với bác duyệt vậy hehe. Bác duyệt có thể vào đây để tham khảo http://www.giaiphapexcel.com/forum/showthread.php?t=823&page=3 . Mình nghĩ chương trình bác viết rất hay nhưng để khi mở file tự nó enable macro thì có hay hơn ko ???
Vâng, đây chỉ là một kỹ thuật nhỏ nhằm yêu cầu người dùng phải Enable khi muốn sử dụng. Tôi đã giới thiệu kỹ thuật này trong lớp VBA.
Kỹ thuật bạn nói ở đường link trên hơi phức tạp.

Lê Văn Duyệt

From VuNgoc:
Anh duyệt làm ơn cung cấp cho mình PW để mở xem code chương trình, email: ngocv-hr@mykolor.com
Thanks !


Pass: duyet@hien

Lê Văn Duyệt
 
Dear all,
--------
Xin phép anh levanduyet, em chỉnh sửa chút xíu để các bạn không hỏi những vấn đề không cần thiết nữa.

Các chỉnh sửa:
- Kết nối cơ sở dữ liệu Warehouse.mdb
- Không để ẩn các sheet tạo thuận tiện tìm hiểu cấu trúc chương trình
- Sửa lỗi truy vấn theo ngày tháng:
'dteDate = Mid(dteDate, 4, 2) & "/" & Mid(dteDate, 1, 2) & "/" & Right(dteDate, 4)
 

File đính kèm

  • Warehouse.zip
    874.7 KB · Đọc: 9,753
Em vào phần Data set up thấy hỏi mật khẩu, đã dùng tên Le Van Duyet và pass duyet@hien nhưng vẫn không mở được. Xin anh cho biết cách vào Dtata set up. Em nghĩ đã là file chia sẻ để mọi người tham khảo thì nên hướng dẫn cụ thể cách vào để mọi người xem mã. +-+-+-+[FONT=&quot] [/FONT]

Bạn có thể cho mình biết cách thay đổi các chữ và tên các nút trên sheet Menu không. Mình muốn thay đổi thành tiến Việt, mình dốt Tiếng Anh lắm. Thanks trước.
 
Anh Duyệt có thể sửa lại câu lệnh tạo Connection để gọi thẳng vào file mdb. Gọi qua DNS như thế, nhiều người dùng không hiểu.
 
TuanVNUNI đã viết:
Anh Duyệt có thể sửa lại câu lệnh tạo Connection để gọi thẳng vào file mdb. Gọi qua DNS như thế, nhiều người dùng không hiểu.
Với việc dùng ODBC DSN là các đơn giản nhất đêt tạo kết nối với cơ sở dữ liệu. Vì có thể đối với máy người dùng khác nhau tên ổ đĩa sẻ khác nhau. Nhưng nó sẽ gặp rắc rối sau:
_Trong chuỗi kết nối không có tên ổ đĩa hoặc đường dẫn, điều này đối với một số người có thể là không rỏ ràng.
_Đối với các ứng dụng dùng DSN, thì trên mỗi Desktop phải tạo DNS.
Các bạn có thể thay đổi connection string, trong thủ tục ConnectToDatabase.
Các bạn chú ý tôi đã để sẵn các đoạn mã
Mã:
'Get the database path (same as Active Workbook)
    'sPath = ActiveWorkbook.Path
    'If Right$(sPath, 1) <> "\" Then sPath = sPath & "\"
    'sPath = sPath & DatabasePath
    ''Check the exist of the file
    'If Not FileExists(sPath) Then
    '    bConnected = False
    '    MsgBox "The file " & sPath & " is not exist! Pls check!", vbOKOnly, "Notice"
    '    GoTo ErrorExit
    'End If

Mã:
 'With gcnAccess
    '    .Provider = "Microsoft.Jet.OLEDB.4.0"
    '    .Properties("Jet OLEDB:Database Password") = "duyethien"
    '    .Mode = adModeReadWrite
    '    .CursorLocation = adUseClient
    '    .CommandTimeout = 100
    '    .Open "Data Source=" & sPath
    'End With
Các bạn chọn các đoạn mã này và chọn uncomment block như hình
Uncomment.jpg

Các bạn phải sửa lại
Mã:
 .Properties("Jet OLEDB:Database Password") = "duyethien"
Thành
Mã:
 .Properties("Jet OLEDB:Database Password") = ""
To: Tu Anh
Em vào phần Data set up thấy hỏi mật khẩu, đã dùng tên Le Van Duyet và pass duyet@hien nhưng vẫn không mở được. Xin anh cho biết cách vào Dtata set up. Em nghĩ đã là file chia sẻ để mọi người tham khảo thì nên hướng dẫn cụ thể cách vào để mọi người xem mã.
Nếu bạn có bật bộ gõ thì chú ý. Nếu bạn dùng file của Đào Việt Cường thì không cần. Nhân đây xin cám ơn Cường.
Bạn có thể cho mình biết cách thay đổi các chữ và tên các nút trên sheet Menu không. Mình muốn thay đổi thành tiến Việt, mình dốt Tiếng Anh lắm. Thanks trước.
Nếu bạn dùng file tôi đã post đầu tiên thì pass để Un-protect là: bbababaB
Sau đó bạn chỉ việc chọn nút lệnh và click phải chọn Properties là có thể thay đổi các thuộc tính. Chú ý ở đây nếu bạn chọn font VNI hay ABC thì bạn có thể thay đổi tiếng việt được.
Property.jpg

Tôi đang phát triển. Phiên bản sau sẽ tốt hơn.

Lê Văn Duyệt
 
Chỉnh sửa lần cuối bởi điều hành viên:
From TuAnh:
Cám ơn anh Duyệt rất nhiều. Giờ em lại gặp một vấn đề nhỏ mong anh giúp. Em muốn thay tên các loại hàng hóa trong bảng của anh bằng tên các loại hàng hóa bằng tiếng Việt. Khi ở trong Sheet FG thì nó hiện bình thường không vấn đề gì. Nhưng khi chọn nó ở tron Form làm phiếu thì nó hiện không đúng chữ tiếng Việt. Anh có cách nào sử lý giúp không. Khi in ra báo cáo cũng vậy. Nhân tiện hỏi anh cách làm lại mẫu báo cáo theo ý mình thì sửa ở đâu. Cám ơn anh nhiều.
Gởi Tu Anh,
Trong form tôi dùng Listview, mà Listview thì không hổ trợ unicode nên bạn không thể hiện được tiếng việt. Để đồng bộ hóa, bạn chọn tất cả các font là VNI, hoặc ABC, thì thể hiện được tiếng việt.

Lê Văn Duyệt
 
Cám ơn anh, đã thể hiện được tiếng Việt nhưng còn một vấn đề nhỏ đó là trong textbox txtMota hiện tiếng việt nhưng các chữ bị ngắt quảng ví dụ: "Bàn làm việc" nó hiện thành " Bà n là m việ c" . Vậy có cách nào khắc phục không.
Thứ 2: Em đã hỏi anh cách điều chỉnh mẫu báo cáo theo ý mình thì sửa ở đâu nhưng chưa thấy anh trả lời.
Cám ơn nhiều!!!!!!!!!
 
Tu Anh đã viết:
Cám ơn anh, đã thể hiện được tiếng Việt nhưng còn một vấn đề nhỏ đó là trong textbox txtMota hiện tiếng việt nhưng các chữ bị ngắt quảng ví dụ: "Bàn làm việc" nó hiện thành " Bà n là m việ c" . Vậy có cách nào khắc phục không.
Bạn dùng font gì?
Thứ 2: Em đã hỏi anh cách điều chỉnh mẫu báo cáo theo ý mình thì sửa ở đâu nhưng chưa thấy anh trả lời.
Bạn phải tự điều chỉnh trong code. Vì đây là file mẫu, nên các bạn muốn phát triển thêm vui lòng xem code để điều chỉnh theo ý mình.

Lê Văn Duyệt


From TuAnh:
Em dùng file Vni-times.
Phần báo cáo em cần anh chỉ cho cần phải sửa ở phần nào thôi, còn sửa như thế nào em sẽ tự mò vậy. Cám ơn anh.
 
Tu Anh đã viết:
Em dùng file Vni-times.
Phần báo cáo em cần anh chỉ cho cần phải sửa ở phần nào thôi, còn sửa như thế nào em sẽ tự mò vậy. Cám ơn anh.
Tu Anh, xem tiếp ở đây nha.
http://www.giaiphapexcel.com/forum/showthread.php?t=2401&page=5
Hy vọng bạn có thể sửa lại báo cáo theo ý của mình.

Lê Văn Duyệt

_______________

Em sorry anh, cho em xì pam đôi dòng vì em hỏng biết post ở đâu hết. Tu Anh ở đây là Tu Anh khác, hỏng phải chị TA bên WKT. Hì hì...%#^#$
 
Chỉnh sửa lần cuối bởi điều hành viên:
Chào các bạn,
Chúng ta lại bắt đầu xây dựng lại ứng dụng này từ bước đầu. Đề nghị các bạn cùng tham gia thảo luận, nhất là các bạn đang làm công việc QUẢN LÝ KHO.

Chúng ta cần thảo luận để đưa ra:
_Xây dựng các bảng dữ liệu trong Access.
_Các biểu mẫu chung nhất cho việc nhập, xuất.
_Các báo cáo cần thiết.

Vâng, xin các bạn góp ý tiếp.
Sau bước này chúng ta sẽ đi vào xây dựng từng bước cho ứng dụng quản lý kho.

Lê Văn Duyệt

. . . . .

Hình như đến đây thì các bạn lại im lặng !
Có bạn nào muốn tham gia dự án này không?

Lê Văn Duyệt
 
levanduyet đã viết:
Hình như đến đây thì các bạn lại im lặng !
Có bạn nào muốn tham gia dự án này không?

Lê Văn Duyệt

Mình làm bên nhà máy thuốc lá, cũng cần 1 cái quản lý kho, ko biết có chung ý tưởng như Duyệt ko?


From LikeIt:
Dear Anh Duyệt,
Đc biết anh qua diễn đàn, và là một người rất giỏi về VBA. Thực sự em rất thích phần mềm của anh, vì công việc của em liên quan cực kỳ nhiều đến quản lý kho, đặc biệt phần inventory (daily) nhưng căn bản không hiểu nhiều gì về VBA nên không biết tham gia thế nào? chỉ biết khi nào các anh hoàn thiện thì post nên cho bọn em học hỏi và nếu có thể áp dụng được.Tks
 
Cám ơn các bạn,
Cuối cùng thì cũng có bạn lên tiếng rồi !
Chúng ta sẽ thảo luận
_Yêu cầu của phần quản lý kho này.
_Phân tích thiết kế (làm thế nào để thực hiện yêu cầu = phần mềm, theo hai2hai)

Bước đầu tiên là quan trọng, vậy chúng ta hãy cùng nhau phân tích bước 1.

To: trangnewasia, bạn xem kỹ thread nha. Tôi đã giải thích rồi.
Lê Văn Duyệt
 
Chúng ta thử đưa ra yêu cầu như sau:

YeuCau.jpg


Các bạn có ý kiến gì không?
Như trên tôi đã nói, chúng ta sẽ thực hiện một cách đơn giản nhất. Sau đó chúng ta mới phát triển thêm.

Lê Văn Duyệt
 
Chỉnh sửa lần cuối bởi điều hành viên:
Quản lý tồn kho - Inventory Control

Chúng ta sẽ nói về một vài khái niệm có liên quan đến quản lý tồn kho.

Trong một xí nghiệp sản xuất, kinh doanh muốn có lợi nhuận chúng ta chú ý:
_Dịch vụ khách hàng/Customer Service.
_Tồn kho tối thiểu/Min stock.
_Sản xuất với giá thành hạ, chất lượng cao, năng suất tối ưu.

Với ba mục tiêu trên, các bạn sẽ cảm thấy nó mâu thuẩn với nhau.
Tại sao? Vì muốn phục vụ khách hàng tốt, bạn phải luôn có tồn kho. Điều này xem ra mâu thuẩn với điều thứ hai. Nhưng tồn kho thế nào là hợp lý.
Sản xuất với giá thành hạ, chất lượng cao, năng suất tối ưu: đây cũng là vấn đề nan giải.
Vậy thì Làm thế nào để xác định điểm mua hàng (Reorder point-ROP). Điểm mua hàng được xác định bởi lead time/thời gian chờ hàng về kho và chúng ta phải xác định safety stock level/mức tồn kho an toàn.

inventory_order_cycle.jpg


Khi nói đến các vấn đề trên các bạn sẽ gặp từ EOQ
Vậy EOQ là gì? EOQ (Economic Order Quantity) là một hệ thống tồn kho liên tục (is a continuous inventory system)
Để xác định điểm ROP chúng ta có công thức:
R=dxL
Trong đó
d: là số lượng yêu cầu trong một khoảng thời gian. Ví dụ một ngày chằng hạn(demand rate per time period)
L: lead time

Một ví dụ về việc tính ROP

ROP.jpg


Chúng ta có thể hiểu tồn kho an toàn như sau: đó là điểm tồn kho thấp nhất để sản xuất thỏa yêu cầu của khách hàng. Nếu dưới mức này có thể sẽ ảnh hưởng đến các đơn hàng của sản xuất. Việc xác định điểm tồn kho an toàn cũng rất là quan trọng.

SafetyStock.jpg


Chính vì vậy mà các bạn sẽ thấy các báo cáo Stock Aging.

Dưới đây là một cái nhìn tổng quát về quản lý tồn kho tại kho.

QL_KHO_COBAN.jpg


Hy vọng qua phần này chúng ta có một cái nhìn khái quát về quản lý tồn kho.


Lê Văn Duyệt
 
Chỉnh sửa lần cuối bởi điều hành viên:
Các loại giao dịch tại kho

Các giao dịch tồn kho chúng ta có thể chia thành năm loại như sau:
_Biên nhận nhập / Receipts: đây là chứng từ cần phải có mỗi khi nhập hàng. Tùy theo loại hình của doanh nghiệp mà các chứng từ có tên gọi khác nhau, nhưng nó cùng mục đích.
_Phiếu xuất/Issues: chứng từ để xuất có thể là Raw materials requisition slip (Phiếu yêu cầu vật tư), Stock out note (Phiếu yêu cầu xuất)
_Phiếu xuất hàng/Shipment
_Các phiếu di chuyển/Movement: ví dụ như trong doanh nghiệp của bạn có nhiều kho, để di chuyển từ kho này qua kho khác các bạn cũng cần phải có các chứng từ này. Như vậy số liệu trong hệ thống sẽ chính xác. Hoặc các bạn xuất hàng đi gia công bên ngoài chằng hạn.
_Các phiếu điều chỉnh/Adjustment: tùy theo người quản lý doanh nghiệp mà có thể việc kiểm kho sẽ có chu kỳ 1 tuần, 1 tháng, 6 tháng, hay một năm. Sau khi kiểm kho số lượng chênh lệch sẽ được điều chỉnh (dĩ nhiên phải tìm hiểu nguyên nhân, chứ nếu không,...nhân viên kho đi bán thì sao!!!)

Như vậy chúng ta có thể tổng kết các biến động trong kho gồm các mục chính như sau:
_Nhập hàng từ nhà cung cấp nội địa.
_Xuất bán hàng cho khách hàng trong nước.
_Nhập hàng từ nhà cung cấp nước ngoài.
_Xuất bán hàng cho khách nước ngoài.
_Nhập sản phẩm từ bộ phận sản xuất/phân xưởng sản xuất.
_Xuất vật tư, nguyên liệu cho bộ phận sản xuất/phân xưởng sản xuất.
_Nhập hàng gia công (tức là từ sub-contractors)
_Xuất hàng cho gia công (gởi vật tư cho sub-contractors gia công cho doanh nghiệp)
_Nhập điều chỉnh giá phí (chú ý chỉ có số tiền mà thôi)
_Xuất điều chỉnh giá phí (chỉ có số tiền mà thôi)
_Nhập hàng nội bộ từ kho khác (ví dụ từ kho A sang kho B, thì kho B là nhận, kho A là xuất)
_Xuất hàng nội bộ (tương tự trên đã giải thích)
_Nhập sản phẩm khách hàng trả lại.
_Xuất vật tư trả lại nhà cung cấp.
_Nhập do thay đổi mã số mặt hàng trên tập tin chính tồn kho.
_Xuất do thay đổi mã số mặt hàng trên tập tin chính tồn kho.
_Nhập điều chỉnh sau khi kiểm kê.
_Xuất do điều chỉnh sau khi kiểm kê.
_Hủy bỏ một bút toán nhập trước đó.
_Hủy bỏ một bút toán xuất trước đó.


Như vậy tương đối đầy đủ cho một doanh nghiệp sản xuất.

Lê Văn Duyệt
 
Chào các bạn,
Với việc phân tích ở thread 29, 30 chúng ta thấy rằng các yêu cầu cho việc xây dựng một ứng dụng đơn giản trên chỉ là một phần nhỏ và thiếu nhiều cho một ứng dụng tổng quát. Nhưng chúng ta hãy cứ xây dựng một ứng dụng nhỏ trước và sau đó chúng ta sẽ phát triển sau.

Các bạn có ý kiến gì không?


Lê Văn Duyệt
PS: Hình như đến đây các bạn...lại không có ý kiến gì :(.
 
Theo tôi, bác đã sai về mặt phương pháp làm việc nhóm & online rồi bác ạ. :)

Rất tiếc là hôm nọ tôi đã viết 1 bài rất dài, nhưng khi send thì báo lỗi và mất luôn bài viết. Thế là chán quá chả viết lại nữa.

1. Về mặt làm phương pháp làm việc nhóm:
- Nhóm làm việc gồm những ai?
- Ai là trưởng nhóm?
- Thời gian làm việc thế nào?
- Có những công việc gì?
- Ai làm công việc nào, kết quả là gì?
- Phương pháp trao đổi thông tin là gì?
- ....

2. Về dự án (Dù nhỏ cũng được coi là dự án)
- Mục tiêu của dự án là gì? (Đơn giản hơn là: Bác mong mỏi gì khi post chủ đề này?)
- Phạm vi của bài toán? (Bác nhớ là bài toán kho cho SX khác với bài toán kho cho thương mại nhé, chưa kể là kích cỡ, phạm vi của bài toán, v.v...)
- Đối tượng áp dụng
- Nội dung (outline) của giải pháp?
- v.v...

Tự nhiên anh mô tả quy trình với những concepts từ ... SAP vào thì ko phải ai cũng hình dung ra được đâu bác ạ. Nhiều khi bài toán phải từ những thứ đơn giản như ABC trước đã. Mọi người thậm chí ko biết khái niệm và cách thức làm việc online thì làm sao mà tham gia được.

Nếu bác dự định làm 1 mình thì có thể bỏ qua những chuyện em nói ở trên :-=

Cheers!
 
Lần chỉnh sửa cuối:
Hi anh Duyet,

Chuong trinh của anh rất hay, nhưng ý tưởng của mình là anh nâng chuong trình lên thành nhập dữ liệu trên lưới luôn duoc không ?
 
Web KT
Back
Top Bottom