2012-07-22 30 views
5

Tôi có một chế độ xem hiển thị dữ liệu trên báo cáo tinh thể mà tôi có các trường như thuế quan, cho thuê, chia sẻ, tổng và net. 2 hàng của cùng một hồ sơ với thuế quan khác nhau mà là hành vi bình thường từ quan điểm cơ sở dữ liệu của xem nhưng tôi muốn ngăn chặn lĩnh vực cho thuê hàng tháng đến 0 nếu cùng một id có thuế quan khác nhau hoặc cho thuê được lặp đi lặp lại trong kỷ lục mới.Công thức cho trường ứng xử nếu trùng lặp trong báo cáo tinh thể

ID Tariff Rental 
1 20  390 
1 15  390 

Tôi muốn các lĩnh vực cho thuê trên các báo cáo bị dập tắt nếu bản sao dựa trên id.Currently Tôi đã sử dụng công thức này trong báo cáo tinh để kiểm tra dữ liệu hiện trường trước và ngăn chặn nếu trùng lặp.

{DatabaseField} = trước ({DatabaseField})

Nó được làm việc tốt nhưng nếu id là không giống nhau và cho thuê được lặp lại sau đó cũng sẽ ngăn chặn mà tôi không muốn nó want.I chỉ áp dụng cho cùng một id.

Trả lời

17

Bạn phải viết công thức vào trường triệt tiêu. (Không cần vào đàn áp nếu nhân đôi)

On thuê Dòng {ID} = previous({ID}){rental} = previous({rental})

Nếu ID và cho thuê là cùng thì chỉ có các Báo cáo sẽ ngăn chặn cho thuê.

Tôi đoán điều này sẽ phù hợp với bạn.

0

Tôi đã phải thực hiện một thay đổi nhỏ đối với công thức trong giải pháp của Janarthanan bằng cách thêm dấu ngoặc đơn để làm cho nó hoạt động với Crystal XI.

tôi đã sử dụng:

{ID}=previous({ID}) and {rental}=previous({rental}) 

biến định dạng này, được thể hiện trong câu hỏi đã chỉnh sửa, giúp tôi để giải quyết một vấn đề tương tự.

0

Đặt công thức này trong công thức ngăn chặn trường để ẩn.

nếu {myTable.ID} = trước ({} myTable.ID) sau đó đúng khác sai

1
  1. Trong Crystal Reports, nhấp chuột phải vào phần Chi tiết và chọn mục Expert.

    1. Trong hộp thoại Section Expert, chọn nút X + 2 bên cạnh lệnh Suppress. Hộp kiểm phải được bỏ chọn để công thức này hoạt động.
    2. Trong Formula biên tập hộp thoại, tạo ra một công thức có điều kiện có chứa các chức năng Next để đánh giá các hồ sơ cho các giá trị trùng lặp và để ngăn chặn các chi tiết dòng

    dụ: {Table.Databasefield} = trước ({Bảng .Databasefield})

Các vấn đề liên quan