Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

Выбор периода в выгрузке

Выбор периода в выгрузке
Я
   Aslay
 
18.09.18 - 13:05
Приветствую. Есть самописная обработка-выгрузка справочников и оборотов. Она не верно работает, точнее выгружает документы только до вчерашнего числа. Допустим сегодня сформировали автозаказ, так сегодняшние заказы обработка не выгружает. Глянул код и честно гвооря меня он смутил.

НастройкаПериода.УстановитьПериод(Период.ДатаНачала, ?(Период.ДатаОкончания='0001-01-01', Период.ДатаОкончания, КонецДня(Период.ДатаОкончания)));

Есть тут кодеры? подскажите?
 
 
   catena
 
1 - 18.09.18 - 13:09
Что именно подсказать-то?
   НоваяВолна
 
2 - 18.09.18 - 13:14
(0) Что не понятно? Если не задан Период.ДатаОкончания, то берется ДатаОкончания на начало дня, а если задан то на конец дня
   Михаил Козлов
 
3 - 18.09.18 - 13:15
Напишите так:
НастройкаПериода.УстановитьПериод(Период.ДатаНачала, ?(ЗначениеЗаполнено(Период.ДатаОкончания), КонецДня(Период.ДатаОкончания), КонецДня(Текущая.Дата)));
   Aslay
 
4 - 18.09.18 - 13:35
(1) (2) непонятна причина выгрузки не день в день а минус 1 день. не в этои ли строчка проблемная?
   catena
 
5 - 18.09.18 - 13:39
(4)Вы пытаетесь методом тыка найти, где исправить? Это не та строчка, можно продолжать поиски.
   Aslay
 
6 - 29.09.18 - 11:02
(5) скорее всего да. в 1сных кодах я не особо. не так давно начал изучать.

Потихоьнку разобрался что выгружает с регистра накопления, приход-перемещение день в день, а вот обороты выгружает только на следующий день. Какая то зависимость от перемещения. Чуть позже покажу процедуру выборки, может и подскажете а точнее ткнете носом в ошибку.
   Cool_Profi
 
7 - 29.09.18 - 11:03
А почему это ошибкой считается? Может, так и было задумаено?
   Aslay
 
8 - 29.09.18 - 11:20
Наверное стоит расписать как и для чего она. есть магазин и склад.  С магазина внешней обработкой в фтп сливаются заказы, перемещения(с товара с магазина на склад-допустим велосипеды уже не актуальны),  в биглит с фтп (это система складского учета) перемещения падают сразу, номенклатура тоже сразу, а вот заказы только на следующий день. Почему неправильно-потому что завсклад должен ориентироватся на заказ(в биглите) и перемещать их в магазин. Сейчас операторы формируют заказ и передают почтой).
   Aslay
 
9 - 29.09.18 - 12:21
насколько я понимаю в приведенном коде ниже идет инициилизация данных для выгрузки

"ВЫБРАТЬ
        |    ТоварыНаСкладахОбороты.Номенклатура КАК Номенклатура,
        |    ТоварыНаСкладахОбороты.Регистратор,
        |    ЕСТЬNULL(ТоварыНаСкладахОбороты.Регистратор.Контрагент, ЕСТЬNULL(ПартииТоваровНаСкладах.ДокументОприходования.Контрагент, ЗНАЧЕНИЕ(Справочник.Контрагенты.ПустаяСсылка))) КАК Контрагент,
        |    ТоварыНаСкладахОбороты.Регистратор.Номер,
        |    ТоварыНаСкладахОбороты.Регистратор.Дата,
        |    ВЫБОР
        |        КОГДА ТоварыНаСкладах.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход)
        |            ТОГДА ЕСТЬNULL(ТоварыНаСкладахОбороты.КоличествоРасход, 0) + ЕСТЬNULL(ТоварыНаСкладахОбороты.КоличествоПриход, 0)
        |        ИНАЧЕ ЕСТЬNULL(ТоварыНаСкладахОбороты.КоличествоРасход, 0) + ЕСТЬNULL(ТоварыНаСкладахОбороты.КоличествоПриход, 0)
        |    КОНЕЦ КАК Количество,
        |    ТоварыНаСкладах.ВидДвижения,
        |    ТоварыНаСкладах.НомерСтроки
        |ПОМЕСТИТЬ ВТ_Остатки
        |ИЗ
        |    РегистрНакопления.ТоварыНаСкладах.Обороты(&ДатаНачала, &ДатаОкончания, Регистратор, &УсловиеСклад) КАК ТоварыНаСкладахОбороты
        |        ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах КАК ТоварыНаСкладах
        |        ПО ТоварыНаСкладахОбороты.Регистратор = ТоварыНаСкладах.Регистратор
        |            И ТоварыНаСкладахОбороты.Номенклатура = ТоварыНаСкладах.Номенклатура
        |            И ТоварыНаСкладахОбороты.ХарактеристикаНоменклатуры = ТоварыНаСкладах.ХарактеристикаНоменклатуры
        |            И ТоварыНаСкладахОбороты.СерияНоменклатуры = ТоварыНаСкладах.СерияНоменклатуры
        |            И ТоварыНаСкладахОбороты.Качество = ТоварыНаСкладах.Качество
        |            И ТоварыНаСкладахОбороты.Склад = ТоварыНаСкладах.Склад
        |        ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрНакопления.ПартииТоваровНаСкладах КАК ПартииТоваровНаСкладах
        |        ПО ТоварыНаСкладахОбороты.Регистратор = ПартииТоваровНаСкладах.Регистратор
        |            И ТоварыНаСкладахОбороты.Номенклатура = ПартииТоваровНаСкладах.Номенклатура
        |            И ТоварыНаСкладахОбороты.ХарактеристикаНоменклатуры = ПартииТоваровНаСкладах.ХарактеристикаНоменклатуры
        |            И ТоварыНаСкладахОбороты.СерияНоменклатуры = ПартииТоваровНаСкладах.СерияНоменклатуры
        |            И ТоварыНаСкладахОбороты.Качество = ПартииТоваровНаСкладах.Качество
        |            И ТоварыНаСкладахОбороты.Склад = ПартииТоваровНаСкладах.Склад
        |;";
   Aslay
 
10 - 01.10.18 - 15:24
КОГДА ТоварыНаСкладах.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход)
        |            ТОГДА ЕСТЬNULL(ТоварыНаСкладахОбороты.КоличествоРасход, 0) + ЕСТЬNULL(ТоварыНаСкладахОбороты.КоличествоПриход, 0)
        |        ИНАЧЕ ЕСТЬNULL(ТоварыНаСкладахОбороты.КоличествоРасход, 0) + ЕСТЬNULL(ТоварыНаСкладахОбороты.КоличествоПриход, 0)

в ТОГДА и в ИНАЧЕ стоит +. По моему в иначе должен быть -.  Сеичас не могу проверить обработку, Но как по вашему мнению, ошибка в знаке?
 
 Рекламное место пустует

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует