Оконный форум  

Вернуться   Оконный форум > Оконные программы > СуперОкна > 1С+СО
Регистрация Справка Пользователи Календарь Поиск Сообщения за день Все разделы прочитаны

1С+СО Совместная работа 1С и Супер окон

Ответ
 
Опции темы Опции просмотра
Старый 18.12.2008, 16:36   #1
paradise
Новичок
 
Регистрация: 15.06.2007
Сообщений: 9
По умолчанию совместная работа 1с и со с использованием внешней компоненты

Имея опыт программирования в среде 1С или имея под боком программиста 1С можно практически любые данные из БД СО иметь в среде 1С...
Для этого разработана ВнешняяКомпонента (ВК) всего с 4 функциями:

1.ПодключитьБД(<Путь_к_БД_СО>)
2.ОтключитьБД
3.ВыгрузитьТаблицы()
4.ВыполнитьSQLЗапрос(<ТекстЗапроса>,<ТаблицаЗначен ий>)

в <ТекстЗапроса> записывается запрос Select любой сложности , данные возвращаются в <ТаблицаЗначений> и далее оперируя языком в среде 1С можно эти данные записывать в справочники и документы 1С, а так же можно генерить отчеты...

Плюсы - можно делать какие угодно запросы по извлечению данных и оперативно менять логику обработки этих данных в среде 1С.
paradise вне форума   Ответить с цитированием
Старый 19.06.2009, 06:17   #2
unpete
Новичок
 
Регистрация: 16.06.2009
Сообщений: 11
По умолчанию Чем ADO хуже?

Цитата:
Сообщение от paradise Посмотреть сообщение
Плюсы - можно делать какие угодно запросы по извлечению данных и оперативно менять логику обработки этих данных в среде 1С.
Плюсы, конечно, замечательные. Но, может быть, проще так:
Код:
Cnn = Новый COMОбъект("ADODB.Connection");
Cnn.ConnectionString = "Provider=MSDASQL.1;Persist Security Info=False;Data Source=sw;Mode=Read;";
Cnn.Open(,);
RecordSet = Cnn.Execute(SQL);
RecordSet = набор данных, с которым можно делать что угодно.
SQL - произвольный запрос.
unpete вне форума   Ответить с цитированием
Старый 19.06.2009, 08:34   #3
viollan
ПРОФИ
 
Регистрация: 05.06.2007
Адрес: Кубаноид
Сообщений: 103
Отправить сообщение для viollan с помощью ICQ
По умолчанию

Цитата:
Сообщение от unpete Посмотреть сообщение
Плюсы, конечно, замечательные. Но, может быть, проще так:
Код:
Cnn = Новый COMОбъект("ADODB.Connection");
Cnn.ConnectionString = "Provider=MSDASQL.1;Persist Security Info=False;Data Source=sw;Mode=Read;";
Cnn.Open(,);
RecordSet = Cnn.Execute(SQL);
RecordSet = набор данных, с которым можно делать что угодно.
SQL - произвольный запрос.
А разве
Код:
Cnn.ConnectionString = "Provider=MSDASQL.1;Persist Security Info=False;Data Source=sw;Mode=Read;";
провайдер "MSDASQL" работает с Firebird/Interbase?
по моему должно быть так:
Код:
Cnn.ConnectionString = "DSN=swnd;Driver=Firebird/InterBase(r) driver;Dbname="+ПутьКФайлуБазыДанныхРасчетнойПрограммы+";CHARSET=WIN1251;PWD=masterkey;UID=SYSDBA;";
__________________
У всех бывает в первый раз... Главное чтоб небыло больно!
viollan вне форума   Ответить с цитированием
Старый 21.06.2009, 19:46   #4
unpete
Новичок
 
Регистрация: 16.06.2009
Сообщений: 11
По умолчанию ODBC vs DSNless

Цитата:
Сообщение от viollan Посмотреть сообщение
по моему должно быть так:
Код:
Cnn.ConnectionString = "DSN=swnd;Driver=Firebird/InterBase(r) driver;Dbname="+ПутьКФайлуБазыДанныхРасчетнойПрограммы+";CHARSET=WIN1251;PWD=masterkey;UID=SYSDBA;";
Не вижу большой разницы. Есть много драйверов к Firebird/Interbase. С теми, ADO - провайдерами, что я пробовал, возникали проблемы. Соединение рвалось на каких - то запросах. Использую Firebird ODBC driver от http://firebird.sourceforge.net А MSDASQL.1 - это провайдер к произвольным ODBC - источникам.

Последний раз редактировалось unpete, 21.06.2009 в 19:52.
unpete вне форума   Ответить с цитированием
Старый 21.06.2009, 19:50   #5
unpete
Новичок
 
Регистрация: 16.06.2009
Сообщений: 11
По умолчанию blob

Цитата:
Сообщение от paradise Посмотреть сообщение
4.ВыполнитьSQLЗапрос(<ТекстЗапроса>,<ТаблицаЗначен ий>)
А какого типа данные кладутся в таблицу значений для полей blob?
unpete вне форума   Ответить с цитированием
Старый 22.06.2009, 09:36   #6
viollan
ПРОФИ
 
Регистрация: 05.06.2007
Адрес: Кубаноид
Сообщений: 103
Отправить сообщение для viollan с помощью ICQ
По умолчанию

Цитата:
Сообщение от unpete Посмотреть сообщение
Не вижу большой разницы. Есть много драйверов к Firebird/Interbase. С теми, ADO - провайдерами, что я пробовал, возникали проблемы. Соединение рвалось на каких - то запросах. Использую Firebird ODBC driver от http://firebird.sourceforge.net А MSDASQL.1 - это провайдер к произвольным ODBC - источникам.
Но вы используете провайдер на провайдере А в строке подключения именно драйвер от FB
Приведенный мною код: Не требует регистрации DNS в ODBC провайдерах и на прямую использует ODBC провайдер (он же драйвер) без дополнительных наставок от MS
__________________
У всех бывает в первый раз... Главное чтоб небыло больно!

Последний раз редактировалось viollan, 22.06.2009 в 09:46.
viollan вне форума   Ответить с цитированием
Старый 22.06.2009, 09:42   #7
viollan
ПРОФИ
 
Регистрация: 05.06.2007
Адрес: Кубаноид
Сообщений: 103
Отправить сообщение для viollan с помощью ICQ
По умолчанию

Цитата:
Сообщение от unpete Посмотреть сообщение
А какого типа данные кладутся в таблицу значений для полей blob?
Что Вы имеете ввиду?
__________________
У всех бывает в первый раз... Главное чтоб небыло больно!
viollan вне форума   Ответить с цитированием
Старый 22.06.2009, 10:57   #8
unpete
Новичок
 
Регистрация: 16.06.2009
Сообщений: 11
По умолчанию

Сообщение от paradise
4.ВыполнитьSQLЗапрос(<ТекстЗапроса>,<ТаблицаЗначен ий>)

Имею в виду, что для blob-ов ado возвращает comsafearray(). В поле ТЗ после выполнения метода ВыполнитьSQLЗапрос указанной ВК будет массив, строка, двоичные данные или что - то еще.

Практического интереса вопрос не представляет. Просто было интересно, в какой тип эти данные засовывает paradise.
unpete вне форума   Ответить с цитированием
Старый 23.06.2009, 07:47   #9
paradise
Новичок
 
Регистрация: 15.06.2007
Сообщений: 9
По умолчанию ВК

ВК работает без ODBC что упрощает и убыстряет работу...

строковые блобы в строку без ограничений
paradise вне форума   Ответить с цитированием
Старый 24.06.2009, 08:34   #10
viollan
ПРОФИ
 
Регистрация: 05.06.2007
Адрес: Кубаноид
Сообщений: 103
Отправить сообщение для viollan с помощью ICQ
По умолчанию

Цитата:
Сообщение от paradise Посмотреть сообщение
ВК работает без ODBC что упрощает и убыстряет работу...
Очень спорный вопрос по поводу скорости работы, это первое, а второе это же платно
__________________
У всех бывает в первый раз... Главное чтоб небыло больно!

Последний раз редактировалось viollan, 24.06.2009 в 08:45.
viollan вне форума   Ответить с цитированием
Старый 25.06.2009, 07:37   #11
unpete
Новичок
 
Регистрация: 16.06.2009
Сообщений: 11
По умолчанию Нечего там оптимизировать

Цитата:
Сообщение от viollan Посмотреть сообщение
Очень спорный вопрос по поводу скорости работы, это первое, а второе это же платно
Мне кажется, вопрос не спорный. Скорость взаимодействия с базой СО получится такой же. Не вжно, 5 или 10 миллисекунд обрабатывается результат запроса к Firebird/Interbase. Все равно, на создание характеристик и спецификаций на стороне 1С уйдет не менее 100 - 200 миллисекунд.
unpete вне форума   Ответить с цитированием
Ответ


Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 01:16.


vBulletin® Version 3.6.7.
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.
Перевод: zCarot
Возможно вам будет интересно:
здесь можно скачать opera mini бесплатно