मैं क्रिस्टल रिपोर्ट 2016 के साथ काम कर रहा हूं। डेटा स्रोत MS SQL Server 2008 R2 है। मैं वर्तमान में एक पैरामीटर का उपयोग करके अपनी रिपोर्ट के लिए तिथि सीमा के लिए उपयोगकर्ता को संकेत देने में सक्षम हूं। मैं एक समय सीमा के लिए एक संकेत जोड़ना चाहूंगा। किसी DateTime पैरामीटर के लिए प्रॉम्प्ट का उपयोग करने से वह नहीं होता जो मुझे चाहिए। तिथि सीमा दिनों की एक बड़ी विंडो का चयन करने वाली है, और समय सीमा उस दिन का चयन करेगी जिस दिन रिपोर्ट डेटा दिखाएगा। DateTime पैरामीटर प्रॉम्प्ट का उपयोग करने से रिपोर्ट की शुरुआत और समाप्ति दिन / समय में सटीकता आती है और मैं जो चाहता हूं वह नहीं करता है। दोनों संकेत डेटाबेस में एक ही DateTime रिकॉर्ड को संदर्भित करेंगे।
मैंने कुछ समय के लिए एक अलग, दूसरा, पैरामीटर प्रॉम्प्ट जोड़ने की कोशिश की है, लेकिन इसका परिणाम वही है जो पैरामीटर प्रॉम्प्ट को डेटटाइम मान में बदल रहा है। मैं फिर से दोहराऊंगा: यह मेरा वांछित परिणाम नहीं है।
एक ठोस, विशिष्ट, उदाहरण के रूप में, मैं उन डेटा का उपयोग करना चाहूंगा जो 1 सितंबर - 31 अक्टूबर के लिए मान्य हैं, जहां मैं जिस चीज की रिपोर्ट कर रहा हूं वह 2 या 10 बजे ईएसटी के बीच किसी भी या उन सभी दिनों में हुई है। यदि मेरे पास डेटटाइम चयन है, तो मैं 1 सितंबर, 2 बजे और 31 अक्टूबर, रात 10 बजे चुन सकता हूं। हालाँकि, यह वह नहीं है जिसे मैं चुनने की कोशिश कर रहा हूं।
मूल रूप से, इन दिनों 2 से 10 बजे के बीच के डेटा का चयन करें। जहां शुरुआत की तारीख और अंतिम तिथि चयन करने योग्य होती है; और प्रारंभ समय और अंत समय चयन करने योग्य हैं।
SQL parlance का उपयोग करते हुए, मुझे लगता है कि मैं तिथि सीमा और समय सीमा (केंद्र एक) का एक आंतरिक जुड़ना चाहूंगा:
एक पूरी तरह से असंबंधित लेकिन समान उदाहरण; यह घटना आउटलुक की बैठकों के समान है। आप (लेकिन नहीं करना चाहिए) एक बहुत लंबी बैठक कर सकते हैं जो 1 दिन / समय से शुरू होती है, और कई दिनों बाद दूसरे दिन / समय पर समाप्त होती है, लेकिन आपको अपने और अपने कमरे के शेड्यूल को ठीक से प्रबंधित करने के लिए एक आवर्ती बैठक करनी चाहिए। मैं आवर्ती बैठक के लिए इसी तरह के रिकॉर्ड का चयन करना चाहता हूं।
मैं select expert
जिस डेटा की तलाश कर रहा हूं उसे प्राप्त करने के लिए मैं एक नियम कैसे तैयार कर सकता हूं ? क्या कोई और तरीका है जो मैं यह कर सकता हूं? शायद एक सबप्रपोर्ट?
HH
2 बजे से 10 बजे के बीच DATEPART
फ़ंक्शन का उपयोग कर रहे हैं। उदाहरण के लिए SELECT * FROM Table WHERE DATEPART(hh,[DateField]) BETWEEN 14 AND 22
, दृश्य में कॉलम का उपयोग किए बिना स्पष्ट रूप से और फिर select expert
रिपोर्ट को इंगित करने के लिए कि यह उससे चयनित दिनांक अवधियों के लिए डेटा है। एक और तरीका यह होगा कि एक ही T-SQL क्वेरी को CR SQL कमांड बनाया जाए लेकिन एक SQL व्यू बहुत बेहतर प्रदर्शन कर सकता है।
SELECT * FROM Table WHERE DATEPART(hh,[DateField]) BETWEEN 14 AND 22
और आप select column1, column2 FROM ~
इसके बजाय SQL दृश्य में क्वेरी के साथ विशिष्ट हो सकते हैं *
।