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


1С:Предприятие ::

Метки: 

v7: Разница сумм в запросе и по Итогу

Я
   zenon46
 
25.07.18 - 11:04
Доброго дня, не пойму почему идут расхождения между запросом и методом Итог по колонке.

    ТекстЗапроса = "
    |Период с НачДата по КонДата;
    |ОбрабатыватьДокументы Все;
    |ТекДок                        = Документ.ЗаявкаПокупателя.ТекущийДокумент;
    |Фирма                        = Документ.ЗаявкаПокупателя.ТекущийДокумент.Фирма;
    |Контр                         = Документ.ЗаявкаПокупателя.ТекущийДокумент.Контрагент;
    |СуммаД                       = Документ.ЗаявкаПокупателя.ТекущийДокумент.Сумма;
    |СтатусЗаявки                 = Документ.ЗаявкаПокупателя.ТекущийДокумент.ДляОбщегоЖурнала;
    |ПроектЗапрос                 = Документ.ЗаявкаПокупателя.ТекущийДокумент.Проект;
    |ФлагПечатиЗапрос             = Документ.ЗаявкаПокупателя.ТекущийДокумент.ФлагПечати;
    |ВидОперации                  = Документ.ЗаявкаПокупателя.ТекущийДокумент.ВидОперации;    
    |Функция СуммаСумма              = Сумма(СуммаД);
    |Группировка ТекДок;
    |Условие (ТекДок.ПометкаУдаления() = 0);
    |Условие (ВидОперации = Перечисление.ВидыОперацийЗаявок.Неподтвержденная);    
    |";


Наткнулся случайно на одном документе, если взять Запрос.СуммаСумма не равна если сделать Запрос.ТекДок.Итог("Сумма"), причем второе правильно, а из запроса не правильно. Что не так ?
 
  Рекламное место пустует
   Builder
 
1 - 25.07.18 - 11:27
Могу только сказать что текст запроса просто ужасен.
1. СуммаД= Документ.ЗаявкаПокупателя.Сумма;
2. Условие (ТекДок.ПометкаУдаления() = 0) - этот фильтр ставится в другом месте.
   zenon46
 
2 - 25.07.18 - 11:36
(1) ну сделаю так, разницы то, все равно почему суммы не правильные не пойму. |Обрабатывать НеПомеченныеНаУдаление;
   Builder
 
3 - 25.07.18 - 11:38
(2) База файловая? Переиндексируй для начала. Пересохрани проблемный документ. Может в нем косяк какой.
   uno-group
 
4 - 25.07.18 - 11:40
Сумма считает только целые числа. копейки все теряются.
как вариант писать в запроса
СуммаСумма=Сумма(СуммаД*100)
А при выводе делить на 100.
   zenon46
 
5 - 25.07.18 - 11:40
(3) SQL, уже менял его сумму, тоже выводится не правильно, причем на непонятное число.
   zenon46
 
6 - 25.07.18 - 11:42
да, заметил что не только на нем, а рандом како-то чистой воды, одни норм показывает, другие криво.
   zenon46
 
7 - 25.07.18 - 11:59
(4) тут 100-ни рублей не совпадают, врядли дело в копейках.
   Масянька
 
8 - 25.07.18 - 12:03
(7) СуммаД                       = Документ.ЗаявкаПокупателя.ТекущийДокумент.Сумма; - это итог по документу.
Функция СуммаСумма              = Сумма(СуммаД) - а это сумма чего? (подумай) :)
   zenon46
 
9 - 25.07.18 - 12:07
(4) Жесть, это реально сработало.
   zenon46
 
10 - 25.07.18 - 12:07
(8) это не итог по документу, там нет такого реквизита, "Сумма" - это реквизит табличной части.
 
  Рекламное место пустует
   Злопчинский
 
Ведущий
11 - 25.07.18 - 12:21
самый тривиальный вариант. если в заявке не заполнена по строке ЕДИНИЦА (а это криворукие жопоглоты на раз делают) - то в документе сумма будет, а в регистре данные этой строки - нет
   Масянька
 
12 - 25.07.18 - 12:22
(10) ТекущийДокумент - только для ТекДок.
В остальных случаях - Документ.ЗаявкаПокупателя.Сумма
   Злопчинский
 
Ведущий
13 - 25.07.18 - 12:29
|Условие (ТекДок.ПометкаУдаления() = 0);
выкинуть нафиг - это тормозить будет.
для фильтра по непроведенным/проведенным/удаленным - есть отдельная инструкция в языке запросов
   Злопчинский
 
Ведущий
14 - 25.07.18 - 12:30
есть отличия в использовании
Группировка ТекДок;
и предопределенной
Группировка Документ;

- но вот уже не помню что за тонкость
   zenon46
 
15 - 25.07.18 - 12:37
(13) пасиб, учту
   Масянька
 
16 - 25.07.18 - 12:44
(15) Ты (12) проверил?
   zenon46
 
17 - 25.07.18 - 15:06
(16) проверил, работает как и работало, в чем принципиальная разница, использование вашей конструкции и моей ?
   Масянька
 
18 - 25.07.18 - 15:09
(17) У меня Ваша конструкция не работает - нет ни цены, ни суммы. Проверяла на другом док-те с таб. частью.
Разница в  ТекущийДокумент.
   zenon46
 
19 - 25.07.18 - 15:11
(18) это капец как странно, у меня все работает без изменений
   zenon46
 
20 - 25.07.18 - 15:16
У меня не работает вот это |Обрабатывать НеПомеченныеНаУдаление;  - в выборку ничего не попадает
   zenon46
 
21 - 25.07.18 - 15:29
(13) есть только такое  Ожидаются следующие значения: 'Проведенные', 'НеПроведенные', 'все' - меня могут быть как проведенные так и не проведенные и мне надо из них отсеить не помеченные на удаление.
   Duke1C
 
22 - 31.07.18 - 10:14
(21) ОбрабатыватьДокументы Все;
     Обрабатывать НеПомеченныеНаУдаление;



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