7.7 Вывод в отчет значений реквизитов регистров
Показывать по
сообщений
- 1
- 2
11.01.2010
12:01
#1
"|Период с ВыбНач по ВыбКонПериода;<br> |Обрабатывать НеПомеченныеНаУдаление;<br> |Без итогов;<br> |КредитныйДокумент = Регистр.НачислениеПроцентов.КредитныйДокумент, Регистр.ПеняПоПроцентам.КредитныйДокумент, Регистр.НачислениеОД.КредитныйДокумент, Регистр.ПеняПоОД.КредитныйДокумент;<br> |Договор = Регистр.ПеняПоОД.Договор, Регистр.ПеняПоПроцентам.Договор, Регистр.НачислениеПроцентов.Договор, Регистр.НачислениеОД.Договор;<br> |СуммаПроц = Регистр.НачислениеПроцентов.Сумма;<br> |СуммаОД = Регистр.НачислениеОД.Сумма;<br> |СуммаПеняПроц = Регистр.ПеняПоПроцентам.Сумма;<br> |СуммаПеняОД = Регистр.ПеняПоОД.Сумма;<br> |ПроцентыРасчетнаяСумма = Регистр.НачислениеПроцентов.РасчетнаяСумма; // ЭТО РЕКВИЗИТ<br> |ПеняПроцРасчетнаяСумма = Регистр.ПеняПоПроцентам.РасчетнаяСумма;// ЭТО РЕКВИЗИТ<br> |ПеняОДРасчетнаяСумма = Регистр.ПеняПоОД.РасчетнаяСумма;// ЭТО РЕКВИЗИТ<br> |Функция СуммаПроцПриход = Приход(СуммаПроц);<br> |Функция СуммаОДПриход = Приход(СуммаОД);<br> |Функция СуммаПеняПроцПриход = Приход(СуммаПеняПроц);<br> |Функция СуммаПеняОДПриход = Приход(СуммаПеняОД);<br> |Группировка Договор без групп;<br> |Группировка КредитныйДокумент без групп;<br> |Группировка Месяц;<br> |Группировка Документ;<br> |Условие(Договор в ВыбДоговор);<br> |Условие(КредитныйДокумент = ВыбКредитныйДокумент.ДокументВыдачи);<br><br>Вот текст запроса, однако при выводе таблицы выводится только один из реквизитов, сначала "ПроцентыРасчетнаяСумма", потом как только появляются суммы по "СуммаПеняПроцПриход", выводится реквизит ПеняПроцРасчетнаяСумма, а "ПроцентыРасчетнаяСумма" равен нулю и тд.<br><br>ВОПРОС - как выводить реквизиты по всем регистрам, без обнуления? <br>СПАСИБО ЗАРАНЕЕ.<br>"
11.01.2010
17:47
#3
"вы их в конструкцию Функция поместите. То есть, будет что то вроде такого:<br>|ПроцентыРасчетнаяСумма = Регистр.НачислениеПроцентов.РасчетнаяСумма; // ЭТО РЕКВИЗИТ<br>|ПеняПроцРасчетнаяСумма = Регистр.ПеняПоПроцентам.РасчетнаяСумма;// ЭТО РЕКВИЗИТ<br>|ПеняОДРасчетнаяСумма = Регистр.ПеняПоОД.РасчетнаяСумма;// ЭТО РЕКВИЗИТ<br>|Функция СуммаПроцентыРасчетнаяСумма = Приход(ПроцентыРасчетнаяСумма);<br>|Функция СуммаПеняПроцРасчетнаяСумма = Приход(ПеняПроцРасчетнаяСумма);<br>|Функция СуммаПеняОДРасчетнаяСумма = Приход(ПеняОДРасчетнаяСумма);<br>...<br><br>В общем, это все от того, что по идее, внутренние переменные запроса не должны быть видны в дальнейшем через Запрос.ВнутренняяПеременная, а видны должны быть только те переменные, по которым была группировка и результаты функций. 1С, к сожалению, не блокирует обращиние к ним, в результате возникает "ложная надежда", что таким образом можно достать какие то данные"
11.01.2010
20:43
#5
"Конечно складывать будет, по всем группировкам, которые у вас есть и будет сложение. Далее при переборе результатов запроса вы получите итоги и по месяцу и по договору и т.п.<br>|Группировка Договор без групп;<br>|Группировка КредитныйДокумент без групп;<br>|Группировка Месяц;<br>|Группировка Документ;<br>"
14.11.2012
10:47
#7
Добрый день<br> <br>Это если реквизит типа "число", а если это элемент тип реквизита "справочник"? Тогда что делать? При попытке вставить в функцию будет, естественно, ошибка запроса... Подскажите, плз, как же вывести такие реквизиты
14.11.2012
10:53
#8
"> как же вывести такие реквизиты<br> <br><pre>ТекстЗапроса="Товар=Справочник.Номенклатура.ТекущийЭлемент;<br> |Группировка Товар без групп без упорядочивания;";<br>Запрос=СоздатьОбъект("Запрос");<br>Если Запрос.Выполнить(ТекстЗапроса)=1 Тогда<br> Пока Запрос.Группировка(1)=1 Цикл<br> Сообщить(Запрос.Товар);<br> КонецЦикла;<br>КонецЕсли; </pre><br><br> <br>Для примера текст своего запроса напишите."
14.11.2012
11:06
#9
"Точный текст запроса дома, но смысл такой:<br> <br> |Фирма= Регистр.Цены.Фирма;<br> |Номенклатура= Регистр.Цены.Номенклатура;<br> |Контрагент= Регистр.Цены.Контрагент;<br> |Цена= Регистр.Цены.Цена;<br> |Валюта= Регистр.Цены.Валюта; // ЭТО РЕКВИЗИТ<br> |Единица= Регистр.Цены.Единица; // ЭТО РЕКВИЗИТ<br> |Функция КонОстЦена= КонОст(Цена);<br> |Условие(Договор в ВыбДоговор);<br> |Группировка Номенклатура без групп;<br> |Группировка Контрагент без групп;<br> <br>Запрос=СоздатьОбъект("Запрос");<br>Если Запрос.Выполнить(ТекстЗапроса)=1 Тогда<br> Пока Запрос.Группировка("Номенклатура")=1 Цикл<br> Пока Запрос.Группировка("Контрагент")=1 Цикл<br> Сообщить("Номенклатура: "+Запрос.Номенклатура+" Контрагент: "+Запрос.Контрагент+" Цена "+Запрос.Цена);<br> Сообщить("Валюта: "+Запрос.Валюта+" Единица: "+Запрос.Единица); // вот эта строка ничего не выводит<br> КонецЦикла;<br> КонецЦикла;<br>КонецЕсли;<br> <br>Примерно так -я хочу увидеть значения Валюты и Единицы - а мне запрос ничего не показывает (в регистре данная информация присутствует - проверял)"
- 1
- 2
Читают тему
(гостей: 1)