Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 02:21

Проблема в конвертации данных

Автор EvilKatran, 10 мая 2016, 08:27

0 Пользователей и 1 гость просматривают эту тему.

EvilKatran

Всем доброго времени суток.
Как новичок столкнулся с проблемой, много гуглил но пока толку нет. Итак:
Создаю ПКО, ПВД. ПКС.
Из 1 документа в другой передаются медицинские данные, из ОказанияУслуг в ЗаявкуВМИС.
в ОказанииУслуг пациенту выписывают направление на анализ. Каждому из анализов присваиваю штрихкод и заношу его в РегистрСведений. Проблема в том что я передаю объект в объект, и например при выгрузке 4-х документов ОказанияУслуг (в которых более 4 штрихкодов) я получаю 4-ре документа ЗаявкиВМИС. а мне нужно чтобы количество Заявок равнялось количеству штрихкодов.

Где копать и как?
P.S. Прошу сильно не кидать камнями в мою сторону

Игорь Иванов

Цитата: EvilKatran от 10 мая 2016, 08:27а мне нужно чтобы количество Заявок равнялось количеству штрихкодов

Судя по тексту, у вас и так равняется.

EvilKatran

Цитата: Игорь Иванов от 10 мая 2016, 08:51
Цитата: EvilKatran от 10 мая 2016, 08:27а мне нужно чтобы количество Заявок равнялось количеству штрихкодов

Судя по тексту, у вас и так равняется.

На данный момент в 4 ОказанияхУслуг у меня выгружается 11 штрихкодов а про конвертации получается всего 4 Заявки. в каждой из которых по 1 штриху

Игорь Иванов

То есть у вас ЗаявкаВМИС должна загружаться из Анализа, а не из ОказанияУслуг?

EvilKatran

Цитата: Игорь Иванов от 10 мая 2016, 09:08
То есть у вас ЗаявкаВМИС должна загружаться из Анализа, а не из ОказанияУслуг?

Простите я Вас запутал немного. Поясняю.
в документ ОказаниеУслуг вбивают направления на анализ (например мочи, крови) соответственно таких анализов в 1 доке может быть много, каждый анализ при сохранении документа получает свой штрихкод. Далее мне необходимо отправить анализы в КлиническуюЛабораторию посредством ЗаявкиВМИС. в конвертации у меня пока что получается только передать 1 документ в 1 документ, то есть как и писал из 4 ОказанийУслуг где у меня 11 штрихкодов я получаю 4 ЗаявкиВМИС где в документ попадает последний штрихкод из каждого документа ОказанияУслуг. а мне получается необходимо чтобы создалось соответственно количеству 11 штрихкодов - 11 Заявок
Добавлено: 11 мая 2016, 08:49


Вопрос все еще актуален.

Kironten

Тогда вам не подойдет ПКО документ-документ (ОказаниеУслуг->ЗаявкаВМИС)
Делайте, например через ИсходящиеДанные.

EvilKatran

Спасибо. учту. буду пробовать
Добавлено: 13 мая 2016, 10:17


Итак. убрал объект Источник.
В ПВД способом выборки произвольный алгоритм перед обработкой написал

Запрос = Новый Запрос;
Запрос.УстановитьПараметр("Нач", НачалоДня(ТекущаяДата()));
Запрос.УстановитьПараметр("Кон", КонецДня(ТекущаяДата()));

Запрос.Текст =
"ВЫБРАТЬ
|   ОказаниеУслугРаботы.Ссылка.Номер,
|   ОказаниеУслугРаботы.Ссылка.Дата,
|   ОказаниеУслугРаботы.Ссылка.Клиент,
|   ОказаниеУслугРаботы.Ссылка.Мастер,
|   ОказаниеУслугРаботы.Ссылка.Салон,
|   ШтрихкодыАнализ.Штрихкод,
|   ОказаниеУслугРаботы.НомерСтроки,
|   ОказаниеУслугРаботы.Ссылка.Клиент.Фамилия,
|   ОказаниеУслугРаботы.Ссылка.Клиент.Имя,
|   ОказаниеУслугРаботы.Ссылка.Клиент.Отчество,
|   ОказаниеУслугРаботы.Ссылка.Мастер.Фамилия,
|   ОказаниеУслугРаботы.Ссылка.Мастер.Имя,
|   ОказаниеУслугРаботы.Ссылка.Мастер.Отчество
|ИЗ
|   Документ.ОказаниеУслуг.Работы КАК ОказаниеУслугРаботы
|      ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ШтрихкодыАнализ КАК ШтрихкодыАнализ
|      ПО ОказаниеУслугРаботы.НомерСтроки = ШтрихкодыАнализ.НомерСтроки
|         И ОказаниеУслугРаботы.Ссылка = ШтрихкодыАнализ.Регистратор
|         И ОказаниеУслугРаботы.Номенклатура = ШтрихкодыАнализ.Номенклатура
|ГДЕ
|   ОказаниеУслугРаботы.Ссылка.Дата МЕЖДУ &Нач И &Кон";

   Результат = Запрос.Выполнить().Выгрузить();
   
Пока Результат.Следующий() Цикл
  Структура = Новый Структура;
    Структура.Вставить("Дата", ОказаниеУслугРаботы.Ссылка.Дата);   
   Структура.Вставить("Номер", Номер);
    Структура.Вставить("patient_family", Фамилия);
   Структура.Вставить("order_doctor_mis_family", Мастер);
   Структура.Вставить("order_department_name", Салон);
   Структура.Вставить("patient_sex", КлиентПол);
   Структура.Вставить("patient_name", КлиентИмя);
   Структура.Вставить("patient_patronum", КлиентОтчество);
   Структура.Вставить("patient_birth_date", КлиентДатаРождения);
   Структура.Вставить("patient_full_name", Клиент);
   Структура.Вставить("order_barcode", Штрихкод);
   Структура.Вставить("order_mis_number", Номер);
   Структура.Вставить("order_mis_date", Дата);
   Структура.Вставить("order_department_full_name", Салон);
   Структура.Вставить("order_doctor_family", МастерФамилия);
   Структура.Вставить("order_doctor_name", МастерИмя);
   Структура.Вставить("order_doctor_patronum", МастерОтчество);
   Структура.Вставить("",);
//Возврат = Структура;

    ВыгрузитьПоПравилу(Структура, , , , "ЗаявкаИзМИС");
КонецЦикла;

Выдает ошибку что не определена переменная ОказаниеУслугРаботы.

Если перекинуть код в перед выгрузкой тогда запрос не работает.

в консоли запросов если ставлю толстый клиент то данные выгружаются, если автоматически то пустота.

Что делаю не так и куда копать?

cska-fanat-kz

Результат = Запрос.Выполнить().Выбрать();
   
Пока Результат.Следующий() Цикл
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

cska-fanat-kz

Структура.Вставить("Дата", Результат.Дата);   
   Структура.Вставить("Номер", Результат.Номер);
    Структура.Вставить("patient_family", Результат.Фамилия);
...
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

cska-fanat-kz

поля запроса задайте так как они называются в документе ЗаявкаВИМС
и потом...

Результат = Запрос.Выполнить().Выгрузить();
ВыборкаДанных = Результат;
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск