• [Demo P2] Tạo Số tăng dần và Reset theo nhu {cầu 2 Cách}
  • RE: [Video+Demo] 2 Cách Tạo Số tăng dần và Reset theo nhu cầu

    maidinhdan > 11-11-17, 01:19 AM

    Từ bài của bạn trên diễn đàn, tôi xin làm 1 demo giúp cho bạn xử lý vấn đề số số thứ tự tăng dần, qua ngày mới sẽ reset lại
    Câu hỏi của bạn như sau;
    (07-11-17, 05:11 PM)pherotao Đã viết: Ý số 1: Số Hóa Đơn phải tăng dần theo ngày.
    Ví dụ:
    - Tháng 10, có PHIẾU NHẬP phát sinh:
       + ngày 03, có 05 phiếu: 'N 2017 10 03 001', 'N 2017 10 03 002', 'N 2017 10 03 003', 'N 2017 10 03 004', 'N 2017 10 03 005';
       + ngày 13 có 03 phiếu: 'N 2017 10 13 001', 'N 2017 10 13 002', 'N 2017 10 13 003';
       + ngày 30 có 1 phiếu: 'N 2017 10 30 001'.
    - Tháng 11, có PHIẾU NHẬP phát sinh:
       + ngày 09, có 03 phiếu: 'N 2017 11 09 001', 'N 2017 11 09 002'; 'N 2017 11 09 003';
       + ngày 28, có 04 phiếu: 'N 2017 11 28 001', 'N 2017 11 28 002', 'N 2017 11 28 003', 'N 2017 11 28 004'
       v.v....
    Ý số 2; Nhập thêm vào nếu quên nhập ngày nào đó
    - tháng 10, có thêm 3 phiếu mà chưa nhập lên máy: lần lượt: 01 phiếu ngày 14/10/2017; 02 phiếu ngày 18/10/2017;
    - tháng 11, vào ngày 09/11/2017, có phiếu 'N 2017 11 09 002' phải sửa lại nhập cho 30/10/2017. Vì vậy mong muốn là: 'N 2017 11 09 002' sẽ thành 'N 2017 10 30 002' (lúc đầu 30/10 chỉ có 1 phiếu, giờ tăng lên 2 phiếu);

    Ý số 3: Điều chỉnh lại số Chứng từ cho liên tục nếu lỡ nhập dư; còn 09/11 từ 03 giảm còn 2: 'N 2017 11 09 003' sẽ tự điều chỉnh thành 'N 2017 11 09 002';

    Xin mọi người giúp mình với! Xin cảm ơn!

    Trả lời:
    Ý 1. Số Hóa Đơn phải tăng dần theo ngày+[b]Ý số 2; Nhập thêm vào nếu quên nhập ngày nào đó: [/b]
    Tạo 1 hàm như sau:
    Mã PHP:
    '---------------------------------------------------------------------------------------
    Procedure LaySTT2
    ' Author    : HenDan
    Date      5/30/2017
    ' Purpose   : So thu tu tang dan reset moi ngay, Khong dua vao query ma truy van truc tiep bang ham Dlast
    '
    ---------------------------------------------------------------------------------------
    ' Cu phap: LaySTT2("tblPhieuNhap", "ID", "X")

    Function LaySTT2(TenTable As String, TenCotSTT As String, KyTyCanChen As String, Optional Ngaynhap As Date) As String
    On Error Resume Next
    Dim SoTD As Double, s As Double
    Dim SoMax As String, SoNext As String
    Dim yyyy As String, mm As String, dd As String
    If IsNull(Ngaynhap) Then
    yyyy = Format(Year(Date), "0000")
    mm = Format(Month(Date), "00")
    dd = Format(Day(Date), "00")
    Else
    yyyy = Format(Year(Ngaynhap), "0000")
    mm = Format(Month(Ngaynhap), "00")
    dd = Format(Day(Ngaynhap), "00")
    End If

    '
    SoMax DLast("[ID]""[tblPHIEUNHAP]""Mid([ID], 2, 6)='" yy mm "'")  ' Lay mau tin cuoi cung duoc tao
    SoMax = DLast(TenCotSTT, TenTable, "Mid([" & TenCotSTT & "], 2, 8)='" & yyyy & mm & dd & "'")  ' 
    Lay mau tin cuoi cung duoc tao

    SoMax 
    Right(SoMax4)  ' Lay STT 4 ky tu cuoi
    s = Val(SoMax)              ' 
    Chuyen chuoi thanh so
       
    If IsNull(sThen
           SoTD 
    1
       
    Else
           SoTD 1
       End 
    If
    SoNext Format(SoTD"0000")  ' Dinh dang kieu 4 ky tu de hien thi, Nhu vay So thu tu lon nhat se la 9999

       LaySTT2 = KyTyCanChen & yyyy & mm & dd & SoNext
    End Function 

    Ở trên form ta sẽ :
    + tạo 1 textbox chưa ngày ta nnhập lên máy ( tạm đặt tên là txtngaynhaplieu)
    + tạo 1 nút lấy tên là LaySoTT

    Ta chèn cú pháp sau vào sự kiện Click của nút LaySoTT
    Mã PHP:
    Private Sub LaySoTT_Click()
    DoCmd.GoToRecord , , acNewRec
    Me
    .SoChungTu LaySTT2("tblXuatNhap""SoChungTu""N"Me.txtNgaynhaplieu)
    End Sub 


    Lưu ý: Nhớ rõ nguyên tắc nhập ngày tháng năm bằng bàn phím trên Access luôn luôn phải nhập tháng/ngày/năm. ( kiểu format dd/mm/yyyy chỉ là kiểu hiển thị cho chúng ta xem thôi.

    Đính kèm demo phía dưới

    Ý số 3: Điều chỉnh lại số Chứng từ cho liên tục nếu lỡ nhập dư
    Câu này hơi khó và cách giải quyết thì phức tạp vô cùng, cũng như ongke0711 đã có 1 bài giải thích về vấn đề này.
    Kiến nghị: ở kiến thức và khả năng của bạn thì mình đề nghị nên tự điều chỉnh bằng tay là tốt nhất.

    Các nút Lưu sửa Xóa thì bạn tự nghiên cứu nhé
    Thân mến và chúc bạn thành công.
  • RE: [Video+Demo] 2 Cách Tạo Số tăng dần và Reset theo nhu cầu

    pherotao > 11-11-17, 09:13 PM

    (11-11-17, 01:19 AM)maidinhdan Đã viết: Ý số 3: Điều chỉnh lại số Chứng từ cho liên tục nếu lỡ nhập dư
    Câu này hơi khó và cách giải quyết thì phức tạp vô cùng, cũng như ongke0711 đã có 1 bài giải thích về vấn đề này.
    Kiến nghị: ở kiến thức và khả năng của bạn thì mình đề nghị nên tự điều chỉnh bằng tay là tốt nhất.

    Các nút Lưu sửa Xóa thì bạn tự nghiên cứu nhé
    Thân mến và chúc bạn thành công.

    Đúng là "Ý số 03" nan giải thật. Vẫn chưa làm được. Cám ơn bạn đã nhiệt tình trả lời bài của mình.
  • RE: [Video+Demo] 2 Cách Tạo Số tăng dần và Reset theo nhu cầu

    maidinhdan > 12-11-17, 05:09 AM

    (11-11-17, 09:13 PM)pherotao Đã viết: Đúng là "Ý số 03" nan giải thật. Vẫn chưa làm được. Cám ơn bạn đã nhiệt tình trả lời bài của mình.

    Test Thử Demo phía dưới phải giống ý số 3 không nhé

    [Hình: naplaisothutu.png]
  • RE: [Video+Demo] 2 Cách Tạo Số tăng dần và Reset theo nhu cầu

    kiepgiangho79 > 13-11-17, 03:28 PM

    CHo e cái nập lại STT: ngocbanladif@gmail.com
  • RE: [Video+Demo] 2 Cách Tạo Số tăng dần và Reset theo nhu cầu

    maidinhdan > 14-11-17, 11:07 PM

    (13-11-17, 03:28 PM)kiepgiangho79 Đã viết: CHo e cái nập lại STT: ngocbanladif@gmail.com

    Đã gửi
  • RE: [Video+Demo] 2 Cách Tạo Số tăng dần và Reset theo nhu cầu

    dninh > 13-12-17, 11:15 PM

    Bạn maidinhtan ơi mình có 1 vấn đề muốn nhờ bạn giúp đỡ. Mình có thể gửi mail cho bạn dc ko ?
  • RE: [Video+Demo] 2 Cách Tạo Số tăng dần và Reset theo nhu cầu

    hungacc > 29-07-18, 11:06 AM

    Bạn cho mình xin bảng không khóa nhénhé. Email: hungacc@gmail.com thanks
  • RE: [Video+Demo] 2 Cách Tạo Số tăng dần và Reset theo nhu cầu

    TuND > 04-09-18, 03:19 PM

    Cho mình xin một bản không khóa nhé, xin cảm ơn!
    email: ductuls@gmail.com
  • RE: [Video+Demo] 2 Cách Tạo Số tăng dần và Reset theo nhu cầu

    maidinhdan > 09-09-18, 10:34 PM

    đã gửi
    Nguyễn Chí Hưng <hungacc@gmail.com>,
    ductuls@gmail.com
  • RE: [Video+Demo] 2 Cách Tạo Số tăng dần và Reset theo nhu cầu

    soluuhuong85 > 30-10-18, 12:05 PM

    Cho mình xin một bản không khóa nhé, xin cảm ơn!

    email: soluuhuong85@gmail.com