- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
Процедура СправочникСписокПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки)
ТекКвота = ДанныеСтроки.Ссылка;
мЗапросДок = Новый Запрос;
мЗапросДок.Текст =
"ВЫБРАТЬ
| ЕСТЬNULL(СУММА(СДотчетТовары.Количество), 0) КАК Количество
|ИЗ
| Документ.СДотчет.Товары КАК СДотчетТовары
|ГДЕ
| СДотчетТовары.Ссылка.Проведен = ИСТИНА
| И СДотчетТовары.КвотаОтчета = &Квота";
мЗапросДок.УстановитьПараметр("Квота",ТекКвота);
Выборка = мЗапросДок.Выполнить().Выбрать();
Выборка.Следующий();
ВДоке = Выборка.Количество;
ОформлениеСтроки.Ячейки.СогласноСД.Значение = ?(ВДоке=0,"",ВДоке);
мЗапросПОС = Новый Запрос;
мЗапросПОС.Текст =
"ВЫБРАТЬ
| ЕСТЬNULL(СписаноПоПОСОбороты.КоличествоОборот, 0) КАК Количество
|ИЗ
| РегистрНакопления.СписаноПоПОС.Обороты(, , , Квота = &Квота) КАК СписаноПоПОСОбороты";
мЗапросПОС.УстановитьПараметр("Квота",ТекКвота);
Выборка = мЗапросПОС.Выполнить().Выбрать();
Выборка.Следующий();
ВПОС = Выборка.Количество;
ОформлениеСтроки.Ячейки.СогласноПОС.Значение = ?(ВПОС=0,"",ВПОС);
мЗапросРег = Новый Запрос;
мЗапросРег.Текст =
"ВЫБРАТЬ
| ЕСТЬNULL(Квоты.КолВЗаказахПокупателя, 0) КАК КолВЗаказахПокупателя,
| ЕСТЬNULL(ЗаказПоставщику.КолВЗаказахПоставщику, 0) КАК КолВЗаказахПоставщику
|ИЗ
| (ВЫБРАТЬ
| СУММА(ЕСТЬNULL(ЗаказПоставщикуТовары.Количество, 0)) КАК КолВЗаказахПоставщику
| ИЗ
| Документ.ЗаказПоставщику.Товары КАК ЗаказПоставщикуТовары
| ГДЕ
| ЗаказПоставщикуТовары.КвотаЗаказа = &Квота) КАК ЗаказПоставщику,
| (ВЫБРАТЬ
| СУММА(ЕСТЬNULL(КвотыЗаказовПокупателейОстаткиИОбороты.КоличествоПриход, 0)) КАК КолВЗаказахПокупателя
| ИЗ
| РегистрНакопления.КвотыЗаказовПокупателей.ОстаткиИОбороты(
| ,
| ,
| ,
| ,
| Квота = &Квота
| И ВидКвоты = ЗНАЧЕНИЕ(Перечисление.ВидыКвот.ОтчетнаяКвота)) КАК КвотыЗаказовПокупателейОстаткиИОбороты) КАК Квоты";
мЗапросРег.УстановитьПараметр("Квота",ТекКвота);
Выборка = мЗапросРег.Выполнить().Выбрать();
ЕстьВыборка = Выборка.Следующий();
КолВЗаказахПокупателя = ?(не ЕстьВыборка,0,Выборка.КолВЗаказахПокупателя);
КолВЗаказахПоставщику = ?(не ЕстьВыборка,0,Выборка.КолВЗаказахПоставщику);
ОформлениеСтроки.Ячейки.ВЗаказахПокупателя.Значение = КолВЗаказахПокупателя;
ОформлениеСтроки.Ячейки.ВЗаказахПоставщику.Значение = КолВЗаказахПоставщику;
КонецПроцедуры
Чудный справочник, очень быстро открывается и прокручивается. Приходится ждать по 20 секунд)))
Интересно, программерам на 1С удобно переключать язык для набора NULL и &?
Помимо этого неудобство доставляет набор символа | при печати многострочных запросов.
Апостроф - альт 3 9
А вот налл вводить - реально харит
Кстати, можно-то ведь и на рассово-верном английском писать.
Да, многие вещи в языке неудобны, но это не делает его идиотским. Свое предназначение он исполняет. Говнокод создают люди, а не язык. Если 95% программистов 1С пишут крайне плохой код, это значит что плох программист, а не язык. Мне приходилось встречать весьма хорошо спроектированный код на языке 1С.
А то что вы из-за не можете разобраться в коде - очень жаль, что ваши эмоции перечеркивают ваши профессиональные навыки.
Может, поэтому?
Еще блять кто нить выложит такую хуйню отпишусь от гк нахуй
синтаксисаёб.
За такое надо на доску позора вешать.