• Querycrosstab bị lỗi, xin giúp !
  • Querycrosstab bị lỗi, xin giúp !

    TuanLe > 08-07-15, 05:14 PM

    Mình thiết lập một querycrosstab 

    http://www.upsieutoc.com/image/DRvl

     Minh có tạo một hộp thoại yêu cầu gõ vào tham số cần lọc là ">=[Tu Ngay] And <=[Den Ngay]" nhưng khi ở chế độ Query Select thì nó hiện đưa ra thông báo để nhập ngày. Nhưng ở chế độ Query Crosstab thì nó bị lỗi như thông báo như hình, nếu để ">= #01/07/15# And <=#30/07/15# thì lại ko báo lỗi và chạy bình thường.

    Xin các bạn giúp mình chay Q_Crosstab với hộp thoại  êu cầu gõ vào tham số cần lọc là ">=[Tu Ngay] And <=[Den Ngay]" 

    Xin cảm ơn
    ">undefined
  • RE: Querycrosstab bị lỗi, xin giúp !

    maidinhdan > 08-07-15, 06:52 PM

    (08-07-15, 05:14 PM)TuanLe Đã viết: Mình thiết lập một querycrosstab 

    http://www.upsieutoc.com/image/DRvl

     Minh có tạo một hộp thoại yêu cầu gõ vào tham số cần lọc là ">=[Tu Ngay] And <=[Den Ngay]" nhưng khi ở chế độ Query Select thì nó hiện đưa ra thông báo để nhập ngày. Nhưng ở chế độ Query Crosstab thì nó bị lỗi như thông báo như hình, nếu để ">= #01/07/15# And <=#30/07/15# thì lại ko báo lỗi và chạy bình thường.

    Xin các bạn giúp mình chay Q_Crosstab với hộp thoại  êu cầu gõ vào tham số cần lọc là ">=[Tu Ngay] And <=[Den Ngay]" 

    Xin cảm ơn
    ">undefined


    Nó không hiểu được kiểu dữ liệu của cột [NGAY] và Điều kiệu [Tu ngay] vì vậy nó báo lội ( Bởi khi bạn dùng cú pháp như thế Máy cho rằng [Tu ngay] là một chuỗi không phải là kiểu Ngày tháng.

    Cách sửa: Dùng cú pháp sau
    Betwwen [Tu Ngay] And [Den Ngay]

    Hoặc:
    >= #[Tu Ngay]
    # And <= #[Den Ngay]
    #

    Hoặc
    >= Format([Tu Ngay],"dd/mm/yyyy") And <= Format([Den Ngay],"dd/mm/yyyy")

    Bạn thử xem.
  • RE: Querycrosstab bị lỗi, xin giúp !

    TuanLe > 09-07-15, 08:16 AM

    (08-07-15, 06:52 PM)maidinhdan Đã viết:
    (08-07-15, 05:14 PM)TuanLe Đã viết: Mình thiết lập một querycrosstab 

    http://www.upsieutoc.com/image/DRvl

     Minh có tạo một hộp thoại yêu cầu gõ vào tham số cần lọc là ">=[Tu Ngay] And <=[Den Ngay]" nhưng khi ở chế độ Query Select thì nó hiện đưa ra thông báo để nhập ngày. Nhưng ở chế độ Query Crosstab thì nó bị lỗi như thông báo như hình, nếu để ">= #01/07/15# And <=#30/07/15# thì lại ko báo lỗi và chạy bình thường.

    Xin các bạn giúp mình chay Q_Crosstab với hộp thoại  êu cầu gõ vào tham số cần lọc là ">=[Tu Ngay] And <=[Den Ngay]" 

    Xin cảm ơn
    ">undefined


    Nó không hiểu được kiểu dữ liệu của cột [NGAY] và Điều kiệu [Tu ngay] vì vậy nó báo lội ( Bởi khi bạn dùng cú pháp như thế Máy cho rằng [Tu ngay] là một chuỗi không phải là kiểu Ngày tháng.

    Cách sửa: Dùng cú pháp sau
    Betwwen [Tu Ngay] And [Den Ngay]

    Hoặc:
    >= #[Tu Ngay]
    # And <= #[Den Ngay]
    #

    Hoặc
    >= Format([Tu Ngay],"dd/mm/yyyy") And <= Format([Den Ngay],"dd/mm/yyyy")

    Bạn thử xem.

    Cám ơpn bạn, nhưng đã thử 3 cú pháp trên nhưng nó vẫn báo lỗi như cũ là :
     "The Microsoft jet database engine does not recognize ‘Tu Ngay’ as a valid field name or expression"
    Mình cần cái này để đưa vào form mà chỉ cần nhập ngày tháng vào là nó chạy số liệu thôi hoạc khi chạy Query crosstab này nó rất linh động cho lọc số liệu so sánh.

    Rất mong các bạn hướng dẫn cách sao cho nó có thể hiện thông báo mình tự nhập ngày theo ý của mình. Cám ơn

    Nếu chuyển sang SQL nó như vầy :

    TRANSFORM Sum(dbo_CTHD.KHOILUONG) AS SumOfKHOILUONG
    SELECT dbo_DM_NHOM_HANG.TEN_NHOM_HANG
    FROM ((dbo_DMTP INNER JOIN ((dbo_DM_KHACH_HANG INNER JOIN dbo_HOA_DON ON dbo_DM_KHACH_HANG.MKH = dbo_HOA_DON.MADT) INNER JOIN dbo_CTHD ON dbo_HOA_DON.IDKEY = dbo_CTHD.IDKEY) ON dbo_DMTP.MATP = dbo_CTHD.MATP) INNER JOIN dbo_DM_NHOM_HANG ON dbo_DMTP.MNH = dbo_DM_NHOM_HANG.MNH) INNER JOIN dbo_DM_THI_TRUONG ON dbo_DM_KHACH_HANG.MTT = dbo_DM_THI_TRUONG.MTT
    WHERE (((dbo_HOA_DON.NGAY)>=Format([Tu Ngay],"dd/mm/yyyy") And (dbo_HOA_DON.NGAY)<=Format([Den Ngay],"dd/mm/yyyy")) AND ((dbo_DM_KHACH_HANG.MTT)<>"5" And (dbo_DM_KHACH_HANG.MTT)<>"8" And (dbo_DM_KHACH_HANG.MTT)<>"7" And (dbo_DM_KHACH_HANG.MTT)<>"9") AND ((dbo_HOA_DON.LOAI)="BAN"))
    GROUP BY dbo_DM_NHOM_HANG.TEN_NHOM_HANG
    PIVOT dbo_DM_THI_TRUONG.TEN_THI_TRUONG;
  • RE: Querycrosstab bị lỗi, xin giúp !

    maidinhdan > 13-07-15, 06:14 PM

    Bước 1. Áp dụng cú pháp đầu tiên:

    Mã PHP:
    Between [Tu Ngày] And [Den ngay

    Bước 2. Bỏ chọn "GROUP BY" biểu tượng hình Xích ma đó.

    Chỉ có vậy.
  • RE: Querycrosstab bị lỗi, xin giúp !

    TuanLe > 14-07-15, 08:36 AM

    (13-07-15, 06:14 PM)maidinhdan Đã viết: Bước 1. Áp dụng cú pháp đầu tiên:

    Mã PHP:
    Between [Tu Ngày] And [Den ngay

    Bước 2. Bỏ chọn "GROUP BY" biểu tượng hình Xích ma đó.

    Chỉ có vậy.

    Nhưng bạn ơi ! Ở Query Select mới bỏ chọn cái đó được. Con Query Crosstab đâu có bỏ được ? Mình thấy ở dạng Q_select thì ko van de gi, chi bi bao loi ko chay duoc khi o dang Q_Crosstab thôi.

    Ban co the sua loi Q_crosstab do o dang  cau lenh SQL ko?
    Cam on ban nhe !