• Quét mã vạch giống nhau thì cộng dồn số lượng?
  • Quét mã vạch giống nhau thì cộng dồn số lượng?

    dotrung > 10-10-19, 08:36 PM

    Do em đang muốn trải nghiệm máy quét mã vạch trong việc xuất kho hàng hóa nên xin phép diễn đàn cho em đăng bài này.

    Nhờ các bác cao thủ trong diễn đàn hỗ trợ giúp em phần này, vì em cục bí đè nặng quá, nghĩ mãi không ra (vì kiến thức VBA có hạn) 027 , đó là:
    + Combobox: truy vấn cùng lúc 2 mã vạch (trong 1 record danhmuchanghoa: mavach va mavach_thung) 
    + Khi quét vạch giống nhau thì số lượng sẽ cộng dồn 1 dòng duy nhất, nếu khác mã thì tạo dòng mới.
    + Thông báo khi vượt quá số lượng của chứng từ xuất kho

    link file của em :

    http://www.mediafire.com/file/ukoukzkxik...accdb/file
  • RE: Quét mã vạch giống nhau thì cộng dồn số lượng?

    tranthanhan1962 > 11-10-19, 12:16 AM

    (10-10-19, 08:36 PM)dotrung Đã viết: Do em đang muốn trải nghiệm máy quét mã vạch trong việc xuất kho hàng hóa nên xin phép diễn đàn cho em đăng bài này.

    Nhờ các bác cao thủ trong diễn đàn hỗ trợ giúp em phần này, vì em cục bí đè nặng quá, nghĩ mãi không ra (vì kiến thức VBA có hạn) 027 , đó là:
    + Combobox: truy vấn cùng lúc 2 mã vạch (trong 1 record danhmuchanghoa: mavach va mavach_thung) 
    + Khi quét vạch giống nhau thì số lượng sẽ cộng dồn 1 dòng duy nhất, nếu khác mã thì tạo dòng mới.
    + Thông báo khi vượt quá số lượng của chứng từ xuất kho

    link file của em :

    http://www.mediafire.com/file/ukoukzkxik...accdb/file
    Do bạn có 2 điều kiện mã vạch nên bạn cần có một field để tổng hợp 2 điều kiện thành 1, ví dụ dieukien=mavach1 & mavach2
    Trên fom sử dụng 2 control mã vạch: Mavach1, Mavach2(không cần dùng combobox gì đâu, textbox cũng được) không liên kết, 1 texbox tonghop2mavach và một texbox soluong có giá trị mặc định là 1 (vì mỗi lần quét là 1)
    Mã:
    Sub Quet()
       
            Dim dbs As DAO.Database
            Dim rst As DAO.Recordset
            Set dbs = CurrentDb
            Set rst = dbs.OpenRecordset("TenTab")
            tonghop2mavach.Value=Mavach1.Value & Mavach2.Value
            'Search for the first matching record 
             rst.MoveFirst 
      Do Until rst.EOF
           If rst!Title = tonghop2mavach.Value Then
             rst.Edit
             rst!SoLuong= rstEmployees!SoLuong + 1
             rst.Update 
             Mavach1.Value=""
             Mavach2.Value=""
             tonghop2mavach.Value=""
            else
             rst.MoveNext
           End If
      Loop
    End Sub
    đưa sub này vào event Mavach2 update để mỗi lần quét nó sẽ chạy
    Bạn có thể tạo một query đếm hàng tồn theo dieukien=tonghop2mavach
    mỗi lần quét nó sẽ requery phía dưới Sub Quet
    khi nó bằng 0 thì hàng sẽ hết.
    Chúc bạ thành công.
  • RE: Quét mã vạch giống nhau thì cộng dồn số lượng?

    dotrung > 13-10-19, 09:25 AM

    Cảm ơn bác tranthanhan1962 đã hướng dẫn, em đã làm lại giống như trên nhưng quét (hoặc double click) nó không ra như yêu cầu, bác tranthanhan1962 có thể demo lên file này của em được không ạ ?
    link http://www.mediafire.com/file/o3qai893vd...accdb/file
  • RE: Quét mã vạch giống nhau thì cộng dồn số lượng?

    tranthanhan1962 > 13-10-19, 02:15 PM

    OK! Hiện giờ mình cũng đang bận. Mình sẽ xử lý dùm bạn
  • RE: Quét mã vạch giống nhau thì cộng dồn số lượng?

    dotrung > 16-10-19, 08:36 PM

    Dạ, em cũng tự mò mẫm về query hơi khác bác Nhân 1 tí, có nghĩa vẫn giữ cột mã vạch dùng combo box (query union all) Hồi quy 2 mã vạch về 1 (mã vạch => số lẻ, mã thùng => số hộp) có số lượng tương ứng để sau này có thông báo khi nhập quá số lượng
    Nhưng lại kẹt 1 tí là số lượng không cộng dồn khi quét hoặc double click tại dòng detail, hic hic  021

    link đã chế biến lại, mời mọi ngươi góp ý cho em tí động lực http://www.mediafire.com/file/h11ih0sczx...accdb/file 
    thanks !
  • RE: Quét mã vạch giống nhau thì cộng dồn số lượng?

    ongke0711 > 16-10-19, 09:10 PM

    Tôi nghĩ là bạn làm hơi phức tạp rồi.
    - Quản lý số lượng theo đơn vị nhỏ nhất nếu quét mã thùng thì cũng qui về đvt nhỏ nhất đúng không?
    - Tôi không thấy bảng thông tin qui cách thùng của từng mã hàng hoá trong DanhMucHangHoa để qui đổi số lượng.

    Qui trình thao tác:
    - Quét mã vạch -> nhập số lượng (mặc định =1) -> bấm nút [Nhâp] hoặc {Enter} để đưa thông tin hàng hoá xuống SubForm bên dưới.
    - Quét tiếp. Nếu trùng thì cũng nhâp số lượng và Enter. Số lượng sẽ tự động cộng dồn vào Subform bên dưới.
    - Nếu quét mã thùng thì cũng qui về đvt nhỏ nhất -> tự động hiện số lượng rồi nhập vào SubF bên dưới.
    - Nếu Double click vào mã hàng sẽ tự động thêm 1, nếu là mã thùng sẽ tự động thêm 12 (ví dụ).
    Chỉ vậy thôi.
    Bạn thấy có gì chưa phù hợp với yêu cầu thực tế của bạn không?
  • RE: Quét mã vạch giống nhau thì cộng dồn số lượng?

    dotrung > 17-10-19, 01:07 PM

    Cảm ơn anh ongke711 nhiều ạ, thực ra em cũng suy nghĩa đơn giản ạ vì file này chỉ là kiểm tra để lại việc xuất hàng của mình có đúng hay không thôi (vì mình là thủ kho, muốn trải nghiệm ứng dụng mã vạch trong xuất kho)

    Cụ thể là em đã có 1 chứng từ xuất rồi, bây giờ em lấy chứng từ xuất đó ra kiểm tra lại thực tế bằng phương pháp mã vạch (đã soạn hàng sẵn theo bảng kê rồi) 

    - Như vậy phần tồn kho (của chứng từ lấy ra kiểm tra) chính là: số hộp và số lẻ (trong file em quy đổi lại số lượng ô combobox) của chứng từ ấy là được. Quy trình quét (nhập tay, double click, enter) đều thực hiện giống y anh ongke711 trình bày. em chỉ lúng túng (do không hiểu lắm về VBA) nên phần tự động quét từ lần 2 ... n lần (nếu trùng mã nó không cộng dồn, nếu mã mới tạo dòng mới) . Nếu quét ngoài mã (hoặc vượt tồn số lượng) thì beep thông báo sai mã.
    - Phần số lượng mặc định là 1 chính xác (vì hàng hóa có bản bó khác nhau, quy đổi ra đơn vị nhỏ nhất em nghĩ nó phức tạp hơn), em dựa sẵn vào số hộp chẵn và số lẻ do table tblPhieuxuatkho làm ra cho tiện.
    - Phần quy cách thùng có trong table danh mục hàng hóa (là field banbo ấy anh).

    P/S :  file phần mềm QLkho chưa hoàn chỉnh em có chia sẻ bác Dân (vẫn hy vọng được anh Dân xem và cho em 1 số góp ý nho nhỏ ... )
  • RE: Quét mã vạch giống nhau thì cộng dồn số lượng?

    tranthanhan1962 > 17-10-19, 11:18 PM

    Cũng đang bận nhưng tranh thủ xem phần mềm của bạn một tí, thực sự cách phân tích của bạn có nhiều vấn đề và không phải trong chốc lát có thể thực hiện ngay trên database của bạn được.
    1/các table của bạn rời rạc khó liên kết lại với nhau được.
    2/Bạn thực hiện việc quét mã vạch lện bảng tạm, cái này vừa rườm rà vừa không cần thiết (quét trực tiếp lên table chính thức để xử lý luôn)
    3/table kho (bản chất là table nhập+xuất) chỉ có xuất mà không có nhập thì cơ sở nào tính tồn kho đây.
    4/Bạn đưa mã thùng vào đây là làm phức tạp hoạt động xuất bằng phương pháp quét mã vạch. Nếu bạn có đi siêu thị thì sẽ thấy nhân viên siêu thị không quan tâm đến mã thùng bao giờ). vì ở đây nhân viên siêu thị sẽ có một cột tính lượt quét và số lượng trên lượt quét đó. Khi bạn mua 1,2,3 gói mì, họ sẽ quét từng gói => mỗi lượt quét = 1 gói, như nếu bạn mua 5-6 gói trở lên, họ sẽ quét 1 gói và gõ lại số lượng là 5 hay 6, còn khi bạn bê ra 1 thùng họ vẫn quét mã hàng lượt quét vẫn là 1 và sửa số lượng thành số lượng gói trong thùng mì, khi kiểm hàng họ cũng tính ra gói để kiểm số lượng gói chứ không ai quan tâm đếm mã thùng nào ,còn mã thùng nào hết.
    5/Trước khi tính đến chuyện quét mã vạch, cái bạn cần nghiên cứu là thiết kế một phần mềm tồn kho hoàn chỉnh (trên forum có nhiều bài viết về chủ đề này). Khi chưa có phần mềm tồn kho hoàn chỉnh thì cái vụ quét mã vạch của bạn chỉ để cho vui. Còn bản chất của cái máy quét mã vạch là gì? nó chỉ là một thiết bị ngoại vi của máy tính thay thế bàn phím mà thôi. Nếu bạn nhập một loại hàng hóa tên ABCD... thay vì bạn gõ vào ABCD... để xuất thì bạn dùng máy quét để nhập nhanh chóng mã hàng ABCD... Chỉ có vậy.
    Nói thêm một chút với ongke711, Khi quét mã vạch không cần <Enter>, 1/ Tạo một control textbox không liện kết tab index =0 để điền giá trị mã vạch của mã hàng. khi control này update (máy quét kêu tít để báo hiệu nhập xong mã vạch). record new sẽ nhập giá trị tên hàng và dùng hàm dlookup nhập giá bán, con trỏ sẽ nhảy đến ô số lượng và quét đen ô số lượng (mặt định giá trị ô này là 1), sau đó nhân viên siêu thị thay đổi số lượng hoặc không thì enter, con trỏ sẽ trở về textbox mã vạch (lúc này đã bị xóa) chờ nhận giá trị mới, các ô khác như dvt, thành tiền và cả ô tên hàng điều bị khóa.
  • RE: Quét mã vạch giống nhau thì cộng dồn số lượng?

    ongke0711 > 19-10-19, 06:41 PM

    Nếu đây chỉ là một cái tool phụ để kiểm tra số lượng xuất nhập xem có đúng chứng từ không thì cũng có thể thiết kế đơn giản, không dính gì vô dữ liệu nhập xuất chính của Cty.
  • RE: Quét mã vạch giống nhau thì cộng dồn số lượng?

    dotrung > 19-10-19, 08:49 PM

    bác Ongke0711 hiểu chính xác ý em, đây chỉ là tool phụ để kiểm tra lại 1 hóa đơn xuất (đã làm trước đó).

    Theo em được biết, bên các kho lớn của nước ngoài thì các thủ kho có máy mã vạch cầm tay quét đơn hàng của họ khi lấy ra (theo chứng từ có sẵn trong máy quét), Như vậy họ rất tin tưởng việc xuât hàng của mình (khi chỉ đi lấy hàng chỉ 1 mình). 
    Từ suy nghĩ đó, em trang bị thử máy quét usb, in thêm nhãn thùng và làm 1 tool này rất mong các cao thủ giúp em ạ.