Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 2
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> 1C 8.2 УПП хранимая процедура SQL в Цикле          
alexandr_f Подменю пользователя
сообщение 21.05.15, 11:01
Сообщение #1

Завсегдатай
****
Группа: Пользователи
Сообщений: 202
Из: Украина
Спасибо сказали: 3 раз
Рейтинг: 3

Нужно выгрузить данные из 1С в SQL 2008
  Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
|    РаботникиОрганизацийСрезПоследних.Период,
|    РаботникиОрганизацийСрезПоследних.Регистратор,
|    РаботникиОрганизацийСрезПоследних.Сотрудник.Ссылка,
|    РаботникиОрганизацийСрезПоследних.Сотрудник.Физлицо.Ссылка,
|    РаботникиОрганизацийСрезПоследних.Сотрудник.Физлицо.Код,
|    РаботникиОрганизацийСрезПоследних.Сотрудник.Физлицо.ДатаРождения КАК ДатаРождения,
|    РаботникиОрганизацийСрезПоследних.Сотрудник.Физлицо.КодПоДРФО КАК ИНН,
|    РаботникиОрганизацийСрезПоследних.Сотрудник.Физлицо.Пол КАК Пол,
|    РаботникиОрганизацийСрезПоследних.Сотрудник.Код КАК ТабНом,
|    РаботникиОрганизацийСрезПоследних.Должность.Ссылка,
|    РаботникиОрганизацийСрезПоследних.Должность.Код,
|    РаботникиОрганизацийСрезПоследних.Должность.Категория.Ссылка,
|    РаботникиОрганизацийСрезПоследних.Должность.Грейд,
|    РаботникиОрганизацийСрезПоследних.ПодразделениеОрганизации.ВнешнийКод,
|    РаботникиОрганизацийСрезПоследних.ПодразделениеОрганизации.НомерЦеха,
|    РаботникиОрганизацийСрезПоследних.ПодразделениеОрганизации.Наименование,
|    РаботникиОрганизацийСрезПоследних.ПодразделениеОрганизации.Родитель.НомерЦеха,
|    РаботникиОрганизацийСрезПоследних.Сотрудник.ВидЗанятости,
|    РаботникиОрганизацийСрезПоследних.Сотрудник.ВидДоговора,
|    РаботникиОрганизацийСрезПоследних.Сотрудник.ДатаПриемаНаРаботу КАК ДатаПриемаНаРаботу,
|    РаботникиОрганизацийСрезПоследних.Сотрудник.ДатаУвольнения КАК ДатаУвольнения,
|    ФИОФизЛицСрезПоследних.Фамилия КАК Фамилия,
|    ФИОФизЛицСрезПоследних.Имя Как Имя,
|    ФИОФизЛицСрезПоследних.Отчество КАК Отчество
|ИЗ
|    РегистрСведений.РаботникиОрганизаций.СрезПоследних КАК РаботникиОрганизацийСрезПоследних
|        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ФИОФизЛиц.СрезПоследних КАК ФИОФизЛицСрезПоследних
|        ПО РаботникиОрганизацийСрезПоследних.Сотрудник.Физлицо = ФИОФизЛицСрезПоследних.ФизЛицо";

Результат = Запрос.Выполнить().Выбрать();
КоличествоСтрок=Результат.Количество();
   Попытка
    Соединение = Новый COMОбъект("ADODB.Connection");
    ДатаЛ = Новый COMОбъект("DataLinks");
    Соединение.ConnectionString = "Provider=SQLNCLI10.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=;Data Source=";
       ConnectionString = Соединение.ConnectionString;
    Сообщить(ConnectionString);
    Соединение.Open(ConnectionString);
    
        

    Команда = Новый COMОбъект("ADODB.Command");

   Команда.ActiveConnection = Соединение;

    Команда.CommandType = 4;
    Команда.CommandText="UPP_1C.insert_PersonalAll";


    Результат.Следующий();
    ПАРАМ=ЧИСЛО(Результат.ТабНом);
    

     Параметр1=Команда.CreateParameter("@persid", 3, 1, 4, ПАРАМ);
    
     Команда.Parameters.Append(Параметр1);
     Команда.Execute();
    


    
  
  
Исключение
        Предупреждение("Не удалось создать подключение!");
КонецПопытки;

Вот там выполняет
А нужно в цикле
  Пока Результат.Следующий() Цикл
  
     ПАРАМ=ЧИСЛО(Результат.ТабНом);
    
     Команда.Execute();
    КонецЦикла;

Там не выполняется. Где ошибка?

sava1 Подменю пользователя
сообщение 21.05.15, 11:28
Сообщение #2

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2752
Из: Проскуров
Спасибо сказали: 708 раз
Рейтинг: 686.5

Стесняюсь спросить: А зачем сие рукоблудие?

alexandr_f Подменю пользователя
сообщение 21.05.15, 11:32
Сообщение #3

Завсегдатай
****
Группа: Пользователи
Сообщений: 202
Из: Украина
Спасибо сказали: 3 раз
Рейтинг: 3

Цитата(sava1 @ 21.05.15, 12:28) *
Стесняюсь спросить: А зачем сие рукоблудие?

Мне надо выгрузить список работников в SQL таблицу

sava1 Подменю пользователя
сообщение 21.05.15, 11:35
Сообщение #4

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2752
Из: Проскуров
Спасибо сказали: 708 раз
Рейтинг: 686.5

Неужели УПП файловая?

alexandr_f Подменю пользователя
сообщение 21.05.15, 11:38
Сообщение #5

Завсегдатай
****
Группа: Пользователи
Сообщений: 202
Из: Украина
Спасибо сказали: 3 раз
Рейтинг: 3

нет она SQL.
Но я выгружаю в на другой не 1С сервер

sava1 Подменю пользователя
сообщение 21.05.15, 11:39
Сообщение #6

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2752
Из: Проскуров
Спасибо сказали: 708 раз
Рейтинг: 686.5

Сервер совсем другой?

alexandr_f Подменю пользователя
сообщение 21.05.15, 11:47
Сообщение #7

Завсегдатай
****
Группа: Пользователи
Сообщений: 202
Из: Украина
Спасибо сказали: 3 раз
Рейтинг: 3

Цитата(sava1 @ 21.05.15, 12:39) *
Сервер совсем другой?

Совсем другой . И не 1С

sava1 Подменю пользователя
сообщение 21.05.15, 11:57
Сообщение #8

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2752
Из: Проскуров
Спасибо сказали: 708 раз
Рейтинг: 686.5

Заходим в менеджер сервера, прилинковываем другой сервер, в Експлорере перетаскиваем таблицу из одной базы в другую (КопиДата если не ошибаюсь).
Но перед этим советую посмотреть в ту таблицу - что Вы собираетесь делать с сылочными данными - там будут Гуиды.
2й вариант.
Там-же пишем запрос вида
INSERT INTO ... SELECT

Обращение к таблицам Имя_сервера.Имя_базы.dbo.Имя_таблицы
в запросе выбирать примитивы (Сотрудник.Наименование а не Сотрудник)

alexandr_f Подменю пользователя
сообщение 21.05.15, 12:01
Сообщение #9

Завсегдатай
****
Группа: Пользователи
Сообщений: 202
Из: Украина
Спасибо сказали: 3 раз
Рейтинг: 3

Цитата(sava1 @ 21.05.15, 12:57) *
Заходим в менеджер сервера, прилинковываем другой сервер, в Експлорере перетаскиваем таблицу из одной базы в другую (КопиДата если не ошибаюсь).
Но перед этим советую посмотреть в ту таблицу - что Вы собираетесь делать с сылочными данными - там будут Гуиды.
2й вариант.
Там-же пишем запрос вида
INSERT INTO ... SELECT

Обращение к таблицам Имя_сервера.Имя_базы.dbo.Имя_таблицы
в запросе выбирать примитивы (Сотрудник.Наименование а не Сотрудник)

У меня нет доступа к SQL серверу 1С - и это правильно

sava1 Подменю пользователя
сообщение 21.05.15, 12:04
Сообщение #10

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2752
Из: Проскуров
Спасибо сказали: 708 раз
Рейтинг: 686.5

Тогда пусть админы и дрочат...

Выгружаем базу 1с , загружаем на свой сервер и дальше по натоптаной тропе..

alexandr_f Подменю пользователя
сообщение 21.05.15, 12:08
Сообщение #11

Завсегдатай
****
Группа: Пользователи
Сообщений: 202
Из: Украина
Спасибо сказали: 3 раз
Рейтинг: 3

Цитата(sava1 @ 21.05.15, 13:04) *
Тогда пусть админы и дрочат...

Выгружаем базу 1с , загружаем на свой сервер и дальше по натоптаной тропе..

Это не база не обслуживание 1С .
Это простой запрос

daveal Подменю пользователя
сообщение 21.05.15, 12:26
Сообщение #12

Говорящий
***
Группа: Пользователи
Сообщений: 70
Из: Киев
Спасибо сказали: 25 раз
Рейтинг: 0

Append вы тоже в цикле делаете? А если попробовать CreateParameter и Append сделать перед циклом, а в цикле менять через Параметр1.Value?

sava1 Подменю пользователя
сообщение 21.05.15, 12:45
Сообщение #13

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2752
Из: Проскуров
Спасибо сказали: 708 раз
Рейтинг: 686.5

О каком цыкле Вы говорите - УВас задача "Загрузить сервер" ?

alexandr_f Подменю пользователя
сообщение 21.05.15, 13:38
Сообщение #14

Завсегдатай
****
Группа: Пользователи
Сообщений: 202
Из: Украина
Спасибо сказали: 3 раз
Рейтинг: 3

Цитата(sava1 @ 21.05.15, 13:45) *
О каком цыкле Вы говорите - УВас задача "Загрузить сервер" ?

Какой сервер
Мне надо загрузить результаты запроса в таблицу которая работает в другом (не 1С приложении)

sava1 Подменю пользователя
сообщение 21.05.15, 13:41
Сообщение #15

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2752
Из: Проскуров
Спасибо сказали: 708 раз
Рейтинг: 686.5

А цикл зачем ? Нельзя передать рекордсет?

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 16.06.25, 23:07
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!