2009-06-17 8 views
7

में खाली सब्रेपोर्ट्स को कैसे दबाया जाए मैं एसएसआरएस 2008 में एक 'मास्टर' रिपोर्ट बना रहा हूं जो किसी व्यक्ति के बारे में अन्य रिपोर्टों का सहयोग करता है। कभी-कभी अन्य सभी रिपोर्ट प्रासंगिक नहीं होती हैं और जैसे कुछ भी वापस नहीं आती है। मैं इसे मास्टर रिपोर्ट से बाहर करने में सक्षम होना चाहता हूं, इसलिए यह एक खाली पृष्ठ नहीं छोड़ता है।एसएसआरएस 2008

मुझे 'नो-पंक्ति-संदेश' सुविधा के बारे में पता है, लेकिन "इस व्यक्ति के लिए लागू नहीं है" वाला एक संपूर्ण पृष्ठ शायद ही सबसे अच्छा समाधान है!

अनिवार्य रूप से मैं यह निर्धारित करने का एक तरीका ढूंढ रहा हूं कि कोई सब्रेपोर्ट 'खाली' है या दृश्यता अभिव्यक्ति में इसका उपयोग करें।

किसी भी मदद के सबसे

उत्तर

13

ठीक सराहना की, तो मैं यह अब समझ मिल गया है। जवाब उपचुनाव को आयताकार में रखना है। फिर कुछ इस तरह करने के लिए आयत की दृश्यता सेट:

=IIF(First(Fields![SOMEFEILD].Value, "[SOMEDATASET]") IS NOTHING, TRUE, FALSE) 

कहाँ [SOMEDATASET] एक डाटासेट एक subreport को आबाद करने के समान ही भर जाती है। फिर यदि सब्रेपोर्ट खाली है, तो [SOMEDATASET] भी खाली होगा, और अधिक बिंदु पर, फ़ील्ड [SOMEFEILD]NOTHING के बराबर होगा।

बाडा-बिंग! एक रिपोर्ट जो पेपर बर्बाद करने वाले खाली पृष्ठों से घिरा नहीं है।

नोट: इस दृष्टिकोण के लिए एक बुरा दुष्प्रभाव है, उसमें, SQL सर्वर एक ही जानकारी दो बार भेज देगा, एक बार सबरेपोर्ट के डेटासेट को पॉप्युलेट करने के लिए, और फिर रिपोर्ट में डुप्लिकेट डेटासेट को पॉप्युलेट करने के लिए। मेरे लिए, यह स्वीकार्य है, अन्य लोग इसके बारे में जानना चाहते हैं।

+0

अच्छी नौकरी। (15 char सीमा को पूरा करने के लिए बफर) – jgallant

+3

मेरे लंच ब्रेक के दौरान समस्या से निपटने के बाद, मैंने फैसला किया है कि सटीक उसी डेटा को दो बार वापस करना * कभी अच्छा विचार नहीं है। मैं एक संग्रहित प्रक्रिया लिखने जा रहा हूं जो सबरेपोर्ट्स को पॉप्युलेट करने के लिए उपयोग की जाने वाली संग्रहीत प्रक्रियाओं की पंक्ति गणना देता है। फिर यह देखने के लिए जांच करें कि क्या ये गणना 0 हैं या नहीं और तदनुसार उचित उप-रिपोर्ट की दृश्यता निर्धारित करें। – Brian

+2

इस विचार के लिए धन्यवाद, यदि सब्रेपोर्ट कुछ भी नहीं देता है तो मुझे टैबलेट रिपोर्ट में एक सेल को भूरे रंग की आवश्यकता होती है। तो मैंने सिर्फ एक आयत में आयत डाल दिया और आयत के पृष्ठभूमि रंग को भूरे रंग में सेट किया। एसएसआरएस के डिफ़ॉल्ट रूप से मुझे एक्सप्रेशन का उपयोग करने की भी आवश्यकता नहीं थी, अगर कोई सब्रेपोर्ट कुछ भी नहीं देता है तो कुछ भी नहीं लौटाता है। जब मैंने अपनी रिपोर्ट मुद्रित की थी तो एकमात्र समस्या यह थी कि उसने ग्रे सेल मुद्रित या पीडीएफ पर नहीं दिखाया (लेकिन इसे स्क्रीन पर दिखाया गया था), इसलिए मैंने बस एक सब्रेपोर्ट के लिए कोई पंक्ति पाठ सेट नहीं किया है = सीएचआर (32) और यह चाल है । विचार के लिए धन्यवाद! – mishkin