33 / 33 / 1
Регистрация: 03.03.2011
Сообщений: 302
1
1C 8.x

Вывод результата запроса

24.10.2013, 10:28. Показов 3495. Ответов 6
Метки нет (Все метки)

Проблема следующая:
Нужно сделать запрос для подсчета НДФЛ по сотрудникам за выбранный месяц.
Итак...Запрос следующий:
1C
1
2
3
4
5
6
7
8
9
10
ВЫБРАТЬ
    СУММА(ЕСТЬNULL(НДФЛРасчетыСБюджетом.Налог, 0)) КАК Налог
ИЗ
    РегистрНакопления.НДФЛРасчетыСБюджетом КАК НДФЛРасчетыСБюджетом
ГДЕ
    НДФЛРасчетыСБюджетом.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)
    И НДФЛРасчетыСБюджетом.Период МЕЖДУ &Начало И &Конец 
ИТОГИ
    СУММА(Налог)
ПО   ОБЩИЕ
В консоли запросов мне выводит одну сумму - и она является правильной....При попытке отобразить эту сумму в табличный документ, сумма изменяется....Как так?
1C
1
Строка1.Параметры.НДФЛ = РезультатНДФЛОплата.Налог;
вот здесь присвоение просиходит.
если я изменю в запросе только одно слово:
1C
1
2
3
4
5
6
7
8
9
10
ВЫБРАТЬ
    СУММА(ЕСТЬNULL(НДФЛРасчетыСБюджетом.Налог, 0)) КАК Налог
ИЗ
    РегистрНакопления.НДФЛРасчетыСБюджетом КАК НДФЛРасчетыСБюджетом
ГДЕ
    НДФЛРасчетыСБюджетом.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)
    И НДФЛРасчетыСБюджетом.МесяцНалоговогоПериода МЕЖДУ &Начало И &Конец 
ИТОГИ
    СУММА(Налог)
ПО   ОБЩИЕ
Сумма как в консоли так и в табличном документе одинаковая...Где логика?
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.10.2013, 10:28
Ответы с готовыми решениями:

Вывод результата запроса
Начал делать запрос проблема с лишними записями, когда делаю через конструктор все норм - лишних...

Обработка результата запроса
Добрый день Прошу более опытных подсказать по задаче.Первым запросом получаю ссылку на документ,а...

вывод в результата запроса в таблицу
Всем привет! Как вывести результат запроса в таблицу. Вопрос наверное уже много раз задавался, но у...

Вывод результата запроса в табличную часть
Есть такой запрос. Не понимаю, как вывести результат в табчасть. Чему нужно присваивать...

6
286 / 186 / 18
Регистрация: 20.02.2012
Сообщений: 925
24.10.2013, 11:45 2
Цитата Сообщение от fruktik Посмотреть сообщение
Проблема следующая:
Нужно сделать запрос для подсчета НДФЛ по сотрудникам за выбранный месяц.
Итак...Запрос следующий:
1C
1
2
3
4
5
6
7
8
9
10
ВЫБРАТЬ
    СУММА(ЕСТЬNULL(НДФЛРасчетыСБюджетом.Налог, 0)) КАК Налог
ИЗ
    РегистрНакопления.НДФЛРасчетыСБюджетом КАК НДФЛРасчетыСБюджетом
ГДЕ
    НДФЛРасчетыСБюджетом.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)
    И НДФЛРасчетыСБюджетом.Период МЕЖДУ &Начало И &Конец 
ИТОГИ
    СУММА(Налог)
ПО   ОБЩИЕ
В консоли запросов мне выводит одну сумму - и она является правильной....При попытке отобразить эту сумму в табличный документ, сумма изменяется....Как так?
1C
1
Строка1.Параметры.НДФЛ = РезультатНДФЛОплата.Налог;
вот здесь присвоение просиходит.
если я изменю в запросе только одно слово:
1C
1
2
3
4
5
6
7
8
9
10
ВЫБРАТЬ
    СУММА(ЕСТЬNULL(НДФЛРасчетыСБюджетом.Налог, 0)) КАК Налог
ИЗ
    РегистрНакопления.НДФЛРасчетыСБюджетом КАК НДФЛРасчетыСБюджетом
ГДЕ
    НДФЛРасчетыСБюджетом.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)
    И НДФЛРасчетыСБюджетом.МесяцНалоговогоПериода МЕЖДУ &Начало И &Конец 
ИТОГИ
    СУММА(Налог)
ПО   ОБЩИЕ
Сумма как в консоли так и в табличном документе одинаковая...Где логика?


Единственное что может быть, это способ выборки после выполнения запроса... Так как у вас итоги, из выборки надо брать только первую строку, если итоги убрать, то надо проходиться циклом по выборке и суммировать значения.

Например я делаю так: С итогами:
1C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
    |ИТОГИ
    |   СУММА(СуммаНачальныйРазвернутыйОстатокДт),
    |   СУММА(СуммаКонечныйРазвернутыйОстатокДт),
    |   СУММА(Поступило)
    |ПО
    |   ОБЩИЕ";
    
    
    Результат = Запрос.Выполнить();
    Выборка =  Результат.Выбрать();
    Выборка.Следующий();
    
    МассивРезультата = новый массив;
    МассивРезультата.Добавить(?(Выборка.СуммаНачальныйРазвернутыйОстатокДт = NULL или Выборка.СуммаНачальныйРазвернутыйОстатокДт = Неопределено,0,Выборка.СуммаНачальныйРазвернутыйОстатокДт));
............................................
    
    Возврат МассивРезультата;
далее с массива выбираю по индексу

или без итогов:

1C
1
2
3
4
5
6
Результат = Запрос.Выполнить();
    Выборка =  Результат.Выгрузить();
    Для каждого стр из выборка цикл
.........................
сумма = сумма  + стр.сумма;
конецЦикла;
как то так...
1
33 / 33 / 1
Регистрация: 03.03.2011
Сообщений: 302
24.10.2013, 15:47  [ТС] 3
А дело-то оказалось совсем в другом...Я брал дату конца месяца, к примеру: 30.09.2013....и программно оно ее конвертировало в 30.09.2013 00:00:00....А нужно было 30.09.2013 23:59:59, ибо пропускались записи.
0
72 / 72 / 1
Регистрация: 18.12.2012
Сообщений: 390
24.10.2013, 16:01 4
Надо писать КонецДня(КонецМесяца)
0
2954 / 1766 / 82
Регистрация: 03.11.2011
Сообщений: 8,280
24.10.2013, 18:19 5
А зачем "ИТОГИ"? просто любопытно
ВЫБРАТЬ СУММА(Ресурс) КАК Ресурс ИЗ Таблица ГДЕ Измерение1=&Пар1 И Измерение2=&Пар2
рез=Запрос.Выполнить().Выбрать() или Выгрузить()
рез.Следующий();искомое=рез.Ресур или искомое=рез[0].Ресурс
0
900 / 877 / 8
Регистрация: 15.03.2012
Сообщений: 2,680
25.10.2013, 09:03 6
Вообще запрос в корне не верен, нужно использовать виртуальную таблицу Обороты регистра.
0
2954 / 1766 / 82
Регистрация: 03.11.2011
Сообщений: 8,280
26.10.2013, 11:55 7
Цитата Сообщение от Fenomen Посмотреть сообщение
Вообще запрос в корне не верен, нужно использовать виртуальную таблицу Обороты регистра.
Абсолютно верно. В виртуальной таблице всё уже просуммировано
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.10.2013, 11:55
Помогаю со студенческими работами здесь

Выгрузка результата запроса в ТЧ
В общем необходимо в табл часть обработки выгрузить все документы определенного типа, вот код: ...

Выгрузка результата запроса в текст
Здравствуйте. Подскажите, как вывести результат запроса в текст на форме, например: Надпись= //...

Можно ли из результата запроса создать таблицу значений?
1. В результате запроса формируется таблица с данными, эти данные мне хочется записать в...

Вывод результата запроса на обычную форму
Здравсвуйте! Мне надо вывести данные, полученные из запроса на обычную форму 8.2 Запрос=Новый...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru