2011-11-07 7 views
9

हम एमवीसी 3 में हमारे मौजूदा एएसपी.NET एप्लिकेशन में अपग्रेड विकसित करना चाहते हैं। हमारा वर्तमान ऐप केवल आईई आधारित है और अपग्रेड ब्राउज़र तटस्थ होगा, यानी इसे आईई 8 +, फ़ायरफ़ॉक्स, क्रोम और सफारी में काम करना चाहिए।एसक्यूएल रिपोर्टिंग सेवाओं के लिए दर्शक की रिपोर्ट करने के लिए वैकल्पिक

हमारे पास मुख्य मुद्दा यह है कि हमारे पास SQL ​​रिपोर्टिंग सेवा 2008 R2 के आधार पर कई रिपोर्ट हैं और हम रिपोर्ट व्यूअर 2010 नियंत्रण का उपयोग करते हैं।

हम वास्तव में, क्योंकि इस आगे बढ़ते हुए प्रयोग करना चाहते हैं:

  • यह गाड़ी है
  • (उदाहरण के लिए, हम SP1 संस्करण का उपयोग नहीं कर सकते हैं कभी कभी कि हमारी साइट टूट जाता है एचटीएमएल renders के रूप में) यह गैर आईई ब्राउज़रों के साथ मुद्दों मिला है
  • यह Viewstate पर आधारित है (उदाहरण के लिए IterationId यूआरएल बग को लापता हो)
  • यह नियंत्रण से गाया उत्पादन के कुछ स्थानीय बनाना मुश्किल है

मैं वास्तव में इसे एक विकल्प के साथ प्रतिस्थापित करना चाहता हूं (भले ही इसका व्यूस्टेट आधारित है और हमें एमवीसी के साथ समाधान में हैक करना है) लेकिन मैं एक नहीं ढूंढ पा रहा हूं। क्या वहां कोई वैकल्पिक नियंत्रण है जो रिपोर्टिंग सेवा रिपोर्ट प्रस्तुत करता है? यह दर्शक है जिसे हम प्रतिस्थापित करना चाहते हैं, आरएस नहीं।

+0

दूसरों अब तक, MVC के लिए एक नहीं मिला है के लिए अपने ही टिप्पणी अपडेट करने के लिए, लेकिन रुपये के लिए वेब सेवाओं इंजन में तलाश कर दिया गया। यह एक विकल्प हो सकता है। – GrahamB

+0

मैं भी रिपोर्ट व्यूअर से भागने की कोशिश में व्यस्त हूं। मैं डब्ल्यूसीएफ सेवा का उपयोग कर अधिकांश आवश्यक कार्यक्षमता प्राप्त करने में कामयाब रहा हूं। हालांकि एकमात्र समस्या का सामना करना पड़ा है, हालांकि लिंक की गई रिपोर्टों को संभालना है। कृपया अपने अनुभव साझा करें क्योंकि यह वेब अनुप्रयोगों में एसएसआरएस को एकीकृत करने के सबसे महत्वपूर्ण पहलुओं में से एक है। – ntombela

+0

मैं इसे करने की कोशिश नहीं की है, लेकिन एक बार आप लिंक किए गए रिपोर्ट के लिए एपीआई को ट्रैक यह सीधे आगे लगता है: https://msdn.microsoft.com/en-us/library/ms152864.aspx –

उत्तर

1

हम बाहर मौजूदा वेबसाइट के साथ SSRS एकीकृत करने के लिए चाहता था, लेकिन SSRS UI का उपयोग नहीं करना चाहता था (यह बहुत ज्यादा यह है खुद की वेबसाइट है के बाद से) और हम नहीं चाहते थे कि रिपोर्ट दृश्य का उपयोग करता है नियंत्रण (हालांकि हमारे पास एएसपी.नेट वेबसाइट है, रिपोर्ट व्यूअर नियंत्रणों में आपके इच्छित काम करने के लिए सीमित विकल्प हैं)।समाधान है कि हम के लिए काम किया था:

  1. कॉल SSRS वेब सेवा रिपोर्ट की एक सूची प्रदान, और एक ड्रॉप डाउन सूची में मान ड्रॉप करने।

  2. ड्रॉप डाउन सूची से रिपोर्ट पथ पढ़ें और SSRS वेब सेवा है कि चुनी हुई रिपोर्ट के मापदंडों रिटर्न मिलता है।

  3. इनपुट बिल्ड क्या # 2 में वापस आ गया के आधार पर नियंत्रित करता है।

  4. उपयोगकर्ता इनपुट मानों की आपूर्ति और फ़ॉर्म सबमिट करें।

  5. पेज SSRS वेब सेवा करने के लिए मूल्यों से गुजरता है और एक पीडीएफ, एक्सेल, वर्ड दस्तावेज़ क्या उपयोगकर्ता ने अनुरोध के आधार पर वापस हो जाता है।

यह सब है कि मुश्किल नहीं था (यह & परीक्षण कोड करने के लिए < 40-घंटे लगे) और वास्तव में अच्छी तरह से काम करता है। सबसे बड़ी समस्या हमारे पास SSRS वेब सेवा के विभिन्न संस्करणों समर्थन कर रहा है के रूप में आप SSRS के एक संस्करण से दूसरे में जाने।

मेरा अनुमान है कि अगर तुम उत्पादन के लिए HTML के रूप में रिपोर्ट करना चाहता था और पंप यूआई के लिए, आप ऐसा भी कर सकता है।

जाहिर है अगर आप,, रिपोर्ट गुणों को संपादित आदि सदस्यता बनाने के लिए सभी उपयोगकर्ताओं के लिए चाहते हैं - आप क्या करने के लिए अतिरिक्त काम करना होगा।

0

मैं आपसे सहमत हूं। यह वास्तव में एक छोटी गाड़ी नियंत्रण है। मैंने अपने एचटीएमएल आउटपुट को ट्विक करने के लिए अपनी डॉक्टरेट सेटिंग्स के साथ खेला।

यदि आप वाणिज्यिक लोगों को आजमा सकते हैं, तो टेलीरिक नियंत्रण में एक नज़र डालें।

भी इस चर्चा को देखने के:

http://siddhumehta.blogspot.com/2011/07/ssrs-reportviewer-webpart-control.html

+1

मैं भी जब कोशिश कर मेमोरी लीक पाया WPF में रिपोर्ट व्यूअर के माध्यम से बड़ी मात्रा में रिपोर्ट करने के लिए। देखें http://www.jenasysdesign.com.au/dnn/Blogs/tabid/71/Post/149/WPF-4-SQL- सर्वर- रिपोर्टिंग- सेवा- प्रोसेसिंग- एप्लिकेशन- स्मृति- लीक –

0

आप सक्षम हो सकता है बस HTML संस्करण देखने और सेट नियंत्रण के बजाय एक बाकी यूआरआई में सेवा से बंधे होने के लिए। ईजी:

http:// (servername)/(ReportServer)/(PathtoReport)&(Parameter=Value)&rs:Command=Render 

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

यदि आप वास्तव में अपने एएसपी.NET कोड में VB.NET या C# .NET में गोता लगाने के लिए भी चाहते हैं तो भी हो सकता है। हो सकता है कि आप रिपोर्टिंग सेवाओं के बाइट सरणी को पीडीएफ या एचटीएमएल के प्रकार में प्रस्तुत कर सकें, फिर दर्शक को भी प्रस्तुत करें। यह एक व्यवहार्य समाधान नहीं हो सकता है क्योंकि मुझे यकीन है कि आपके इच्छित स्तर के बारे में निश्चित नहीं है, फिर एक मौजूदा कॉल के केवल एक वेब भाग बनाम मालिकाना प्रारूप में बाइनरी ऑब्जेक्ट पेश करने का प्रयास करें। यह अधिक काम हो सकता है और आप जिस प्रकार के पीडीएफ, एक्सेल, एचटीएमएल इत्यादि का चयन करते हैं, उसके प्रतिपादन के लिए और अधिक अनुरूप होंगे लेकिन यह किया जा सकता है। मैंने मूल रूप से एसएसआरएस सेवा से प्रॉक्सी कक्षा बनाने के बाद कॉल करने के लिए तर्क के साथ एक लाइब्रेरी प्रोजेक्ट बनाया। कि यहां पर अधिक: Programmatically Export SSRS report from sharepoint using ReportService2010.asmx