Имя: Пароль:
1C
1С v8
СКД возможна ли необязательность параметров
,
0 Cоляпсус
 
04.05.18
14:54
Добрый день. Вопрос такой. Есть созданные параметры. При формировании отчёта они требуют чтобы галка обязательно была. Но пустое значение возможно. Если галки нет, то и формироваться отказывается. Возможно ли формирование при отсутствии галки?
1 Cоляпсус
 
04.05.18
14:54
2 Fragster
 
гуру
04.05.18
14:57
да
3 Cоляпсус
 
04.05.18
14:59
(2) Спасибо. Принял к сведению. А тогда не отходя от темы, можно подсказать, что или как это сделать)
4 Fragster
 
гуру
04.05.18
15:02
{Где Таблица.Поле = &НеобязательныйПараметр}
5 Cоляпсус
 
04.05.18
15:05
(4) Ссори, а где это написать я должен, в параметрах в выражении?
6 Fragster
 
гуру
04.05.18
15:07
в тексте запроса
7 Cоляпсус
 
04.05.18
15:11
наверное я не верно выражался. не донёс полную информацию.  
Созданные параметры были созданы уже в настройках СКД, на вкладке параметры. И соответственно появились в доступных полях для выбора. И когда формируешь отчет, они требуют наличие галки, а хотелось бы чтобы формировалось при неактивном состоянии.
8 Cоляпсус
 
04.05.18
15:11
(4) Про это я да понимаю, что можно так
9 Boleev
 
04.05.18
15:12
условия по параметрам задавать только на закладке "Компоновка данных"
10 Fragster
 
гуру
04.05.18
15:14
(7) вот я про это и говорю - если указать отдельную секцию {ГДЕ}, то параметры могут быть необязательными. можно попробовать в конструкторе, см (9), но если хочется именно параметр, а не отбор, то надо кроме мышки еще по кнопкам клавиатуры немного постучать, чтобы получилось как в (4)
11 Cоляпсус
 
04.05.18
15:25
Да всё же моя вина в  неправильном плохом объяснении. Извиняюсь. Попробую ещё раз правильно. Запрос в данном случае не при чём, он не участвует в формировании подписей. Параметры создавались, на вкладке параметры с типами справочник ссылка ,чтобы при формировании отчета можно было выбрать определённого человека и он отразился в подвале подписи. И теперь можно человека не указывать, но значение параметра как активное надо обязательно установить. Не хотелось бы коверкать сам запрос, при том что он не участвует.
http://prntscr.com/jdnhgh и вот получилось
http://prntscr.com/jdmvr9
12 Fragster
 
гуру
04.05.18
15:30
Если параметр выводится в макет, то он всегда должен быть установлен. Для такого они не предназначены :)
13 Cоляпсус
 
04.05.18
15:32
Зараза, это для пользователя не удобно. А может есть какие другие способы?
14 Cоляпсус
 
04.05.18
15:33
Для тех пользователей которые этим пользуются, скажем так))
15 Cоляпсус
 
04.05.18
15:37
Ладно ещё вопросик, как можно ли сделать чтобы если поле параметр не заполнено оно и не выводилось в подпись. Проблема в том, что подпись это поле шаблон, где часть надпись, а часть параметр. Хотелось бы чтобы и надпись и параметр не выводились если поле не заполнено. Понятно что если нет значения параметра, то оно и не отразиться.
16 _Дайвер_
 
04.05.18
15:39
(15) ПриКомпоновкеРезультата() кури параметры
17 Cоляпсус
 
04.05.18
15:40
18 Cоляпсус
 
04.05.18
15:41
(16) Процедуру в модуле объекта написать? Или можно в самой компоновке манипуляции проделать?
19 Вафель
 
04.05.18
15:49
если тебе нужна просто галка всегда, то есть у параметра свойство: Использовать - всегда
20 Cоляпсус
 
04.05.18
15:56
(19) Да это я понимаю, мне нужно что если галка , не стоит, то отчёт всёравно формировался с пустым значением, а если стоит то формировался конечно с выбранным значением
21 Вафель
 
04.05.18
15:56
(20) ну так и будет
22 Вафель
 
04.05.18
15:57
ааа, ты хочешь галку как признак вывода в отчет? так наверно не выйдет
23 Вафель
 
04.05.18
15:59
можно сделать дубли параметров недоступные, и их устанавливать  в зависимости от видимых.
в макетах юзать недоступные.
Примерно как с периодом делают
24 Cоляпсус
 
04.05.18
16:06
(22) Ладно сделал пока так (19), думаю что нормально. Спасибо кстати, что-то про это я не подумал.
Вот ещё что уже писал, эти параметры попадают в подпись. Типа: Фрамацевт___Иванов.Иванов понятно параметр, есть значит отобразился нет, и его нет. А вот фармацевт это надпись, и выводится всегда независимо от Иванова. Можно как-то изобразить, нет Иванова, ну и нет Фармацевта?)
25 Cоляпсус
 
04.05.18
16:28
Не успел спросить(
26 Cоляпсус
 
04.05.18
16:32
параметры попадают в подпись. Типа: Фрамацевт___Иванов.Иванов понятно параметр, есть значит отобразился нет, и его нет. А вот фармацевт это надпись, и выводится всегда независимо от Иванова. Можно как-то изобразить, нет Иванова, ну и нет Фармацевта?)
27 Fragster
 
гуру
04.05.18
16:38
можно извратиться, использовав отдельный набор данных и вывод его в подписях, но объяснить словами это сложно, а делать за просто так - лень
28 Вафель
 
04.05.18
16:43
может проще кодом потом вывести секции нужные?
29 Fragster
 
гуру
04.05.18
16:46
(28) может быть ;)
30 Fragster
 
гуру
04.05.18
16:46
но, например, в консоли компоновок ИР нету кода, чтобы им что-то выводить
31 romix
 
04.05.18
16:49
https://wiki.mista.ru/doku.php?id=1c:v8:howto:neobjazatelnye_parametry_s_ispolzovaniem_postroitelzaprosa

(там образец запроса с фигурными скобками).
32 Fragster
 
гуру
04.05.18
16:59
(31) чукча не читатель?
33 Cоляпсус
 
04.05.18
17:14
(28) Вот как раз вывел часть кода ,но никак не найду где блин эти секции
34 Cоляпсус
 
04.05.18
17:25
(28) Наглеть не буду поищу конечно сам никуда не денусь, но может знаешь как достать эту секцию. я её сделал Группировкой без имени и задал ей имя подвал. Вот хотелось бы чтобы когда параметр заполнен, то и подвал выводился, если пусто и подвала нет?
35 Cоляпсус
 
04.05.18
17:26
Написал кусок кода и пытаюсь здесь найти эти данные, но пока не очень
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)

    СхемаКомпоновкиДанных = ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных");
  Параметры = КомпоновщикНастроек.Настройки.ПараметрыДанных;    
    КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
Настройки = КомпоновщикНастроек.Настройки;
    //Передаем в макет компоновки схему, настройки и данные расшифровки
    МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки, ДанныеРасшифровки);

    //Выполним компоновку с помощью процессора компоновки
    ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
    ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки, , ДанныеРасшифровки);
КонецПроцедуры
36 Cоляпсус
 
04.05.18
17:26
Необязательно, что за меня делать, просто может уже с закрытыми глазами знают куда копать