2012-10-10 15 views
16

में अपने किसी भी कॉलम में शून्य मानों के साथ पंक्तियों को फ़िल्टर करने के लिए कैसे मैं नल मान या खाली कॉलम वाले पंक्तियों के बिना आउटपुट फ़िल्टर करना चाहता हूं। मैं एसक्यूएल सर्वर 2012 का उपयोग कर रहा हूं, एसएस2005 में 'खाली' नामक कोई विकल्प नहीं है जहां मैं पंक्तियों को फ़िल्टर कर सकता हूं। मैंने अभिव्यक्ति के बाद भी कोशिश की लेकिन यह मुझे सही आउटपुटएसएसआरएस

=IsNothing(Fields!ABC.Value)!= True 
=Fields!ABC.Value = '' 

कृपया समाधान का सुझाव दें।

+1

यदि आप डेटासेट या टैबलेट गुणों (फ़िल्टर टैब) के माध्यम से फ़िल्टर लागू करते हैं तो आपकी स्थिति अभिव्यक्ति - फ़ील्ड की तरह लग सकती है! एबीसी.वेल्यू, ऑपरेटर <>, वैल्यू = कुछ भी नहीं – user1578107

उत्तर

24

हम अभिव्यक्ति में विधि isNothing का उपयोग करना चाहिए, एक बूलियन के रूप में पाठ बदलने के लिए और फिर मूल्य "सही" हो जाएगा

उदाहरण के लिए

:

Expression 
=IsNothing(Fields!TestA.Value)<>"True" 
Operator 
= 
Value 
="True" 
+9

फ़िल्टर संवाद में, वैल्यू फ़ील्ड में, यदि आप उपयोग करते हैं = "सही" तो वह एक स्ट्रिंग है और एक त्रुटि उत्पन्न करेगी क्योंकि इसकी तुलना आपकी बूलियन अभिव्यक्ति से नहीं की जा सकती है। आपको केवल निरंतर सत्य का उपयोग करने की आवश्यकता है और इसे सीधे मूल्य फ़ील्ड में लिखें। – Davos

1

संपादित करें SQL क्वेरी, इतना है कि यह होगा समूह में समूह के लिए कुल मान वापस नहीं लौटाएं, लेकिन इसे एक डमी मान वापस कर दें; उदाहरण के लिए: ISNULL (कॉलम ए, 'डमी')

कॉलम समूह परिभाषा में एक फ़िल्टर जोड़ें: कॉलम ए <> 'डमी'।

25
  • अप tablix या समूह गुण "फ़िल्टर" के लिए
  • स्विच खींचो
  • में एक नया फ़िल्टर
  • अभिव्यक्ति जोड़े सेट करें:

    =IsNothing(Fields!YourFieldHere.Value)

  • सेट "बूलियन" टाइप करें (नीचे स्क्रीनशॉट देखें) अन्यथा आपको "एक तुलना नहीं मिल सकती ई प्रकार के बूलियन और स्ट्रिंग "त्रुटि" डेटा।

  • सेट false

screenshot of grouping dialog, higlighting expression type setting

के लिए मूल्य यह दोनों पंक्तियों और समूहों छानने के लिए काम करता है।

+0

यह मेरे लिए काम नहीं कर रहा है। मुझे 'टैबलेटिक्स' टैबलेटिक्स 1 के लिए फ़िल्टरवैल्यू एक्सप्रेशन मिल रहा है, "गलत" मान है, जो मान्य बूलियन मान ' –

+0

नहीं है, मुझे बहुत देर हो सकती है। क्या आपने टेक्स्ट से बूलियन को टाइप किया है जैसा कि @ टिम अबेल से ऊपर स्क्रीनशॉट में है। – Abe