Версия для печати темы (https://pro1c.org.ua/index.php?s=20a2f9fd285ce142a3823636ffd5457f&showtopic=18830)

Нажмите сюда для просмотра этой темы в обычном формате

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 _ Программирование в 1С Предприятие 8.1 (8.0) _ Движения по регистру накопления.

Автор: Powerman 17.07.14, 9:14

В конце процедуры «ОбработкаПроведения» вызываю из общего модуля экспортную функцию, в которой пытаюсь получить движения по регистру, которые точно есть т.к. в консоли запросов данные получаю. При выполнении запроса в экспортной функции данных нет… Пытался получать их через запрос и СоздатьНаборЗаписей с отбором по регистратору.
Код ниже…
Подскажите, почему нет данных…
Спасибо.

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

Автор: alex040269 17.07.14, 9:55

потому что они еще не записаны в базу.

Автор: Powerman 17.07.14, 10:01

Цитата(alex040269 @ 17.07.14, 10:55) *
потому что они еще не записаны в базу.

вызов функции в последней строке процедуры проведения, после процедур самих движений.

Автор: Rayne 17.07.14, 10:08

Была тут где-то тема, где обсуждалось, почему нельзя движения по партиям достать запросом в обработке проведения самого документа

http://pro1c.org.ua/index.php?showtopic=18298

А консолью проверять бесполезно - момент уже не тот, движения уже есть в базе.

Автор: alex040269 17.07.14, 10:08

Перед запросом вставтье код:

Движения.ПартииТоваровНаСкладах.Записать(Истина);

и убедитесь, что в "Движения.ПартииТоваровНаСкладах" есть записи.
какой будет результат запроса?

Автор: Powerman 17.07.14, 13:46

Цитата(alex040269 @ 17.07.14, 11:08) http://pro1c.org.ua/index.php?act=findpost&pid=88934
Была тут где-то тема, где обсуждалось, почему нельзя движения по партиям достать запросом в обработке проведения самого документа

http://pro1c.org.ua/index.php?showtopic=18298

А консолью проверять бесполезно - момент уже не тот, движения уже есть в базе.


Так конечно получается…
Для каждого Движение из Движения.Продажи Цикл
   //...
КонецЦикла;


Мне подошло проще…
ИтогДвижение = Источник.Движения.ПартииТоваровНаСкладах.Итог("Количество");


Но опять же… движения не записаны и не факт что на сто процентов запишутся в том виде, каком есть в процедуре проведения.

Автор: Rayne 17.07.14, 14:38

1. Запишутся, если у вас нет дополнительных обработок в подписках на события.
2. Если есть сомнения в том, что "не факт, что они в таком виде запишутся", то зачем тогда вообще к ним запрос делать? Цель-то конечная есть какая-то?

Автор: Powerman 17.07.14, 14:47

Цитата(Rayne @ 17.07.14, 15:38) *
1. Запишутся, если у вас нет дополнительных обработок в подписках на события.
2. Если есть сомнения в том, что "не факт, что они в таком виде запишутся", то зачем тогда вообще к ним запрос делать? Цель-то конечная есть какая-то?


Конечная цель проверить ошибки при проведении по партиям. Т.е. количество по табличной части документа сравнить с количеством в движении по регистру.
По-хорошему, я так думаю, надо бы проверять в какой ни будь обработке.

Автор: Rayne 17.07.14, 14:58

А если по одной строке документа будет списываться несколько партий? Это самописный документ? В стандартных движения делаются глобальными процедурами.

Автор: Vofka 17.07.14, 15:00

Powerman, зачем?

Автор: Rayne 17.07.14, 15:06

Цитата(Vofka @ 17.07.14, 16:00) *
Powerman, зачем?


Тоже отличный вопрос smile.gif

Автор: alex040269 18.07.14, 14:42

Цитата(Vofka @ 17.07.14, 16:00) *
Powerman, зачем?

что бы убедиться в правильности кода smile.gif я полагаю.

Автор: Powerman 19.07.14, 10:47

Цитата(alex040269 @ 18.07.14, 15:42) *
что бы убедиться в правильности кода smile.gif я полагаю.

Угадали... 44000000.gif

Спасибо всем кто участвовал в обсуждении. icon_beer17.gif

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua