Имя: Пароль:
1C
1С v8
Необязательное использование параметра СКД типа СписокЗначений.
0 tor07
 
18.03.14
10:38
Параметр имеет доступные значения, которые программно заполняются. Если пользователь не выбрал ни одно из них выдает ошибку "Не задано значение параметра..." Использование - авто.  Добавлен в пользовательские настройки. Галочка снята. Сразу скажу - использовать отбор не могу.
1 vicof
 
18.03.14
10:39
Заполняй по умолчанию, делов-то
2 tor07
 
18.03.14
10:41
Это список населенных пунктов, их можно не выбирать, так как можно вывести данные, например за весь район.
3 Necessitudo
 
18.03.14
10:41
А ты условие точно сделал необязательным? Покажи текст запроса.
4 tor07
 
18.03.14
10:43
Условие в фигурные скобки? Не прокатывает.
5 Necessitudo
 
18.03.14
10:44
Условие в фигурные скобки. Только как и можно сделать необязательное условие.
6 Defender aka LINN
 
18.03.14
10:57
/me разрыдался и ушел.
Этих людей бесполезно чему-нибудь учить...
7 tor07
 
18.03.14
11:06
Нашел некрасивый выход. Использую еще один параметр "ИспользоватьСписокЗначений" (булево).

И ВЫБОР
   КОГДА &ИспользоватьСписокЗначений
    ТОГДА КонтактнаяИнформация.Поле5 В (&НаселенныйПункт)
   ИНАЧЕ ИСТИНА
КОНЕЦ

Проверяю программно значение параметра "НаселенныйПункт", и если не заполнен, то параметр "ИспользоватьСписокЗначений" = ЛОЖЬ. А фигурные скобки далеко не всегда спасают, это реальный факт. Толковое что-нибудь есть, кроме них? В этом был весь вопрос.
8 Defender aka LINN
 
18.03.14
11:08
(7) "А фигурные скобки далеко не всегда спасают, это реальный факт" - реальный факт - это то, что ты тут просто сморозил чушь.
9 Necessitudo
 
18.03.14
11:13
Вот так и рождается гамнокод, который потом приходится разгребать. Вместо того чтобы использовать штатный функционал пишут костыли.
10 vicof
 
18.03.14
11:13
(6) Поржал)
11 tor07
 
18.03.14
11:14
ВЫБРАТЬ РАЗРЕШЕННЫЕ
    СобственныйПолезныйОтпуск.ТочкаУчета КАК ТочкаУчета,
    СобственныйПолезныйОтпуск.ДоговорЭнергоснабжения КАК ДоговорЭнергоснабжения,
    СобственныйПолезныйОтпуск.ТарифноеНапряжение,
    СобственныйПолезныйОтпуск.НоминальноеНапряжение,
    КонтрагентыДоговораСрезПоследних.Контрагент,
    Контакты.Адрес,
    СобственныйПолезныйОтпуск.ТочкаУчета.СтруктураСети КАК ЦентрПитания,
    СобственныйПолезныйОтпуск.ТочкаУчета.СетеваяКомпания КАК СетеваяКомпания,
    СобственныйПолезныйОтпуск.ДоговорЭнергоснабжения.СбытоваяКомпания КАК СбытоваяКомпания,
    СобственныйПолезныйОтпуск.СПО КАК СПО,
    СобственныйПолезныйОтпуск.ПредыдущиеПоказания,
    СобственныйПолезныйОтпуск.ТекущиеПоказания,
    СобственныйПолезныйОтпуск.РасчетныйКоэффициент,
    СобственныйПолезныйОтпуск.Счетчик,
    СведенияОПСрезПоследних.ЗначениеХарактеристики КАК ТипСчетчика,
    СобственныйПолезныйОтпуск.Счетчик.ЗаводскойНомер,
    СобственныйПолезныйОтпуск.НаправлениеТочкиУчета,
    СобственныйПолезныйОтпуск.ВидЭлектроэнергии,
    НАЧАЛОПЕРИОДА(СобственныйПолезныйОтпуск.Период, МЕСЯЦ) КАК Период,
    КонтактнаяИнформация.Поле5
ИЗ
    РегистрНакопления.урскСобственныйПолезныйОтпуск КАК СобственныйПолезныйОтпуск
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.урскКонтрагентыДоговора.СрезПоследних КАК КонтрагентыДоговораСрезПоследних
        ПО СобственныйПолезныйОтпуск.ДоговорЭнергоснабжения = КонтрагентыДоговораСрезПоследних.ДоговорЭнергоснабжения
        ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
            КонтактнаяИнформация.Объект КАК Объект,
            МАКСИМУМ(ПОДСТРОКА(КонтактнаяИнформация.Представление, 1, 250)) КАК Адрес
        ИЗ
            РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация
        ГДЕ
            КонтактнаяИнформация.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Адрес)
            И КонтактнаяИнформация.Объект ССЫЛКА Справочник.урскТочкиУчета
        
        СГРУППИРОВАТЬ ПО
            КонтактнаяИнформация.Объект) КАК Контакты
        ПО СобственныйПолезныйОтпуск.ТочкаУчета = Контакты.Объект
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.урскСведенияОП.СрезПоследних(&Конец, ВидХарактеристики = ЗНАЧЕНИЕ(ПланВидовХарактеристик.урскХарактеристикиОбъектовПаспортизации.ТипСчетчика)) КАК СведенияОПСрезПоследних
        ПО СобственныйПолезныйОтпуск.Счетчик = СведенияОПСрезПоследних.ОбъектПаспортизации
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация
        ПО СобственныйПолезныйОтпуск.ТочкаУчета = КонтактнаяИнформация.Объект
ГДЕ
    СобственныйПолезныйОтпуск.Период МЕЖДУ &Начало И &Конец
    И СобственныйПолезныйОтпуск.ВходитВСПО
    И ВЫБОР
            КОГДА &Классификация = ЗНАЧЕНИЕ(Перечисление.урскКлассификацияТочекУчета.ПустаяСсылка)
                ТОГДА ИСТИНА
            ИНАЧЕ &Классификация В
                    (ВЫБРАТЬ
                        урскТочкиУчетаКлассификацияТ.Классификация
                    ИЗ
                        Справочник.урскТочкиУчета.КлассификацияТ КАК урскТочкиУчетаКлассификацияТ
                    ГДЕ
                        урскТочкиУчетаКлассификацияТ.Ссылка = СобственныйПолезныйОтпуск.ТочкаУчета)
        КОНЕЦ
    И КонтактнаяИнформация.Поле5 В (&НаселенныйПункт)


СГРУППИРОВАТЬ ПО
    СобственныйПолезныйОтпуск.ТочкаУчета,
    СобственныйПолезныйОтпуск.ДоговорЭнергоснабжения,
    СобственныйПолезныйОтпуск.ТарифноеНапряжение,
    СобственныйПолезныйОтпуск.НоминальноеНапряжение,
    КонтрагентыДоговораСрезПоследних.Контрагент,
    Контакты.Адрес,
    СобственныйПолезныйОтпуск.ТочкаУчета.СтруктураСети,
    СобственныйПолезныйОтпуск.ТочкаУчета.СетеваяКомпания,
    СобственныйПолезныйОтпуск.ДоговорЭнергоснабжения.СбытоваяКомпания,
    СобственныйПолезныйОтпуск.СПО,
    СобственныйПолезныйОтпуск.ПредыдущиеПоказания,
    СобственныйПолезныйОтпуск.ТекущиеПоказания,
    СобственныйПолезныйОтпуск.РасчетныйКоэффициент,
    СобственныйПолезныйОтпуск.Счетчик,
    СведенияОПСрезПоследних.ЗначениеХарактеристики,
    СобственныйПолезныйОтпуск.Счетчик.ЗаводскойНомер,
    СобственныйПолезныйОтпуск.НаправлениеТочкиУчета,
    СобственныйПолезныйОтпуск.ВидЭлектроэнергии,
    НАЧАЛОПЕРИОДА(СобственныйПолезныйОтпуск.Период, МЕСЯЦ),
    КонтактнаяИнформация.Поле5




Покажи, раз я ошибаюсь, куда воткнуть фигурные скобки, чтоб все заработало, необязательное условие -     "И КонтактнаяИнформация.Поле5 В (&НаселенныйПункт)"?
12 Necessitudo
 
18.03.14
11:16
в самом конце вместо

И КонтактнаяИнформация.Поле5 В (&НаселенныйПункт)


вот это -

{ГДЕ КонтактнаяИнформация.Поле5 В (&НаселенныйПункт)}
13 Defender aka LINN
 
18.03.14
11:17

{ГДЕ
    КонтактнаяИнформация.Поле5 КАК НаселенныйПункт}

И забудь, ять, про параметры.
14 Necessitudo
 
18.03.14
11:18
(13) Не, у него список
15 Defender aka LINN
 
18.03.14
11:19
(14) Абсолютно понопенисуально
16 Defender aka LINN
 
18.03.14
11:19
*монопенисуально
17 Necessitudo
 
18.03.14
11:21
(15) Не - в списке параметров тогда никакого параметра ж и не появится.
18 Defender aka LINN
 
18.03.14
11:25
(17) И ты. Лично ты. ЗАБУДЬ, ЯТЬ, про параметры. У всех приличных людей это называется, ять, ОТБОР.
19 Necessitudo
 
18.03.14
11:28
(17) Ахаха)) Ну не, про отбор-то я знаю. Но ему наверняка хочется именно ПАРАМЕТР!
20 Defender aka LINN
 
18.03.14
11:46
(19) Та пофиг, что ему хочется :)
Людям часто хочется странного - параметр вместо отбора, Крым в составе Украины...
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn