<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta content="text/html; charset=utf-8" http-equiv="Content-Type"></meta><link rel="stylesheet" type="text/css" href="__STYLE__"></link><meta name="GENERATOR" content="MSHTML 10.00.9200.16635"></meta></head><body>  
<p><span><span style="FONT-SIZE: 16pt; FONT-FAMILY: Verdana; TEXT-DECORATION: underline"><strong>GameWithFire</strong></span></span></p>
<p style="TEXT-ALIGN: left"><span><span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana">Библиотека вспомогательных классов для 1С:Предприятия 8.x. Исполнена по стандарту внешних компонент 1С:Предприятия.<br>Автор: Дмитрий Ощепков aka DmitrO (С)</span></span><span><br><span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana">Версия 1.3</span></span></p>
<p style="TEXT-ALIGN: left"><span style="FONT-SIZE: 14pt; FONT-FAMILY: Verdana"><strong>Описание классов</strong></span></p>
<p style="TEXT-ALIGN: left"><span style="FONT-FAMILY: Verdana"><strong>ADOUtils</strong></span></p>
<p style="TEXT-ALIGN: left"><span style="FONT-SIZE: 10pt"><span style="FONT-FAMILY: Verdana">ProgID: GameWithFire.ADOUtils</span></span></p>
<p style="TEXT-ALIGN: left"><span style="FONT-SIZE: 10pt"><span style="FONT-FAMILY: Verdana">Имя типа объекта 1С: AddIn.ADOUtils</span></span></p>
<p style="TEXT-ALIGN: left"><span style="FONT-FAMILY: Verdana"><span style="FONT-SIZE: 10pt">Объект предназначен для <span>сервисных процедур для работы с Microsoft Active Data Objects (ADO).</span></span></span></p>
<p style="TEXT-ALIGN: left"><span style="FONT-FAMILY: Verdana"><span><span style="FONT-SIZE: 11pt"><em>Свойства</em></span></span></span></p>
<p style="TEXT-ALIGN: left"><span><strong><span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana">Перечисления / Enums</span></strong></span></p>
<p style="TEXT-ALIGN: left"><span style="FONT-FAMILY: Verdana"><span style="FONT-SIZE: 10pt">Тип: COM объект. Только чтение.</span></span></p>
<p style="TEXT-ALIGN: left"><span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana">Описание: возвращает объект, одноименными свойствами которого, являются объекты перечислений из библиотеки типов ADO. Объекты перечислений имеют одноименные свойства значений перечислений из библиотеки типов ADO.<br>Предназначено для получения различных констант ADO, заданных перечислениями в библиотеки типов. Версия библиотеки типов должна быть 2.x.</span></p>
<p style="TEXT-ALIGN: left"><span style="FONT-FAMILY: Verdana"><span style="FONT-SIZE: 10pt">Пример:</span></span></p>
<p style="TEXT-ALIGN: left"><span><span style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New">DataTypes = ADOUtils.Enums.DataTypeEnum;<br></span></span><span><span style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New">ParameterDirection = ADOUtils.Enums.ParameterDirectionEnum;<br>Command.CreateParameter(Неопределено, DataTypes.adDBTimeStamp, ParameterDirection.adParamInput, 0, ДатаНачалаМесяца);</span></span></p>
<p style="TEXT-ALIGN: left"><span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"><strong>ДвоичныеДанныеВВидеСтрок / BinaryDataAsStrings</strong></span></p>
<p style="TEXT-ALIGN: left"><span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana">Тип: Булево. Чтение и запись.</span></p>
<p style="TEXT-ALIGN: left"><span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana">Описание: если Истина, то в таблице значений (результате запроса) данные типов adBinary, adVarBinary, adLongVarBinary будут приниматься в виде строк с шестнадцатиричной записью массива байтов с префиксом "0x", соответствующим колонкам ТЗ будет назначен тип Строка(0). Максимальная длина отображаемых данных для типа adLongVarBinary 8 килобайт. Если Ложь, то никакого преобразования не будет. (В этом случае ADO возвращает SafeArray VT_UI1.) После создания объекта значение свойства - Ложь.</span></p>
<p style="FONT-FAMILY: Verdana; TEXT-ALIGN: left"><em>Методы</em></p>
<p style="TEXT-ALIGN: left"><span><span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"><strong>ADORecordsetВТаблицуЗначений(ADORecordset) / ADORecordsetToValueTable</strong></span></span></p>
<p style="TEXT-ALIGN: left"><span><span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana">Параметры: ADORecordset - тип: COM объект ADORecordset. Набор записей - источник данных.</span></span></p>
<p style="TEXT-ALIGN: left"><span><span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana">Возвращает: тип: ТаблицаЗначений. Новая таблица значений заполненная данными набора записей.</span></span></p>
<p style="TEXT-ALIGN: left"><span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana">Описание: метод создает новую таблицу значений с колонками соответствующими колонкам переданного набора записей. И переносит содержимое набора записей в таблицу значений. При создании колонок в таблице значений, им назначается тип соответствующий типу поля ADORecordset.<br>Соответствие типов:<br>adChar, adVarChar, adWChar, adVarWChar, adBSTR: Строка(n); где n - DefinedSize, переменная длина;<br>adDecimal, adNumeric: Число(p, s), где p - Precision; s - Scale; любой знак;<br>adUnsignedTinyInt: Число(3, 0), любой знак;<br>adSmallInt, adUnsignedSmallInt: Число(5, 0), любой знак;<br>adInteger, adUnsignedInt: Число(10, 0), любой знак;<br>adBigInt, adUnsignedBigInt: Число(20, 0), любой знак;<br>adDate, adDBDate, adDBTime, adDBTimeStamp: Дата, дата и время;<br>adBoolean: Булево.<br>А также колонка может содержать тип Null.<br>Для остальных типов ADO тип колонки таблицы значений не назначается.<br>Правила назначения имени колонки: если имя в результате запроса пустое, назначается имя '_', если в имени есть символы не буквы и не цифры они заменяются на символ '_', если первый символ имени цифра, он заменяется на символ '_'; затем, если получилось такое имя, которое уже присутствует в коллекции колонок, то имя новой колонки будет образовано путем добавления суффикса с индексом начиная от 1.</span></p>
<p style="TEXT-ALIGN: left"><span><span style="FONT-SIZE: 10pt"></span></span><span style="FONT-SIZE: 14pt"><span><span style="FONT-SIZE: 10pt"><span style="FONT-SIZE: 14pt"><span style="FONT-SIZE: 14pt"><span><span style="FONT-SIZE: 10pt"><span style="FONT-SIZE: 14pt"><span style="FONT-SIZE: 14pt"><span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"><strong>ADORecordsetВРезультатЗапроса(ADORecordset, Итоги) / ADORecordsetToQueryResult</strong></span></span></span></span></span></span></span></span></span></span></p>
<p style="TEXT-ALIGN: left"><span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana">Параметры: ADORecordset - тип: COM объект ADORecordset. Набор записей - источник данных.<br>Итоги - тип: Строка. Строка описания итогов (ресурсов и измерений) для результата запроса. Необязательный. По-умолчанию - пустая строка.</span></p>
<p style="TEXT-ALIGN: left"><span><span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana">Возвращает: тип: РезультатЗапроса.</span></span></p>
<p style="TEXT-ALIGN: left"><span><span style="FONT-SIZE: 10pt"></span></span><span><span style="FONT-SIZE: 10pt"><span style="FONT-FAMILY: Verdana">Описание: позволяет получить объект типа РезультатЗапроса для набора данных. Реализован с помощью объекта ПостроительЗапроса. Настройка объекта ОписаниеИсточиникаДанных для построителя запроса описывается параметром Итоги.<br><br></span><span style="FONT-FAMILY: Verdana"><strong>Формат строки итогов:<br></strong>[&lt;Ресурс&gt;[,...n]] [ПО &lt;Измерение&gt;[,...n]]<br></span></span></span><span><span style="FONT-SIZE: 10pt"><br><span style="FONT-FAMILY: Verdana"><strong>&lt;Ресурс&gt;<br></strong>&lt;Выражение&gt; [КАК &lt;ИмяРесурса&gt;]<br></span></span></span><span style="FONT-SIZE: 14pt"><span><span style="FONT-SIZE: 10pt"><br><span style="FONT-FAMILY: Verdana"><strong>&lt;Выражение&gt;<br></strong>Выражение на языке запросов допустимое при описании источника данных для построителя запроса в свойстве КолонкаОписанияИсточникаДанных::Итог.<br><br></span></span></span></span><span style="FONT-SIZE: 14pt"><span><span style="FONT-SIZE: 10pt"><span style="FONT-FAMILY: Verdana"><strong>&lt;ИмяРесурса&gt;<br></strong>Имя колонки в источнике данных для помещения результата выражения.<br><br></span></span></span></span><span style="FONT-SIZE: 14pt"><span><span style="FONT-SIZE: 10pt"><strong><span style="FONT-FAMILY: Verdana">&lt;Измерение&gt;<br></span></strong><span style="FONT-SIZE: 14pt"><span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana">Имя колонки в источнике данных которая будет являться измерением.<br><br>Замечание 1. Если ИмяРесурса не указано, то имя ресурса подбирается автоматически по колонке использованной в выражении. Если в выражении используется несколько колонок, необходимо явное указание имени ресурса с помощью ключевого слова КАК. При явном указании имени ресурса ключевое слово КАК не указывать не допускается.<br>Замечание 2. Необходимо помнить что при задании хотябы одного ресурса или измерения в результате запроса всегда присутствует <strong>общий итог</strong> (по всем записям). Это ограничение объекта ПостроительЗапроса.</span></span></span></span></span></p>
<p style="TEXT-ALIGN: left"><span><span><span><span><span style="FONT-FAMILY: Verdana"></span></span></span></span></span><span><span><span><span><span style="FONT-SIZE: 14pt; FONT-FAMILY: Verdana"><strong>Пример использования</strong></span></span></span></span></span></p>
<p style="TEXT-ALIGN: left"><span><span><span><span><span style="FONT-SIZE: 14pt; FONT-FAMILY: Verdana"><strong></strong></span></span></span></span></span><span style="FONT-SIZE: 14pt"><span><span style="FONT-SIZE: 10pt"><span style="FONT-SIZE: 14pt"><span style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New">ПодключитьВнешнююКомпоненту("GameWithFire.ADOUtils");<br></span></span></span></span></span><span style="FONT-SIZE: 14pt"><span><span style="FONT-SIZE: 10pt"><span style="FONT-SIZE: 14pt"><span style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New">ADOUtils = Новый("AddIn.ADOUtils");<br>Connection = Новый COMОбъект("ADODB.Connection");<br>Connection.Open("Provider=sqloledb;Server=MyServer;Database=MyDatabase;Trusted_Connection=yes;");<br>Recordset = Connection.Execute("select * from MyTable (nolock)");<br>ТЗ = ADOUtils.ADORecordsetToValueTable(Recordset);<br>ТЗ.ВыбратьСтроку();<br><br><span style="FONT-FAMILY: Verdana">Примечание: загружать компоненту методом ЗагрузитьВнешнююКомпоненту невозможно.</span></span></span></span></span></span></p>
<p style="TEXT-ALIGN: left"><strong><span style="FONT-SIZE: 14pt; FONT-FAMILY: Verdana">Условия распространения</span></strong></p>
<p style="TEXT-ALIGN: left"><span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana">Распростаняется свободно и "как есть". Автор не несет никакой ответственности за последствия использования этой программы. Разрешается делать сколько угодно копий программного продукта (GameWithFire.dll) и передавать третьим лицам. Разрешается также использовать программный продукт по назначению для получения коммерческой прибыли. Не разрешается продавать программный продукт и дизассемблировать с целью восстановления исходного кода.</span></p>
<p style="TEXT-ALIGN: left"><span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"></span>Документация для следующих версий размещается по адресу: <a href="http://main.1c-ei.ru/Articles/gamewithfire">http://main.1c-ei.ru/Articles/gamewithfire</a> </p></body></html>