<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; 1Cv8.0: проблемы работы с ADO]]></title>
		<link>http://forum.script-coding.com/viewtopic.php?id=46</link>
		<atom:link href="http://forum.script-coding.com/extern.php?action=feed&amp;tid=46&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «1Cv8.0: проблемы работы с ADO».]]></description>
		<lastBuildDate>Wed, 13 Sep 2006 19:24:30 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: 1Cv8.0: проблемы работы с ADO]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=598#p598</link>
			<description><![CDATA[<p>Два небольших замечания по работе с ADO + MS SQL Server, касающиеся не только 1С v8.0.</p><p>1. Если с помощью ADO выполняется не &quot;простой&quot; запрос (SELECT), а сиквельный скрипт из нескольких различных команд, что-нибудь наподобие такого:<br /></p><div class="codebox"><pre><code>CREATE TABLE #TempTable (&lt;...&gt;)
INSERT #TempTable EXEC My_Stored_Procedure
SELECT * FROM #TempTable
DROP TABLE #TempTable</code></pre></div><p>возвращаемый рекордсет может оказаться &quot;пустым&quot;. В этом случае часто помогает вставка в начало сиквельного скрипта строки:</p><div class="codebox"><pre><code>SET NOCOUNT ON</code></pre></div><p>2. Кроме того, при исполнении подобных сиквельных скриптов данные могут возвращаться во <strong>втором</strong> рекордсете, т.е. после получения данных надо использовать метод NextRecordset(). Подробнее об этом и других методах можно прочитать в статье <a href="http://www.script-coding.com/ADO.html">Использование библиотеки ADO (Microsoft ActiveX Data Object)</a>.</p>]]></description>
			<author><![CDATA[null@example.com (The gray Cardinal)]]></author>
			<pubDate>Wed, 13 Sep 2006 19:24:30 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=598#p598</guid>
		</item>
		<item>
			<title><![CDATA[1Cv8.0: проблемы работы с ADO]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=67#p67</link>
			<description><![CDATA[<p>Восьмая версия 1С не совсем корректно работает с ADO. Например, следующий код правильно работать не будет:<br /></p><div class="codebox"><pre><code>Rec = Новый COMОбъект(&quot;ADODB.Recordset&quot;);
Rec.ActiveConnection = &quot;Provider=SQLOLEDB;Data Source=ServName;InitialCatalog=master;UID=sa;PWD=pass&quot;;</code></pre></div><p>Присвоения свойству &quot;ActiveConnection&quot; происходить не будет, и при этом, как ни странно, не будет никаких ошибок. В этом случае свойству рекордсета &quot;ActiveConnection&quot; можно передавать <strong>только</strong> объект Connection, и нельзя передавать строку (а в 1С 7.7 можно передавать строку). Абсолютно та же петрушка происходит со свойством рекордсета &quot;Source&quot; (нужен только объект Command, никаких строк). Можно предположить, что 1С 8.0 плохо работает со свойствами COM-объектов, допускающими присвоение разных типов. Кстати, в 1С 7.7 в момент присвоения строки свойству рекордсета &quot;ActiveConnection&quot; эта строка автоматически преобразуется в объект Connection, что видно в отладчике (тип значения - &quot;OLE._Connection&quot;). В 1С 8.0 этого не происходит.</p>]]></description>
			<author><![CDATA[null@example.com (The gray Cardinal)]]></author>
			<pubDate>Sun, 09 Jul 2006 08:50:04 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=67#p67</guid>
		</item>
	</channel>
</rss>
