2008-09-17 8 views
5

मेरे पास एक डेटा परिवर्तन कार्य (डेटा पंप) के साथ एक डीटीएस पैकेज है। मैं डेटा संग्रहीत प्रक्रिया के परिणामों के साथ डेटा स्रोत करना चाहता हूं जो पैरामीटर लेता है, लेकिन डीटीएस परिणाम सेट का पूर्वावलोकन नहीं करेगा और डेटा रूपांतरण कार्य में कॉलम को परिभाषित नहीं कर सकता है।डीटीएस डेटा परिवर्तन कार्य के भीतर संग्रहीत प्रक्रियाओं का उपयोग कैसे करें?

क्या किसी ने इसे काम करने के लिए प्राप्त किया है?

चेतावनी: संग्रहीत प्रक्रिया दो अस्थायी तालिकाओं का उपयोग करता है (और निश्चित रूप से, उन्हें को साफ)

+0

क्या आपके यहां कोई जवाब आपके लिए काम करता है? –

उत्तर

0

आप वास्तव में उन्हें एक टेबल में लोड करने की आवश्यकता होगी, तो आप एक एसक्यूएल कार्य उस तालिका से ले जाने के लिए उपयोग कर सकते हैं यदि आपको अनुवाद करना होगा तो परम स्थान पर।

हालांकि, मुझे पता चला है कि डेटा को स्रोत करने के लिए संग्रहीत प्रक्रिया के साथ काम करते हुए, यह लगभग उसी समय अपने गंतव्य पर जाने के लिए तेज़ और आसान है!

0

नहीं, मैं केवल डीटीएस के साथ प्रक्रियाओं को संग्रहीत कर सकता हूं ताकि उन्हें स्क्रैप टेबल में राज्य को बचाया जा सके।

3

संग्रहीत प्रक्रिया पैरामीटर के लिए कुछ मान्य मान दर्ज करें ताकि यह कुछ डेटा चलाए और लौटाए (या यहां तक ​​कि कोई डेटा नहीं, आपको केवल कॉलम चाहिए)। फिर आप मैपिंग/आदि करने में सक्षम होना चाहिए .. फिर डिस्कनेक्ट किए गए संपादन करें और वास्तविक पैरामीटर मानों में बदलें (मुझे लगता है कि आप उन्हें वैश्विक चर से प्राप्त कर रहे हैं)।

DECLARE @param1 DataType1 
DECLARE @param2 DataType2 
SET @param1 = global variable 
SET @param2 = global variable (I forget exact syntax) 

--EXEC procedure @param1, @param2 
EXEC dbo.proc value1, value2 

असल में आप इसे इस तरह चलाते हैं ताकि प्रक्रिया परिणाम लौटा सके। मैपिंग करें, फिर दूसरे EXEC पर डिस्कनेक्ट किए गए संपादन टिप्पणी में और पहले EXEC को असम्बद्ध करें और इसे काम करना चाहिए।

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

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