2016-01-21 8 views
5

में चलाए जाने पर एसक्यूएल अमान्य वाक्यविन्यास रिपोर्टिंग मैंने एक SQL स्क्रिप्ट लिखी है जो SQL प्रबंधन स्टूडियो में सीधे निष्पादित होने पर ठीक चलती है। हालांकि, इसे एक स्रोत के रूप में पावर बीआई में दर्ज करते समय, यह रिपोर्ट करता है कि इसमें गलत वाक्यविन्यास है।पावर बीआई

  EXEC "dbo"."p_get_bank_balance" '2' 

हालांकि, वाक्य रचना जाहिरा तौर पर गलत है:

इस क्वेरी है? चित्र देखें:

enter image description here

किसी भी मदद की बहुत सराहना कर रहा है।

संपादित ***

जब दोहरे उद्धरण चिह्नों निकाल दिए जाते हैं:

enter image description here

+2

पर डिफ़ॉल्ट हैं, मुझे संदेह है कि यह उद्धृत पहचानकर्ता है। कोशिश करें [डीबीओ]। [P_get_bank_balance] –

+0

हाय @ टैबलेमेन, मैंने आपके सुझाव की कोशिश की, मुझे अभी भी वही त्रुटि मिल रही है। –

+0

स्पष्ट होने के लिए, आपने स्कीमा और टेबल नामों के आसपास से उद्धरण हटा दिए हैं? क्या आप स्क्रीनशॉट पोस्ट कर सकते हैं? –

उत्तर

4

मैं बिजली द्वि साइट पर ऑनलाइन पहले समय मिल ही समस्या:

http://community.powerbi.com/t5/Desktop/Use-SQL-Store-Procedure-in-Power-BI/td-p/20269

आपको DirectQuery मोड का उपयोग करना होगा, जिसमें यो आप संग्रहित प्रक्रियाओं के साथ डेटा से कनेक्ट नहीं कर सकते हैं। आयात मोड का उपयोग करके पुनः प्रयास करें या सीधे एक चयन कथन का उपयोग करें।

+1

स्टैक ओवरफ़्लो में आपका स्वागत है! हालांकि यह लिंक प्रश्न का उत्तर दे सकता है, लेकिन यहां उत्तर के आवश्यक हिस्सों को शामिल करना बेहतर है और संदर्भ के लिए लिंक प्रदान करना बेहतर है। लिंक किए गए पृष्ठ में परिवर्तन होने पर लिंक-केवल उत्तर अमान्य हो सकते हैं। इस आलेख पर एक नज़र डालें: [मैं एक अच्छा जवाब कैसे लिखूं] (http://stackoverflow.com/help/how-to-answer)। – ByteHamster

0

DirectQuery मोड में, PowerBI स्वचालित रूप से की तरह तो आपकी क्वेरी लपेटता: select * from ([your query]), और आप एक संग्रहीत प्रक्रिया अर्थात

select * from (exec dbo.getData) 

आपको त्रुटि ऊपर दिखने वाला मिल के साथ SSMS में यह प्रयास करें।

समाधान आप यानी अपने स्थानीय सर्वर से एक OPENQUERY कॉल में अपने संग्रहीत प्रक्रिया कॉल करने के लिए है

select * from OPENQUERY(localServer, 'DatabaseName.dbo.getData') 

किसी और चीज की होगी:

exec sp_serveroption @server = 'YourServerName' 
    ,@optname = 'DATA ACCESS' 
    ,@optvalue = 'TRUE' 

साथ OPENQUERY में स्थानीय सर्वर पहुँच सक्षम और फिर सुनिश्चित करें कि आप OPENQUERY में तीन-भाग नोटेशन का उपयोग करते हैं क्योंकि सभी कॉल master डेटाबेस

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