Имя: Пароль:
1C
 
Подключение с помощью 1с к другим БД
0 kathleen
 
10.01.15
12:37
Есть ли возможность читать средствами 1С таблицы БД на SQL сервере, например для загрузки данных из другой программы?
1 Rie
 
10.01.15
12:39
(0) Внешний источник данных
2 kathleen
 
10.01.15
12:40
(1)А поподробнее
3 spectre1978
 
10.01.15
12:43
(0) конечно. Можно использовать объекты ADO, тут примеры точно были если поискать
4 spectre1978
 
10.01.15
12:45
Вот тут есть пример подключения ADO и MSSQL Помогите
5 Escander
 
10.01.15
12:46
(2) ну поиск-же http://infostart.ru/public/92746/
6 kathleen
 
10.01.15
12:59
Написано, что нельзя использовать совместно с внутренними источниками данных, т.е. я  не смогу исходя из полученный данных создать в 1с соответствующие документы?
7 anatoly
 
10.01.15
13:07
все можно. через СОМ-соединения.
я так к Оракловой базе отлично подключался, и по надерганым оттуда из вьюшек данным записывал справочники, документы...
8 tank68
 
10.01.15
13:12
Я с внешних источников запросом подготавливаю таблицу значений, а потом все записываю в 1с
9 kathleen
 
10.01.15
13:13
Я думала через Com можно только из 1с данные тянуть, а не наоборот
10 kathleen
 
10.01.15
13:14
(8) Ага, значит вариант есть, спасибо
11 ДенисЧ
 
10.01.15
13:15
можно в обе стророны тянуть
12 tank68
 
10.01.15
13:17
Запрос = Новый Запрос;
        Запрос.Текст =
        "ВЫБРАТЬ
        |    dbo_dogovor_akcii.AutoCard,
        |    dbo_dogovor_akcii.Nomer,
        |    dbo_dogovor_akcii.Data,
        |    dbo_dogovor_akcii.Summa
        |ИЗ
        |    ВнешнийИсточникДанных.Boss_kadrovik_obmen.Таблица.dbo_dogovor_akcii КАК dbo_dogovor_akcii";
        
        Результат = Запрос.Выполнить();
        
        ВыборкаДетальныеЗаписи = Результат.Выбрать();
        
        Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
            ЭлементСправочника = Справочники.ДоговорКуплиПродажиАкций.НайтиПоКоду(ВыборкаДетальныеЗаписи.AutoCard);
            Если ЭлементСправочника = Справочники.ДоговорКуплиПродажиАкций.ПустаяСсылка() Тогда
                НовыйЭлемент = Справочники.ДоговорКуплиПродажиАкций.СоздатьЭлемент();
                НовыйЭлемент.Код = ВыборкаДетальныеЗаписи.AutoCard;
                Если ВыборкаДетальныеЗаписи.Nomer <> "0" Тогда
                    НовыйЭлемент.Наименование = ВыборкаДетальныеЗаписи.Nomer;
                Иначе
                    НовыйЭлемент.Наименование = "НетНомера";
                КонецЕсли;                
                Если ВыборкаДетальныеЗаписи.Data = Дата(1900, 01, 01) Тогда
                    НовыйЭлемент.Дата = "";
                Иначе
                    НовыйЭлемент.Дата = ВыборкаДетальныеЗаписи.Data;
                КонецЕсли;                 
                НовыйЭлемент.Сумма = ВыборкаДетальныеЗаписи.Summa;
                НовыйЭлемент.ДатаЗагрузки = ТекущаяДата();
                НовыйЭлемент.Записать();
                ТекстЦикла = ("Создаем новый объект "+ВыборкаДетальныеЗаписи.AutoCard+" № " + ВыборкаДетальныеЗаписи.Nomer+" от "+
                ВыборкаДетальныеЗаписи.Data+" на сумму "+ ВыборкаДетальныеЗаписи.Summa);
                Сообщить(ТекстЦикла);
                ЛогСообщений.ДобавитьСтроку(ТекстЦикла);
                ТелоПисьма=ТелоПисьма+" "+Символы.ПС+" "+ТекстЦикла+" "+Символы.ПС;
            Иначе
                НайденныйЭлемент =  ЭлементСправочника.ПолучитьОбъект();
                Если ВыборкаДетальныеЗаписи.Nomer <> "0" Тогда
                    НайденныйЭлемент.Наименование = ВыборкаДетальныеЗаписи.Nomer;
                Иначе
                    НайденныйЭлемент.Наименование =  "НетНомера";
                КонецЕсли;
                Если ВыборкаДетальныеЗаписи.Data = Дата(1900, 01, 01) Тогда
                    НайденныйЭлемент.Дата = "";
                Иначе
                    НайденныйЭлемент.Дата = ВыборкаДетальныеЗаписи.Data;
                КонецЕсли;                 
                НайденныйЭлемент.Сумма = ВыборкаДетальныеЗаписи.Summa;
                НайденныйЭлемент.Записать();  
                Сообщить("Найден "+ВыборкаДетальныеЗаписи.AutoCard+" № " + ВыборкаДетальныеЗаписи.Nomer+" от "+
                ВыборкаДетальныеЗаписи.Data+" на сумму "+ ВыборкаДетальныеЗаписи.Summa);
            КонецЕсли;
        КонецЦикла;
13 tank68
 
10.01.15
13:23
14 HEKPOH
 
10.01.15
15:38
(6) "Написано, что нельзя использовать совместно с внутренними источниками данных, т.е. я  не смогу исходя из полученный данных создать в 1с соответствующие документы?" - оригинальный вывод :)
15 kathleen
 
10.01.15
16:12
(11),(12),(13)Спасибо огромное, подключиться в конфигураторе удалось, буду пробовать программно читать