<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://sqlserver.ro/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>T-SQL</title><link>http://sqlserver.ro/forums/15/ShowForum.aspx</link><description /><dc:language>en</dc:language><generator>CommunityServer 2.1 SP2 (Build: 61129.1)</generator><item><title>Re: Error Message</title><link>http://sqlserver.ro/forums/thread/3969.aspx</link><pubDate>Fri, 08 Feb 2008 09:09:00 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:3969</guid><dc:creator>ggciubuc</dc:creator><slash:comments>0</slash:comments><comments>http://sqlserver.ro/forums/thread/3969.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=15&amp;PostID=3969</wfw:commentRss><description>&lt;P&gt;Fluxul de activitati care initial era rezolvat de proceduri/subproceduri aici in package este inlocuit cu flux de obiecte(taskuri) DTS sau SSIS asa ca tratarea erorilor este facilitata de instrumentele specifice mediului.&lt;/P&gt;</description></item><item><title>Re: Error Message</title><link>http://sqlserver.ro/forums/thread/3967.aspx</link><pubDate>Fri, 08 Feb 2008 08:59:40 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:3967</guid><dc:creator>cretzu</dc:creator><slash:comments>0</slash:comments><comments>http://sqlserver.ro/forums/thread/3967.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=15&amp;PostID=3967</wfw:commentRss><description>Sper ca am inteles mesajul bine. Spui ca indiferent in ce subprocedura imi da ceva eroare (poate chiar in prima) sa execut pana la final procedura mare?&lt;br&gt;Ideea este sa ies cand intalnesc prima eroare. Oricum chestia cu prima se face cel m simplu asa cum am facut-o deja adica cu o variabila de output in fiecare subprocedura care sa imi &lt;br&gt;intoarca eroare.&lt;br&gt;Ideea de la care am plecat este inlocuirea la nivelul subprocedurilor a bucatilor SET mesaj = ERROR_MESSAGE() cu ceva care sa mearga pe SQL 2000.&lt;br&gt;Folosind DTS sau SSIS ar trebui in mod normal sa am doua pachete care in functie de versiunea de SQL de la client sa ii dau pachetul care ii merge.&lt;br&gt;&lt;br&gt;&lt;br&gt;Daniel.&lt;br&gt;</description></item><item><title>Re: Error Message</title><link>http://sqlserver.ro/forums/thread/3966.aspx</link><pubDate>Fri, 08 Feb 2008 08:47:41 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:3966</guid><dc:creator>katalyn</dc:creator><slash:comments>0</slash:comments><comments>http://sqlserver.ro/forums/thread/3966.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=15&amp;PostID=3966</wfw:commentRss><description>&lt;P&gt;Să nu uităm de varianta de &lt;A href="http://sqlserver.ro/forums/thread/592.aspx"&gt;aici&lt;/A&gt; pentru documentaţii.&lt;/P&gt;
&lt;P&gt;Cât despre proceduri:&lt;/P&gt;
&lt;P&gt;Ai putea ca în procedura &lt;STRONG&gt;mare &lt;/STRONG&gt;(cea care apelează procedurile celelalte) să creezi mai întâi o tabela temporară iar apoi, la execuţia fiecărei proceduri, să adaugi în această tabelă, erorile întâlnite. După execuţia procedurilor de verificare dar înainte de terminarea execuţiei procedurii &lt;STRONG&gt;mari &lt;/STRONG&gt;să verifici &lt;STRONG&gt;&lt;EM&gt;conţinutul&lt;/EM&gt; &lt;/STRONG&gt;acestei tabele. Dacă tabela conţine ceva, întorci un mesaj spre utilizator... iar dacă nu... treci mai departe cu importul.&lt;/P&gt;
&lt;P&gt;Totuşi, această sarcină este recomandată a se executa cu DTS respectiv SSIS.&lt;/P&gt;</description></item><item><title>Re: Error Message</title><link>http://sqlserver.ro/forums/thread/3961.aspx</link><pubDate>Tue, 05 Feb 2008 18:47:39 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:3961</guid><dc:creator>ggciubuc</dc:creator><slash:comments>0</slash:comments><comments>http://sqlserver.ro/forums/thread/3961.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=15&amp;PostID=3961</wfw:commentRss><description>Eu as incepe cu &lt;A href="http://www.sqldts.com/"&gt;http://www.sqldts.com/&lt;/A&gt;&amp;nbsp;si &lt;A href="http://www.sqlis.com/"&gt;http://www.sqlis.com/&lt;/A&gt;</description></item><item><title>Re: Error Message</title><link>http://sqlserver.ro/forums/thread/3952.aspx</link><pubDate>Tue, 05 Feb 2008 14:43:15 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:3952</guid><dc:creator>Diana</dc:creator><slash:comments>0</slash:comments><comments>http://sqlserver.ro/forums/thread/3952.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=15&amp;PostID=3952</wfw:commentRss><description>&lt;P&gt;Poti incepe cu BOL si cu&lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.databasejournal.com/article.php/1503191"&gt;http://www.databasejournal.com/article.php/1503191&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;"Votez" pentru o solutie SSIS/DTS. Un beneficiu interesant pentru tine ar fi si posibilitatile de tratare a erorilor.&lt;/P&gt;</description></item><item><title>Re: Error Message</title><link>http://sqlserver.ro/forums/thread/3948.aspx</link><pubDate>Tue, 05 Feb 2008 12:24:57 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:3948</guid><dc:creator>cretzu</dc:creator><slash:comments>0</slash:comments><comments>http://sqlserver.ro/forums/thread/3948.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=15&amp;PostID=3948</wfw:commentRss><description>&lt;P&gt;Voi incerca :) numa ca nu sunt familiar cu tool-urile oferite de SQL Server.&lt;/P&gt;
&lt;P&gt;Daca cumva ai ceva documentatie pentru SSIS te rog ... &lt;/P&gt;
&lt;P&gt;Eu acu incerc sa imi fac rost de ceva carti de la MS pentru SQL 2005 si ns daca le comand de pe Amazon cat platesc transportul.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Daniel.&lt;/P&gt;</description></item><item><title>Re: Error Message</title><link>http://sqlserver.ro/forums/thread/3947.aspx</link><pubDate>Tue, 05 Feb 2008 12:06:45 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:3947</guid><dc:creator>ggciubuc</dc:creator><slash:comments>0</slash:comments><comments>http://sqlserver.ro/forums/thread/3947.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=15&amp;PostID=3947</wfw:commentRss><description>&lt;P&gt;Eu asa as face. In plus codul scris pt sp se poate refolosi pt ca acesta se poate rula in cadrul taskurilor din package!&lt;/P&gt;</description></item><item><title>Re: Error Message</title><link>http://sqlserver.ro/forums/thread/3946.aspx</link><pubDate>Tue, 05 Feb 2008 11:41:17 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:3946</guid><dc:creator>cretzu</dc:creator><slash:comments>0</slash:comments><comments>http://sqlserver.ro/forums/thread/3946.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=15&amp;PostID=3946</wfw:commentRss><description>Salut,&lt;br&gt;&lt;br&gt;Putem sa incercam. Ideea este ca opentru SQL 2005 este deja scris tot codul din spate (proc stocate) si exista clienti care folosesc SQl 2000. &lt;br&gt;Pentru acestia trebuie ca acele proceduri sa mearga, ca sa nu m rescriem.&lt;br&gt;Oricum ideea care evhiculata de tine ar fi dezvoltatea unui DTS pentru SQL 2000 si un SSIS pentru SQL 2005, si in functie de client dam ceea ce trebuie.&lt;br&gt;&lt;br&gt;Merci, o sa ma documentez pentru ca nu prea am experienta in DTS -uri.&lt;br&gt;&lt;br&gt;&lt;br&gt;Daniel&lt;br&gt;</description></item><item><title>Re: Error Message</title><link>http://sqlserver.ro/forums/thread/3941.aspx</link><pubDate>Tue, 05 Feb 2008 08:30:09 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:3941</guid><dc:creator>ggciubuc</dc:creator><slash:comments>0</slash:comments><comments>http://sqlserver.ro/forums/thread/3941.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=15&amp;PostID=3941</wfw:commentRss><description>Vad ca e vorba de un import de date asa ca ma gandesc la DTS; ati incercat varianta dezvoltarii unui package DTS? Spun asta pt ca lucrurile se misca mult mai natural cand e vorba de utilizarea unui tool ETL cum e DTS-ul la SQL 2000 sau SSIS la 2005.</description></item><item><title>Re: Error Message</title><link>http://sqlserver.ro/forums/thread/3938.aspx</link><pubDate>Mon, 04 Feb 2008 14:58:24 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:3938</guid><dc:creator>cretzu</dc:creator><slash:comments>0</slash:comments><comments>http://sqlserver.ro/forums/thread/3938.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=15&amp;PostID=3938</wfw:commentRss><description>Pai cam care este ideea in mare.&lt;br&gt;&lt;br&gt;Vreau sa import niste date dintr-un anumit fisier, adica sa fac bulk insert. Datele primite le bag inntr-un tabel unprocessed din BD dupa care le impart in functie de strunctura BD in mai multe tabele.&lt;br&gt;Totul se face prin pproceduri stocate. &lt;br&gt;Ideea este ca vreau ca sa pot returna mesaje la user prin care sa se afiseaze ce constrangeri sunt incalcate pentru a putea sa modific datele din fisierul de import.&lt;br&gt;&lt;br&gt;De asta tot importul aceasta este format dintr-o procedura stocata care apeleaza inca cam 5-6 proceduri din interiorul ei.&lt;br&gt;Faza este ca erori pot sa primesc in fiecare dintre aceste subproceduri iar in cea principala aduc mesajul la felcum am scris in primul post.&lt;br&gt;&lt;br&gt;in procedura principala fiecare dintre subproceduri sunt incadrate in IF-uri iar daca s-a aruncat o eroare&amp;nbsp; sa nu m intre in urmatoarele. Am ceva de genu&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; IF LEN(@eroare) = 0 &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; BEGIN&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; PRINT 'Start Import to unprocessed ' + CAST(GetDate() AS VARCHAR)&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; set @start = GetDate()&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; EXEC @SPTransfer @eroare OUTPUT&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; set @endExec = GetDate()&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; Print '&amp;nbsp;&amp;nbsp; Execution Time ' + Cast(Datediff(second,@start,@endExec) as varchar) +' seconds'&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; PRINT 'END Step_2_To_Unprocessed ' + CAST(GetDate() AS VARCHAR)&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; END&lt;br&gt;&lt;br&gt;&lt;br&gt;iar la finalul procedurii principale am un raiseerror&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; IF LEN(@eroare) &amp;lt;&amp;gt; 0 &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; RAISERROR(@eroare, 16, 1)&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;Toate aceste proceduri ar tre sa ruleze fara nicio problema si cu cam acelasi rezultat pe SQL 2000 acum merg pe 2005&lt;br&gt;Daca aveti vreo idee .... plss...&lt;br&gt;&lt;br&gt;Daniel.&lt;br&gt;&lt;br&gt;</description></item><item><title>Re: Error Message</title><link>http://sqlserver.ro/forums/thread/3937.aspx</link><pubDate>Mon, 04 Feb 2008 14:42:46 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:3937</guid><dc:creator>xmldeveloper</dc:creator><slash:comments>0</slash:comments><comments>http://sqlserver.ro/forums/thread/3937.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=15&amp;PostID=3937</wfw:commentRss><description>&lt;P&gt;Depinde de eroare.&lt;/P&gt;
&lt;P&gt;O eroare poate cauza terminarea instructiunii care a cauzat-o, a tranzactiei curente, a batch-ului curent, a conexiunii si in cazuri extreme inchiderea serverului.&lt;/P&gt;
&lt;P&gt;Cititi mai multe aici: &lt;A href="http://www.sommarskog.se/error-handling-I.html#textretrieve"&gt;http://www.sommarskog.se/error-handling-I.html#textretrieve&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description></item><item><title>Re: Error Message</title><link>http://sqlserver.ro/forums/thread/3936.aspx</link><pubDate>Mon, 04 Feb 2008 14:41:45 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:3936</guid><dc:creator>rsocol</dc:creator><slash:comments>0</slash:comments><comments>http://sqlserver.ro/forums/thread/3936.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=15&amp;PostID=3936</wfw:commentRss><description>Nu prea ai cum să faci chestia asta în SQL 2000. Cel mai apropiat lucru ar fi:&lt;br&gt;&lt;br&gt;SET @errorMessage=(SELECT description FROM master..sysmessages WHERE error=@@ERROR)&lt;br&gt;&lt;br&gt;Dar asta nu îţi returnează parametrii erorii, ci doar template-ul mesajului, de exemplu:&lt;br&gt;&lt;i&gt;%ls statement conflicted with %ls %ls constraint '%.*ls'. The conflict occurred in database '%.*ls', table '%.*ls'%ls%.*ls%ls.&lt;/i&gt;&lt;br&gt;în loc de:&lt;br&gt;&lt;i&gt;DELETE statement conflicted with COLUMN REFERENCE constraint 'FKName'. The conflict occurred in database 'DatabaseName', table 'TableName', column 'ColumnName'.&lt;/i&gt;&lt;br&gt;&lt;br&gt;Totuşi, de ce ai nevoie de chestia asta? În mod normal, textul erorii ajunge la client şi poţi să faci acolo ce vrei cu el (să-l afişezi, să-l scrii într-un audit log, etc).&lt;br&gt;&lt;br&gt;Răzvan&lt;br&gt;</description></item><item><title>Error Message</title><link>http://sqlserver.ro/forums/thread/3935.aspx</link><pubDate>Mon, 04 Feb 2008 14:15:11 GMT</pubDate><guid isPermaLink="false">963f3a18-65dd-4aad-905c-b785cfe1d7c7:3935</guid><dc:creator>cretzu</dc:creator><slash:comments>0</slash:comments><comments>http://sqlserver.ro/forums/thread/3935.aspx</comments><wfw:commentRss>http://sqlserver.ro/forums/commentrss.aspx?SectionID=15&amp;PostID=3935</wfw:commentRss><description>Salut,&lt;br&gt;&lt;br&gt;Exista vreo cale prin care sa emulez cumva functia ERROR_MESSAGE() din SQL 2005 pe un SQL 2000 ?&lt;br&gt;Daca aveti vreo idee .... va rog ... spuneti-mi.&lt;br&gt;&lt;br&gt;Codul in SQL 2005 e ceva de genu ..&lt;br&gt;&lt;br&gt;inserez ceva intr-un tabel&lt;br&gt;dupa care &lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; IF @@ERROR &amp;lt;&amp;gt; 0 &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; BEGIN&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; SET @errorMessage = ERROR_MESSAGE()&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; RETURN&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; END &lt;br&gt;&lt;br&gt;merci.&lt;br&gt;</description></item></channel></rss>