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

Запрос обходит все документы. Как убрать из него некоторые? Подробности внутри.

Запрос обходит все документы. Как убрать из него некоторые? Подробности внутри.
Я
   Shecurok
 
05.06.19 - 17:43
Работаю в УТ 10.3.

Суть в том, что при создании документа ПереоценкаВалютныхСредств (ну допустим за 30 мая) у всех совершенно документов пересчитывается курс на этот день.

Если я правильно понимаю делает он это таким запросом:



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

    ТаблицаРезультата = Запрос.Выполнить().Выгрузить();

    ТаблицаРезультата.Колонки.Добавить("СуммаУпр");

    РассчитатьРазницуДляСуммыУпр(ТаблицаРезультата, СтруктураШапкиДокумента);

    Возврат ТаблицаРезультата;




При этом он так же пересчитывает курс у документа с платежом по авансу. Ну т.е. есть платежка со 100 евро, которая пришла, условно, 25 числа. Тогда курс был 70 рублей. При создании дока Переоценка... от 31 числа, где курс был 75 рублей, этот аванс пересчитается по курсу 75 рублей, при этом не должна.

Как мне из запроса (или откуда?) убрать эти самые документы с авансом от покупателя?
 
 
   Джинн
 
1 - 05.06.19 - 17:50
Знак суммы.
   Джинн
 
2 - 05.06.19 - 17:51
Ну и не забыть что у поставщиков и у покупателей знак разный.
   Shecurok
 
3 - 05.06.19 - 17:51
(1) ммм... знак суммы? можно пожалуйста поподробнее?
   Джинн
 
4 - 05.06.19 - 17:53
(3) Поподробнее смотрите в ТаблицаРезультата

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