|
НЕ выводит значение всех Жильцов | ☑ | ||
---|---|---|---|---|
0
Georgeous
06.11.15
✎
09:42
|
Здравствуйте! Я новичок в 1С 8.2, но хотелось сделать следующее:
Есть данные регистра накоплений (РасчеПоказанийОбороты) и нужно создать Отчет( НО не СКД!!!)по кнопке Сформировать при помощи запроса, который бы выводил По Выбору из Справочника Жильцы - индивидуальные значение выбранного И При пустом значении Выбора - всех Жильцов вместе, причем в одном макете (Квитанция) следуя друг за другом. Заранее Благодарю!!! Вот мой код: Процедура КнопкаСформироватьНажатие(Кнопка) ЭлементыФормы.ПолеТабличногоДокумента.Очистить(); ТабличныйДокумент = Новый ТабличныйДокумент; Макет = ПолучитьМакет("Квитанции"); ОбластьШапка = Макет.ПолучитьОбласть("Шапка"); ОбластьСтрока = Макет.ПолучитьОбласть("Строка"); ОбластьПодвал = Макет.ПолучитьОбласть("Подвал"); ОбластьШапка.Параметры.Проживающий = Жильцы.Проживающий; ОбластьШапка.Параметры.Дата = Формат(Дата, "ДФ='dd MMMM yyyy'"); ТабличныйДокумент.Вывести(ОбластьШапка); // по расходу Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | РасчеПоказанийОбороты.Жильцы, | РасчеПоказанийОбороты.ВодаХолоднаяПоТарифуОборот, | РасчеПоказанийОбороты.ВодаХолоднаяПоТарифуПриход, | РасчеПоказанийОбороты.ВодаХолоднаяПоТарифуРасход, | РасчеПоказанийОбороты.ВодаХолоднаяСверхТарифаОборот, | РасчеПоказанийОбороты.ВодаХолоднаяСверхТарифаПриход, | РасчеПоказанийОбороты.ВодаХолоднаяСверхТарифаРасход, | РасчеПоказанийОбороты.ЭлектроэнергияДо150Оборот, | РасчеПоказанийОбороты.ЭлектроэнергияДо150Приход, | РасчеПоказанийОбороты.ЭлектроэнергияДо150Расход, | РасчеПоказанийОбороты.ЭлектроэнергияОт150До300Оборот, | РасчеПоказанийОбороты.ЭлектроэнергияОт150До300Приход, | РасчеПоказанийОбороты.ЭлектроэнергияОт150До300Расход, | РасчеПоказанийОбороты.ЭлектроэнергияСвыше300Оборот, | РасчеПоказанийОбороты.ЭлектроэнергияСвыше300Приход, | РасчеПоказанийОбороты.ЭлектроэнергияСвыше300Расход, | РасчеПоказанийОбороты.КанализацияПоТарифуОборот, | РасчеПоказанийОбороты.КанализацияПоТарифуПриход, | РасчеПоказанийОбороты.КанализацияПоТарифуРасход, | РасчеПоказанийОбороты.КанализацияСверхТарифаОборот, | РасчеПоказанийОбороты.КанализацияСверхТарифаПриход, | РасчеПоказанийОбороты.КанализацияСверхТарифаРасход, | РасчеПоказанийОбороты.ОтчисленияНаКапремонтОборот, | РасчеПоказанийОбороты.ОтчисленияНаКапремонтПриход, | РасчеПоказанийОбороты.ОтчисленияНаКапремонтРасход, | РасчеПоказанийОбороты.ТехобслуживаниеОборот, | РасчеПоказанийОбороты.ТехобслуживаниеПриход, | РасчеПоказанийОбороты.ТехобслуживаниеРасход, | РасчеПоказанийОбороты.ЗемельныйНалогОборот, | РасчеПоказанийОбороты.ЗемельныйНалогПриход, | РасчеПоказанийОбороты.ЗемельныйНалогРасход, | РасчеПоказанийОбороты.ЛиминНаОдногоОборот, | РасчеПоказанийОбороты.ЛиминНаОдногоПриход, | РасчеПоказанийОбороты.ЛиминНаОдногоРасход, | РасчеПоказанийОбороты.ГКаллЗаОтоплениеОборот, | РасчеПоказанийОбороты.ГКаллЗаОтоплениеПриход, | РасчеПоказанийОбороты.ГКаллЗаОтоплениеРасход, | РасчеПоказанийОбороты.ГКаллЗаВодуГорячуюОборот, | РасчеПоказанийОбороты.ГКаллЗаВодуГорячуюПриход, | РасчеПоказанийОбороты.ГКаллЗаВодуГорячуюРасход, | РасчеПоказанийОбороты.Стоимость1ГКаллОборот, | РасчеПоказанийОбороты.Стоимость1ГКаллПриход, | РасчеПоказанийОбороты.Стоимость1ГКаллРасход, | РасчеПоказанийОбороты.РадиоОборот, | РасчеПоказанийОбороты.РадиоПриход, | РасчеПоказанийОбороты.РадиоРасход, | РасчеПоказанийОбороты.ОбслуживаниеДомофонаОборот, | РасчеПоказанийОбороты.ОбслуживаниеДомофонаПриход, | РасчеПоказанийОбороты.ОбслуживаниеДомофонаРасход, | РасчеПоказанийОбороты.ДомофонОборот, | РасчеПоказанийОбороты.ДомофонПриход, | РасчеПоказанийОбороты.ДомофонРасход, | РасчеПоказанийОбороты.ЭлектроэнергияОборот, | РасчеПоказанийОбороты.ЭлектроэнергияПриход, | РасчеПоказанийОбороты.ЭлектроэнергияРасход, | РасчеПоказанийОбороты.ГорячаяВодаОборот, | РасчеПоказанийОбороты.ГорячаяВодаПриход, | РасчеПоказанийОбороты.ГорячаяВодаРасход, | РасчеПоказанийОбороты.ХолоднаяВодаОборот, | РасчеПоказанийОбороты.ХолоднаяВодаПриход, | РасчеПоказанийОбороты.ХолоднаяВодаРасход, | РасчеПоказанийОбороты.КанализацияОборот, | РасчеПоказанийОбороты.КанализацияПриход, | РасчеПоказанийОбороты.КанализацияРасход, | РасчеПоказанийОбороты.КанализацияСверхОборот, | РасчеПоказанийОбороты.КанализацияСверхПриход, | РасчеПоказанийОбороты.КанализацияСверхРасход, | РасчеПоказанийОбороты.ВодаХолоднаяОборот, | РасчеПоказанийОбороты.ВодаХолоднаяПриход, | РасчеПоказанийОбороты.ВодаХолоднаяРасход, | РасчеПоказанийОбороты.ВодаХолоднаяСверхтарифОборот, | РасчеПоказанийОбороты.ВодаХолоднаяСверхтарифПриход, | РасчеПоказанийОбороты.ВодаХолоднаяСверхтарифРасход, | РасчеПоказанийОбороты.Свыше300Оборот, | РасчеПоказанийОбороты.Свыше300Приход, | РасчеПоказанийОбороты.Свыше300Расход, | РасчеПоказанийОбороты.До300Оборот, | РасчеПоказанийОбороты.До300Приход, | РасчеПоказанийОбороты.До300Расход, | РасчеПоказанийОбороты.До150Оборот, | РасчеПоказанийОбороты.До150Приход, | РасчеПоказанийОбороты.До150Расход, | РасчеПоказанийОбороты.КоличествоПроживающихОборот, | РасчеПоказанийОбороты.КоличествоПроживающихПриход, | РасчеПоказанийОбороты.КоличествоПроживающихРасход |ИЗ | РегистрНакопления.РасчеПоказаний.Обороты(, , Период, Жильцы = &Ссылка) КАК РасчеПоказанийОбороты |ГДЕ | ВЫБОР | КОГДА РасчеПоказанийОбороты.Жильцы = ЗНАЧЕНИЕ(Справочник.Жильцы.ПустаяССылка) | ТОГДА ИСТИНА | ИНАЧЕ РасчеПоказанийОбороты.Жильцы = &Ссылка | КОНЕЦ"; Запрос.УстановитьПараметр("Период", Дата); Запрос.УстановитьПараметр("Ссылка", Жильцы); Результат = Запрос.Выполнить().Выбрать(); Пока Результат.Следующий() Цикл Жильцы = Результат.Жильцы; Результат= Результат.Выполнить().Выгрузить(); Для каждого текСтрока Из Результат Цикл ОбластьСтрока.Параметры.Заполнить(текСтрока); ОбластьСтрока.Параметры.Жильцы = Жильцы;//.Проживающий; //ОбластьСтрока.Параметры.Жильцы = Жильцы; КонецЦикла; ТабличныйДокумент.Вывести(ОбластьСтрока); ТабличныйДокумент.Вывести(ОбластьПодвал); ЭлементыФормы.ПолеТабличногоДокумента.Вывести(ТабличныйДокумент); ТабличныйДокумент.ВывестиГоризонтальныйРазделительСтраниц(); КонецПроцедуры |
|||
1
Горогуля
06.11.15
✎
09:44
|
>НО не СКД!!!
компонофобия? |
|||
2
Georgeous
06.11.15
✎
09:48
|
Своя печатная форма и Да я не совсем понимаю как правильно выводить)
|
|||
3
Artful Den
06.11.15
✎
09:54
|
Я б за такой регистр убил...
|
|||
4
Asmody
06.11.15
✎
09:57
|
(0) Если не нравится СКД (медицинские случаи мы не рассматриваем), переделай на ПостроительЗапроса. В нем можно использовать фигурные скобки в запросе и отборы.
Если и к Построителям недоброжелание, то надо поправить вот это условие: |ГДЕ | ВЫБОР | КОГДА &Ссылка = ЗНАЧЕНИЕ(Справочник.Жильцы.ПустаяССылка) | ТОГДА ИСТИНА | ИНАЧЕ РасчеПоказанийОбороты.Жильцы = &Ссылка | КОНЕЦ"; И в параметре таблицы оборотов подшаманить. По аналогии. Но лучше использовать СКД. |
|||
5
Georgeous
06.11.15
✎
09:58
|
Когда Отчет в СКД делал все работало, а дали свою печатную форму и тут все заглохло. Ну а регистр думаю стерпит новичка.
|
|||
6
Горогуля
06.11.15
✎
09:58
|
а что делать, когда захочется ещё пару показателей учёта добавить?
|
|||
7
Горогуля
06.11.15
✎
09:58
|
(5) такой ущёрбный регистр даже не способен осознать собственную ущербность
|
|||
8
Asmody
06.11.15
✎
10:00
|
(6) Это фигня! Вот когда граничные отметки сменятся, например, на 200 и 400, вот тут начнется радость!
|
|||
9
piter3
06.11.15
✎
10:01
|
(5) нет не выдержит.через пару лет...
|
|||
10
Горогуля
06.11.15
✎
10:01
|
(8) принципиально - новые показатели
|
|||
11
Georgeous
06.11.15
✎
10:01
|
Не совсем понял:
И в параметре таблицы оборотов подшаманить. По аналогии. ??? |
|||
12
Asmody
06.11.15
✎
10:01
|
А потом пенсионеры смотрят на платёжки и в обмороки валятся!
|
|||
13
Asmody
06.11.15
✎
10:03
|
(11) Ну ты видишь, какое у тебя в там условие? А должно быть другое. Сейчас у тебя отбор всегда по одному жильцу.
|
|||
14
Georgeous
06.11.15
✎
10:06
|
Так я ведь хочу если выбран один , то по одному , если без выбора то всех сразу выводить. Может скажите что именно?
|
|||
15
Georgeous
06.11.15
✎
10:09
|
Вы про это: Жильцы = &Ссылка
|
|||
16
Горогуля
06.11.15
✎
10:09
|
(15) про это. оно должно быть или не должно
|
|||
17
Горогуля
06.11.15
✎
10:10
|
+(16) или быть другим и давать истину при пустом жильце
|
|||
18
Georgeous
06.11.15
✎
10:11
|
Все верно давать истину при пустом жильце и что вписать туда?
|
|||
19
Asmody
06.11.15
✎
10:12
|
(14) Переделать на построитель (это быстро), и использовать {} и отбор вместо параметров. И пусть одинесовский датаенджин за тебя этой ерундой занимается.
|
|||
20
Горогуля
06.11.15
✎
10:12
|
(18) &Жилец=Пуст ИЛИ Жилец=&Жилец
|
|||
21
Georgeous
06.11.15
✎
10:18
|
Когда вписал {&Жилец=Пуст ИЛИ Жилец=&Жилец}так ?
|
|||
22
Georgeous
06.11.15
✎
10:24
|
Построитель->Условие-> что то совсем ничего непонял
|
|||
23
Горогуля
06.11.15
✎
10:24
|
предлагаю сходить изучить матчасть
|
|||
24
Georgeous
06.11.15
✎
10:28
|
Ходил уже только вот про это ничего не было сказано(
|
|||
25
hhhh
06.11.15
✎
10:38
|
ну, в (4) ведь написали
|
|||
26
Georgeous
06.11.15
✎
10:42
|
Форумы помогли, а вот сейчас уперся в стенку(
|
|||
27
Fish
06.11.15
✎
10:47
|
(12) +100 Мда. А всё чиновников ругают за ЖКХ.
|
|||
28
Georgeous
06.11.15
✎
10:52
|
Так что по шагово никто не скажет как постоителем воспользоваться?
|
|||
29
Nuobu
06.11.15
✎
10:53
|
||||
30
hhhh
06.11.15
✎
11:20
|
(28) скопировать уже существующий там у вас отчет и его творчески подработать.
|
|||
31
Georgeous
06.11.15
✎
11:25
|
Знать бы еще что редактировать и куда вставлять
|
|||
32
Georgeous
06.11.15
✎
11:26
|
У меня ПолеТабличногоДокумента, а у них ТабличноеПоле( Все не так
|
|||
33
Nuobu
06.11.15
✎
11:30
|
(32) Это пятница? Или Вы и правда думаете, что это разные поля?
|
|||
34
Georgeous
06.11.15
✎
11:32
|
Процедура КнопкаСформироватьНажатие(Кнопка)
// ЭлементыФормы.ТабличноеПолеДокумента.Очистить(); ТабличныйДокумент = Новый ТабличныйДокумент; Макет = ПолучитьМакет("Квитанции"); ОбластьШапка = Макет.ПолучитьОбласть("Шапка"); ОбластьСтрока = Макет.ПолучитьОбласть("Строка"); ОбластьПодвал = Макет.ПолучитьОбласть("Подвал"); ОбластьШапка.Параметры.Проживающий = Жильцы.Проживающий; ОбластьШапка.Параметры.Дата = Формат(Дата, "ДФ='dd MMMM yyyy'"); ТабличныйДокумент.Вывести(ОбластьШапка); Построитель.Текст = "ВЫБРАТЬ | РасчеПоказанийОстаткиИОбороты.Жильцы.Ссылка |ИЗ | РегистрНакопления.РасчеПоказаний.ОстаткиИОбороты КАК РасчеПоказанийОстаткиИОбороты |ГДЕ | (РасчеПоказанийОстаткиИОбороты.Жильцы = &Пуст | ИЛИ РасчеПоказанийОстаткиИОбороты.Жильцы = &Жильцы)"; ТабличныйДокумент.Вывести(ОбластьСтрока); ТабличныйДокумент.Вывести(ОбластьПодвал); ЭлементыФормы.ТабличноеПолеДокумента.Вывести(ТабличныйДокумент); ТабличныйДокумент.ВывестиГоризонтальныйРазделительСтраниц(); КонецПроцедуры |
|||
35
Nuobu
06.11.15
✎
11:33
|
// ЭлементыФормы.ТабличноеПолеДокумента.Очистить();
ТабличныйДокумент = Новый ТабличныйДокумент; ТабличныйДокумент = ЭлементыФормы.ТабличноеПолеДокумента; |
|||
36
Georgeous
06.11.15
✎
11:36
|
{Отчет.Квитанция.Форма.ФормаОтчета1.Форма(18)}: Метод объекта не обнаружен (Вывести)
ТабличныйДокумент.Вывести(ОбластьШапка); |
|||
37
MUXACb
06.11.15
✎
11:38
|
(0) Судя по (5) хоть что-то про СКД вы знаете. Значит должны знать что в СКД тоже есть макеты
|
|||
38
Georgeous
06.11.15
✎
11:40
|
Это да, только вот как добавить в СКД уже существующих ручным способом макет
|
|||
39
hhhh
06.11.15
✎
11:45
|
(36) вот это
ТабличныйДокумент = ЭлементыФормы.ТабличноеПолеДокумента; выкиньте пока |
|||
40
Georgeous
06.11.15
✎
11:52
|
Это нормально что теперь ТабличноеПолеДокумента на форме имеет:Поле , Тип Сравнения и Значение?
|
|||
41
Georgeous
09.11.15
✎
13:13
|
Так поможет кто , что дальше делать?
|
|||
42
runoff_runoff
09.11.15
✎
13:35
|
(3) +1
|
|||
43
Georgeous
09.11.15
✎
14:24
|
Выше код и вот вопрос как отбор сделать правильно?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |