2009-04-03 20 views
5

मुझे पता चला है कि SQL रिपोर्टिंग में कोई समस्या हो सकती है। मेरे पास मेरे पृष्ठ पर एक रिपोर्ट व्यूअर है और मैं निम्नलिखित विधि का उपयोग कर पैरामीटर में भेज रहा हूं:एसक्यूएल रिपोर्टिंग: शून्य पैरामीटर

List<ReportParameter> myParams = new List<ReportParameter>(); 

myParams.Add(new ReportParameter("Start_Date", StartDate)); 
myParams.Add(new ReportParameter("End_Date", EndDate)); 

ReportViewer1.ServerReport.SetParameters(myParams); 

यह बहुत अच्छा काम करता है! लेकिन, जब मैं उस क्वेरी को चलाने के बाद, पैरामीटर को शून्य पर सेट करने का प्रयास करता हूं, तो यह इसे शून्य पर सेट करने के बजाय पिछले मान को बनाए रखता है।

List<ReportParameter> myParams = new List<ReportParameter>(); 

myParams.Add(new ReportParameter("Start_Date")); 
// I even tried omiting this line. 
//(This is the null parameter I wish to pass) 
myParams.Add(new ReportParameter("End_Date", EndDate)); 

ReportViewer1.ServerReport.SetParameters(myParams); 

किसी को भी चारों ओर एक काम के पार चलो गया है या यह काम कर पाने के लिए एक अलग तकनीक:

मैं एक और घटना है कि इसके बाद के संस्करण कोड के बाद निष्पादित करता है पर इस कोड को चलाने के?

अगर मैं प्रारंभ में पैरामीटर को परिभाषित नहीं करता हूं, तो पैरामीटर असाइन करें, फिर पैरामीटर को परिभाषित न करें, यह असाइन किए गए मान को बनाए रखता है। (ये सभी पोस्टबैक हैं, प्रत्येक घटना)

उत्तर

7

ऐसा कुछ करें..मैंने इसे अपनी छोटी परीक्षा परियोजना में परीक्षण किया है और ऐसा लगता है।

ReportViewer1.Reset(); 
में दो कॉल के बीच

:

List<ReportParameter> myParams = new List<ReportParameter>(); 

ReportParameter p = new ReportParameter("Start_Date"); 
p.Values.Add(null); 
myParams.Add(p); 

//myParams.Add(new ReportParameter("Start_Date")); 
// I even tried omiting this line. 
//(This is the null parameter I wish to pass) 
myParams.Add(new ReportParameter("End_Date", EndDate)); 

ReportViewer1.ServerReport.SetParameters(myParams); 
+1

यह शून्य की अनुमति देने के लिए सेट है। –

+1

यदि मैं प्रारंभ में पैरामीटर को परिभाषित नहीं करता हूं, तो पैरामीटर असाइन करें, फिर पैरामीटर को परिभाषित न करें, यह असाइन किए गए मान को बनाए रखता है। (ये सभी पोस्टबैक हैं, प्रत्येक घटना) –

0

क्या वे स्टार्टडेट & डेटटाइम प्रकार के एंडडेट वैरिएबल हैं? हो सकता है कि इस तथ्य के साथ ऐसा करना होगा कि डेटटाइम चर को शून्य पर सेट नहीं किया जा सकता है, वे डेटटाइम हैं। इसके बजाय MinValue। पैरामीटर को डेटटाइम पर सेट करने का प्रयास करें। MinValue और तदनुसार संभाल लें।

+0

नहीं वे तार हैं और वास्तव में तिथियां नहीं हैं। –

संबंधित मुद्दे