8.х Access 1С

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем slaay, 2 янв 2011.

  1. TopicStarter Overlay
    slaay
    Offline

    slaay Опытный в 1С

    Регистрация:
    27 мар 2009
    Сообщения:
    162
    Симпатии:
    0
    Баллы:
    26
    1с 8.1 УТ 10.3.11.4 и база mdb

    в mdb есть запрос qry хотелось бы чтобы записи из него переносились в 1с

    в запросе qry содержаться поля типа:
    код, оператор, время
    код1 оператор1 время1
    код1 оператор2 время2
    код1 оператор3 время3

    хочу сделать какую то обработку которая при нажатии на кнопку выполняла:

    создала документ с кодом код1 и табличной частью где будет:

    оператор время
    оператор1 время1
    оператор2 время2
    оператор3 время3

    такое вообще можно сделать?

    помогите пожалуйста

    упд: документ в 1с я уже сделал с табличной частью куда ндо все это вставлять
  2. r-d-v2008
    Offline

    r-d-v2008 Опытный в 1С

    Регистрация:
    16 сен 2010
    Сообщения:
    272
    Симпатии:
    0
    Баллы:
    26
    Ну создавайте обработку, если что поможем
  3. r-d-v2008
    Offline

    r-d-v2008 Опытный в 1С

    Регистрация:
    16 сен 2010
    Сообщения:
    272
    Симпатии:
    0
    Баллы:
    26
    Начните с этого
    Код:
    Процедура Сформировать()
    
    Т = СоздатьОбъект("ТаблицаЗначений"); // В эту таблицу будем выгружать данные, полученные из Access
    Т.Очистить();
    BaseAccess = "";
    
    Состояние("Подключение к базе данных");
    BaseAccess = CreateObject("ADODB.CONNECTION"); //Создаем подключение через ADO
    Попытка
    ConnectionString = "Driver={Microsoft Access Driver (*.mdb)};;Dbq="+
    BaseAccess.Open(ConnectionString); //Открываем подключение
    Состояние("Установлено соединение с базой данных...");
    Исключение
    Сообщить(ОписаниеОшибки());
    
    КонецПопытки;
    
    ИмяТаблицы = ТаблицыБД.ПолучитьЗначение(ТаблицыБД.ТекущаяСтрока());
    
    Состояние("Начинаем считывание данных...");
    
    Команда = СоздатьОбъект("ADODB.Command"); //Создаем команду
    Команда.ActiveConnection=BaseAccess; //Указываем подключение
    ТекстСелект = "SELECT * FROM "+ ИмяТаблицы; // Пишем запрос. Здесь, ИмяТаблицы - переменная, куда записано имя таблицы access
    НаборЗаписей = СоздатьОбъект("ADODB.RecordSet");
    Команда.CommandText=ТекстСелект;
    Попытка
    НаборЗаписей=Команда.Execute(); // выполняем запрос
    Исключение
    Сообщить(ОписаниеОшибки());
    КонецПопытки;
    //Результат запроса содержится в переменной НаборЗаписей
    Для е = 0 по (НаборЗаписей.Fields.Count - 1) Цикл  //Определяем имена полей таблицы
    Т.НоваяКолонка(СокрЛП(НаборЗаписей.Fields(е).Name));
    КонецЦикла;
    НаборЗаписей.MoveFirst();
    Пока НаборЗаписей.EOF() = 0 Цикл //Перебираем поля и записи
    Стр = "";
    Т.НоваяСтрока();
    Для е = 0 по (НаборЗаписей.Fields.Count - 1) Цикл
    Т.УстановитьЗначение(Т.КоличествоСтрок(), СокрЛП(НаборЗаписей.Fields(е).Name), НаборЗаписей.Fields(е).Value); // записываем значения в таблицу
    КонецЦикла;
    НаборЗаписей.MoveNext();
    КонецЦикла;
    Т.Выгрузить(ТТТ); //выгружаем таблицу в другую таблицу на форме.
    КонецПроцедуры
    
    
    
    Вообще советую погуглить.
Похожие темы
  1. rvaldis
    Ответов:
    11
    Просмотров:
    4.945
  2. Kruck
    Ответов:
    5
    Просмотров:
    1.437
  3. fokin
    Ответов:
    1
    Просмотров:
    1.713
Загрузка...

Поделиться этой страницей