<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; VBS: Передача объекта из функции.]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=8097&amp;type=atom" />
	<updated>2013-02-22T08:37:26Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=8097</id>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Передача объекта из функции.]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=69710#p69710" />
			<content type="html"><![CDATA[<p>В общем, разобрался и с этим. Спасибо за помощь. <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /></p>]]></content>
			<author>
				<name><![CDATA[mad_boy]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=29684</uri>
			</author>
			<updated>2013-02-22T08:37:26Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=69710#p69710</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Передача объекта из функции.]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=69707#p69707" />
			<content type="html"><![CDATA[<p>Сам нашел косяк: неправильная строка подключения была. <br />До сих пор непонятно, почему не отрабатывают условия при возникновении ошибки в теле функции?<br />Нарочно менял имя таблицы или пароль на заведомо неправильные и не получил ни одного сообщения, а только ошибки уже во время обработки результата, которого естественно нет.</p>]]></content>
			<author>
				<name><![CDATA[mad_boy]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=29684</uri>
			</author>
			<updated>2013-02-22T05:50:19Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=69707#p69707</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Передача объекта из функции.]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=69697#p69697" />
			<content type="html"><![CDATA[<p>Вопрос в том, как сделать этот код рабочим?<br />В любом раскладе получаю msgbox(&quot;No object passed!&quot;), хотя данные есть и другой выборкой я их получаю.</p>]]></content>
			<author>
				<name><![CDATA[mad_boy]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=29684</uri>
			</author>
			<updated>2013-02-21T22:33:00Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=69697#p69697</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Передача объекта из функции.]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=69695#p69695" />
			<content type="html"><![CDATA[<p><strong>mad_boy</strong>, так в чём вопрос?</p>]]></content>
			<author>
				<name><![CDATA[alexii]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=1844</uri>
			</author>
			<updated>2013-02-21T20:01:05Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=69695#p69695</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[VBS: Передача объекта из функции.]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=69693#p69693" />
			<content type="html"><![CDATA[<p>Доброго времени суток!<br />Пишу функцию для удобства выборки данных из базы MSSQL. Только желательно, чтобы результатом работы функции был объект с набором выбранных данных. Так вот не могу найти ни документации, ни похожих примеров.<br />Буду признателен за помощь. Вот то, что есть сейчас:<br /></p><div class="codebox"><pre><code>
        Function FetchDatabaseRecords(hostName, databaseName, userName, userPassword, tableName)
           Dim objConnection, sqlStatement, FetchData
           Set FetchDatabaseRecords = Nothing
           sqlStatement         = &quot;SELECT * from &quot; &amp; tableName
           On Error Resume Next
              Set objConnection = CreateObject(&quot;ADODB.Connection&quot;)
              If Err.Number &lt;&gt; 0 Then
                 msgbox &quot;Creating ADO connection Object&quot;
                 Exit Function
              End If
              objConnection.CommandTimeout = 3600
              objConnection.Open &quot;Provider=SQLOLEDB.1;Integrated Security=SSPI;&quot; &amp; _
                                 &quot;Persist Security Info=False;Initial Catalog=&quot; &amp; databaseName &amp; &quot;;&quot; &amp; _
                                 &quot;Data Source=&quot; &amp; hostName &amp; _
                                 &quot;,&quot; &amp; userName &amp; &quot;,&quot; &amp; userPassword
              If Err.Number &lt;&gt; 0 Then
                 msgbox &quot;Opening the &quot; &amp; DQ(databaseName) &amp; &quot; on &quot; &amp; DQ(hostName)
                 Exit Function
              End If
              Set FetchDatabaseRecords = CreateObject(&quot;ADODB.Recordset&quot;)
              If Err.Number &lt;&gt; 0 Then
                 msgbox &quot;Creating ADO recordset Object&quot;
                 Exit Function
              End If
              FetchDatabaseRecords.Open sqlStatement, objConnection
              If Err.Number &lt;&gt; 0 Then
                 msgbox &quot;Executing SQL Statement &quot; &amp; DQ(sqlStatement)
                 Exit Function
              End If
           &#039;On Error Goto 0
           Set objConnection = Nothing
        End Function
</code></pre></div><p>Вызов функции и обработка результатов (было несколько вариантов, это - последний):<br /></p><div class="codebox"><pre><code>
        Set TableData = FetchDatabaseRecords(sServerIP, sDataBaseName, sUserName, sPassWord, &quot;dbo.computers&quot;)
        If TableData Is Nothing Then
            msgbox(&quot;No object passed!&quot;)
        Else
            While Not TableData.EOF &#039;Перебираем результаты
                if isNull(TableData.Fields(0).Value)  then&#039; Что нибудь с ними вытворяем
                msgbox(&quot;NULL&quot;)
                Else
                msgbox(CStr(TableData.Fields(0).Value))
                end if
            TableData.MoveNext&#039; Идем к следующей записи
            Wend 
        End If
</code></pre></div>]]></content>
			<author>
				<name><![CDATA[mad_boy]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=29684</uri>
			</author>
			<updated>2013-02-21T19:25:45Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=69693#p69693</id>
		</entry>
</feed>
