अलग दिनांक और समय मानों के पैरामीटर के लिए शीघ्र?


9

मैं क्रिस्टल रिपोर्ट 2016 के साथ काम कर रहा हूं। डेटा स्रोत MS SQL Server 2008 R2 है। मैं वर्तमान में एक पैरामीटर का उपयोग करके अपनी रिपोर्ट के लिए तिथि सीमा के लिए उपयोगकर्ता को संकेत देने में सक्षम हूं। मैं एक समय सीमा के लिए एक संकेत जोड़ना चाहूंगा। किसी DateTime पैरामीटर के लिए प्रॉम्प्ट का उपयोग करने से वह नहीं होता जो मुझे चाहिए। तिथि सीमा दिनों की एक बड़ी विंडो का चयन करने वाली है, और समय सीमा उस दिन का चयन करेगी जिस दिन रिपोर्ट डेटा दिखाएगा। DateTime पैरामीटर प्रॉम्प्ट का उपयोग करने से रिपोर्ट की शुरुआत और समाप्ति दिन / समय में सटीकता आती है और मैं जो चाहता हूं वह नहीं करता है। दोनों संकेत डेटाबेस में एक ही DateTime रिकॉर्ड को संदर्भित करेंगे।

मैंने कुछ समय के लिए एक अलग, दूसरा, पैरामीटर प्रॉम्प्ट जोड़ने की कोशिश की है, लेकिन इसका परिणाम वही है जो पैरामीटर प्रॉम्प्ट को डेटटाइम मान में बदल रहा है। मैं फिर से दोहराऊंगा: यह मेरा वांछित परिणाम नहीं है।

एक ठोस, विशिष्ट, उदाहरण के रूप में, मैं उन डेटा का उपयोग करना चाहूंगा जो 1 सितंबर - 31 अक्टूबर के लिए मान्य हैं, जहां मैं जिस चीज की रिपोर्ट कर रहा हूं वह 2 या 10 बजे ईएसटी के बीच किसी भी या उन सभी दिनों में हुई है। यदि मेरे पास डेटटाइम चयन है, तो मैं 1 सितंबर, 2 बजे और 31 अक्टूबर, रात 10 बजे चुन सकता हूं। हालाँकि, यह वह नहीं है जिसे मैं चुनने की कोशिश कर रहा हूं।

मूल रूप से, इन दिनों 2 से 10 बजे के बीच के डेटा का चयन करें। जहां शुरुआत की तारीख और अंतिम तिथि चयन करने योग्य होती है; और प्रारंभ समय और अंत समय चयन करने योग्य हैं।

यहां छवि विवरण दर्ज करें

SQL parlance का उपयोग करते हुए, मुझे लगता है कि मैं तिथि सीमा और समय सीमा (केंद्र एक) का एक आंतरिक जुड़ना चाहूंगा:

यहां छवि विवरण दर्ज करें

एक पूरी तरह से असंबंधित लेकिन समान उदाहरण; यह घटना आउटलुक की बैठकों के समान है। आप (लेकिन नहीं करना चाहिए) एक बहुत लंबी बैठक कर सकते हैं जो 1 दिन / समय से शुरू होती है, और कई दिनों बाद दूसरे दिन / समय पर समाप्त होती है, लेकिन आपको अपने और अपने कमरे के शेड्यूल को ठीक से प्रबंधित करने के लिए एक आवर्ती बैठक करनी चाहिए। मैं आवर्ती बैठक के लिए इसी तरह के रिकॉर्ड का चयन करना चाहता हूं।

मैं select expertजिस डेटा की तलाश कर रहा हूं उसे प्राप्त करने के लिए मैं एक नियम कैसे तैयार कर सकता हूं ? क्या कोई और तरीका है जो मैं यह कर सकता हूं? शायद एक सबप्रपोर्ट?


1
यह बहुत देर हो सकती है, क्योंकि यह क्यू अभी एक सप्ताह पुराना है। मैं इसे नमूना इनपुट, आवश्यक आउटपुट और एक समाधान में आपके सर्वोत्तम प्रयास के रूप में फिर से लिखूंगा (मुझे पता है कि सीआर देव के रूप में आप बहुत सारे एम्बेडेड विजेट पर भरोसा करते हैं, जो पोस्टिंग को और अधिक कठिन बना देता है)। लेकिन जैसा कि, मैं कल्पना नहीं कर सकता कि वह समस्या क्या है जिसे आप विशेष रूप से हल करने की कोशिश कर रहे हैं। यदि आप कहते हैं कि "मुझे 2017-05-12.00: 00: 00Z मिल रहा है, लेकिन मुझे 2017-05-12.23: 59: 59" चाहिए, तो मुझे लगता है कि बहुत से लोगों को मदद करना आसान लगेगा। सौभाग्य।
शेल्टर

1
एक सरल समाधान शायद MS SQL में एक डेटाबेस दृश्य बनाना है जो अन्य तालिका की ओर इशारा करता है जहां रिपोर्ट डेटा प्राप्त करती है, लेकिन इसे केवल उन मानों को प्राप्त करने के लिए बताएं जो [घंटा] HH2 बजे से 10 बजे के बीच DATEPARTफ़ंक्शन का उपयोग कर रहे हैं। उदाहरण के लिए SELECT * FROM Table WHERE DATEPART(hh,[DateField]) BETWEEN 14 AND 22, दृश्य में कॉलम का उपयोग किए बिना स्पष्ट रूप से और फिर select expertरिपोर्ट को इंगित करने के लिए कि यह उससे चयनित दिनांक अवधियों के लिए डेटा है। एक और तरीका यह होगा कि एक ही T-SQL क्वेरी को CR SQL कमांड बनाया जाए लेकिन एक SQL व्यू बहुत बेहतर प्रदर्शन कर सकता है।
दलाल जूस आईटी

1
तो आप जिस SQL ​​क्वेरी को SQL VIEW या CR SQL कमांड ऑब्जेक्ट के रूप में खेलना चाहते हैं, वह स्पष्ट होना चाहिए SELECT * FROM Table WHERE DATEPART(hh,[DateField]) BETWEEN 14 AND 22और आप select column1, column2 FROM ~इसके बजाय SQL दृश्य में क्वेरी के साथ विशिष्ट हो सकते हैं *
दलाल जूस आईटी

1
मेरा उदाहरण एक विशिष्ट उदाहरण था। मैं उपयोगकर्ता को शुरू और अंत समय निर्धारित करने देना चाहता हूं, यही वजह है कि मैंने मापदंडों का उल्लेख किया है। मैं एसक्यूएल व्यूज के बारे में इतना नहीं जानता, लेकिन मैं अनुमान लगा रहा हूं कि अगर मैं कुछ ऐसा पेस्ट करता हूं, तो यह सांख्यिकीय रूप से सेट है और रिपोर्ट चलाने वाले उपयोगकर्ता इसे मक्खी पर नहीं बदल सकते। मैं उस संबंध में प्रश्न को और स्पष्ट करने के बारे में देखूंगा।
येटनऑनरेमग्रैंडयूजर

ठीक है, अगर उपयोगकर्ता समय सीमा लेने के लिए काम नहीं करेंगे। यह शायद संग्रहित खरीद के लिए एक नौकरी हो सकती है। मेरे पास अब सीआर नहीं है और यह एक वर्ष या तो हो गया है क्योंकि मैंने इसके साथ कुछ भी परीक्षण करने के लिए गड़बड़ किया है, लेकिन मुझे लगा कि मैं संभावित एसक्यूएल स्तर के समाधान के साथ मदद कर सकता हूं यह मानकर कि आप सीआर भाग सेटअप प्राप्त कर सकते हैं और टीएसक्यूएल को अनुमति देने के लिए कॉन्फ़िगर किया गया है। फ़िल्टरिंग, आदि सुनिश्चित नहीं हैं कि आप एक संग्रहीत प्रॉप का निर्माण कर सकते हैं और प्रारंभ और अंत समय मापदंडों में पास कर सकते हैं और उन मूल्यों के लिए सीआर डायनामिक प्रॉम्प्ट है, आदि, लेकिन मुझे लगा कि मैं कम से कम आपको कुछ विचार दे सकता हूं ... सौभाग्य परवाह किए बिना।
दलाल जूस आईटी
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.