Имя: Пароль:
1C
1С v8
Конвертация. Запрос в правилах обмена.
0 servicenn
 
05.10.16
19:46
Доброе время суток, нужно доработать правила, не часто с конвертацией сталкиваюсь на скорую руку попробовал сделать пока не пошло. Есть документ ИмпортПоступлениеКонтейнераВПТиУ в базе источнике в приёмник он попадает в документ поступлениеТоваровуУСЛУГ. В текущих правилах перенос работает.Но необходимо в базе источнике выбирать этот документ из регистра .Попробовал написать запрос в правилах выгрузки данных ,обработчик: Перед обработкой. запрос = новый запрос;
1 servicenn
 
05.10.16
19:46
Запрос.текст ="
        |ВЫБРАТЬ
        |    СостоянияКонтейнеров.Регистратор,
        |    СостоянияКонтейнеров.Контейнер
        |ИЗ
        |    РегистрСведений.СостоянияКонтейнеров КАК СостоянияКонтейнеров
        |ГДЕ
        |    СостоянияКонтейнеров.Период МЕЖДУ &НачалоПериода И &ОкончаниеПериода
        //|    И СостоянияКонтейнеров.СостояниеКонтейнера = ЗНАЧЕНИЕ(Перечисление.ВариантыСостоянийКонтейнеров.ПоступилНаСкладВПути)
        |";                 

        УстановитьПараметр("НачалоПериода" , НачалоПериода);
        УстановитьПараметр("ОкончаниеПериода" , ОкончаниеПериода);
ВыборкаДанных = Запрос.выполнить().выбрать();
2 servicenn
 
05.10.16
19:47
В чём могут быть ошибки
3 DailyLookingOnA Sunse
 
05.10.16
20:39
Как минимум "Регистратор КАК Ссылка".
А так возможно что в запросе и все поля документа придется указать.
4 servicenn
 
05.10.16
21:07
Нашёл в типовых правилах пример там создаётся таблица значений а запрос в процедуре в последней строчке. ВыборкаДанных = СоздатьОбъект("ТаблицаЗначений");
ВыборкаДанных.НоваяКолонка("Дата");
ВыборкаДанных.НоваяКолонка("Комментарий");
ВыборкаДанных.НоваяКолонка("ЗаказыПоставщикам");

ВыборкаДанных.НоваяСтрока();

ВыборкаДанных.Дата = ПолучитьДатуV8(ПолучитьТА());
ВыборкаДанных.Комментарий = "Остатки по заказам поставщикам";
ВыборкаДанных.ЗаказыПоставщикам = ЗаказыОстатки();
5 servicenn
 
05.10.16
21:08
ЗаказыОстатки() на закладке Алгоритмы/запросы
6 hhhh
 
05.10.16
21:23
сделай

ВыборкаДанных = Запрос.выполнить().выгрузить();
7 Franchiser
 
гуру
05.10.16
21:32
(0) ВыборкаДанных должна содержать все поля, которые обрабатываются правилом + тебе нужно в нее ТЧ запихнуть.
8 DailyLookingOnA Sunse
 
05.10.16
21:34
Вот так еще можно попробовать:

ВЫБРАТЬ  СостоянияКонтейнеров.Регистратор.*,
9 servicenn
 
05.10.16
21:39
Спасибо буду пробовать, возможно уже завтра