for flooders
:: Главная :: Решения :: Статьи :: Сайт М. Дроздова :: Файловый архив :: Книга по VFP 9 :: Русский Help Online :: OFF-LINE Форум
   Лисоводы   всех   стран,  объединяйтесь !!!  

Список Форумов  :: Вопросы по 1С
  

Условие в управляемой форме
Зингер

Сообщений: 520
Откуда: Белгород
Дата: 29.09.16 14:25:37
Привет всем. Продолжаю грызть 1С.
При создании формы списка подчиненного справочника, создаю условие видимости колонки
  
  &НаСервере  
  Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)  
  	если параметры.Отбор.Свойство("Владелец") тогда  
  		элементы.код.Видимость=Ложь;  
  	конецесли;  
  КонецПроцедуры

Не пойму, как создать подобное при создании элемента, т.е. чтобы поле "Владелец" не показывалось, если есть владелец.
  
  &НаСервере  
  Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)  
  //Здесь не знаю какое условие вставить  
  	элементы.Владелец.Видимость=Ложь;  
  КонецПроцедуры
Ratings: 0 negative/0 positive

Re: Условие в управляемой форме
pasha_usue
Автор

Сообщений: 3108
Откуда: Е-бург
Дата: 29.09.16 15:08:50
Если это форма элемента, тогда "ЗначениеЗаполнено(Объект.Владелец)"
Ratings: 0 negative/0 positive

Re: Условие в управляемой форме
Зингер

Сообщений: 520
Откуда: Белгород
Дата: 30.09.16 20:03:12
pasha_usue
Если это форма элемента, тогда "ЗначениеЗаполнено(Объект.Владелец)"

Такого свойства/функции нет.
Если Вы имели ввиду
параметры.ЗначенияЗаполнения(Объект.Владелец)

то при открытии формы, возникает ошибка (подробно)
Цитата:
{Справочник.ВариантыНоменклатуры.Форма.ФормаЭлемента.Форма(4)}: Метод объекта не обнаружен (ЗначенияЗаполнения)
Если параметры.ЗначенияЗаполнения(Объект.Владелец) тогда
Ratings: 0 negative/0 positive

Re: Условие в управляемой форме
ssa

Сообщений: 12248
Откуда: Москва
Дата: 30.09.16 20:22:25
Вам не кажется, что
pasha_usue
ЗначениеЗаполнено(Объект.Владелец)
и
Зингер
параметры.ЗначенияЗаполнения(Объект.Владелец)
- несколько разные вещи.
Зингер
Такого свойства/функции нет.
ГДЕ нет? Какого свойства? Где само сообщение, а не его интерпретация?

------------------
Лень - это неосознанная мудрость.
Ratings: 0 negative/0 positive

Re: Условие в управляемой форме
Зингер

Сообщений: 520
Откуда: Белгород
Дата: 30.09.16 20:35:59
ssa
несколько разные вещи
1) Несомненно!
Просто в помощи я не смог найти "ЗначениеЗаполнено".

2)
ssa
Где само сообщение, а не его интерпретация?
[attachment 25962 ]
Ratings: 0 negative/0 positive

Re: Условие в управляемой форме
ssa

Сообщений: 12248
Откуда: Москва
Дата: 30.09.16 20:38:05
Зингер
2)
ssa
Где само сообщение, а не его интерпретация?
[attachment 25962 ]
Не это, а на ЗначениеЗаполнено.

------------------
Лень - это неосознанная мудрость.
Ratings: 0 negative/0 positive

Re: Условие в управляемой форме
ssa

Сообщений: 12248
Откуда: Москва
Дата: 30.09.16 20:40:04
Зингер
ssa
несколько разные вещи
1) Несомненно!
Просто в помощи я не смог найти "ЗначениеЗаполнено".
И как ты это умудрился сделать?
Цитата:
Глобальный контекст (Global context)
ЗначениеЗаполнено (ValueIsFilled)
Синтаксис:

ЗначениеЗаполнено(<Значение>
Параметры:

<Значение> (обязательный)

Тип: Произвольный.
Значение для проверки.
Возвращаемое значение:

Тип: Булево.
Для значений типа Булево всегда возвращается Истина.
Для значений типа Строка возвращается Истина, если в строке есть непробельные символы.
Для массивов и коллекций возвращается Истина, если в них есть хотя бы 1 элемент.
Для Неопределено и Null всегда возвращается Ложь.
Описание:

Функция проверяет, отличается ли переданное значение от значения по умолчанию того же типа.
Не работает с мутабельными значениями. При передаче мутабельного значения функция вызывает исключение.

Доступность:

Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение, мобильное приложение(клиент), мобильное приложение(сервер).
Примечание:

Источники данных не проверяются, значение считается заполненным всегда.
--------------------------------------------------------------------------------

Методическая информация


------------------
Лень - это неосознанная мудрость.
Ratings: 0 negative/0 positive

Re: Условие в управляемой форме
Зингер

Сообщений: 520
Откуда: Белгород
Дата: 30.09.16 21:05:42
Обалдеть! Работает!

Не, конечно, это не "ах как нужно". Просто из спортивного интереса.

Это что же получается, проверка на владельца в форме списка и элемента отличается?
В форме списка, с помощью параметров формы (параметры.Отбор.Свойство("Владелец")), а форме элемента с помощью функции глобального контекста (ЗначениеЗаполнено(Объект.Владелец))?

P.S. Не-не, сильно не ругайтесь функцию нашел.



Исправлено: Зингер, 30.09.16 21:07
Ratings: 0 negative/0 positive

Re: Условие в управляемой форме
ssa

Сообщений: 12248
Откуда: Москва
Дата: 30.09.16 21:15:47
Зингер
Это что же получается, проверка на владельца в форме списка и элемента отличается?
В форме списка, с помощью параметров формы (параметры.Отбор.Свойство("Владелец")), а форме элемента с помощью функции глобального контекста (ЗначениеЗаполнено(Объект.Владелец))?
О, боже...
Зингер
если параметры.Отбор.Свойство("Владелец")
Ничего, что тут идет проверка НАЛИЧИЯ свойства (наличия свойства, Карл) в ПАРАМЕТРАХ ФОРМЫ, а отнюдь не ЗАПОЛНЕННОСТЬ свойства у элемента справочника.

------------------
Лень - это неосознанная мудрость.
Ratings: 0 negative/0 positive

Re: Условие в управляемой форме
Зингер

Сообщений: 520
Откуда: Белгород
Дата: 30.09.16 21:47:37
ssa
проверка НАЛИЧИЯ свойства (наличия свойства, Карл) в ПАРАМЕТРАХ ФОРМЫ, а отнюдь не ЗАПОЛНЕННОСТЬ свойства у элемента справочника
Спасибо, за это пояснение. Много расставило у меня в голове.

Тогда поясните еще 2 момента:

1) Почему также нельзя сделать в форме элемента? Или здесь как раз проверяем заполненность?
2) Поясните пож-та фразу из справки
Цитата:
Функция проверяет, отличается ли переданное значение от значения по умолчанию того же типа.
Что то эта фраза мне вообще мозг разрывает.
Ratings: 0 negative/0 positive

Re: Условие в управляемой форме
ssa

Сообщений: 12248
Откуда: Москва
Дата: 01.10.16 11:25:12
Зингер
ssa
проверка НАЛИЧИЯ свойства (наличия свойства, Карл) в ПАРАМЕТРАХ ФОРМЫ, а отнюдь не ЗАПОЛНЕННОСТЬ свойства у элемента справочника
Спасибо, за это пояснение. Много расставило у меня в голове.

Тогда поясните еще 2 момента:

1) Почему также нельзя сделать в форме элемента?
Так же - это как же?
Цитата:
Или здесь как раз проверяем заполненность?
Ну уж куда однозначчнее то?
Цитата:
Цитата:
ЗАПОЛНЕННОСТЬ свойства у элемента справочника
2) Поясните пож-та фразу из справки
Цитата:
Функция проверяет, отличается ли переданное значение от значения по умолчанию того же типа.
Что то эта фраза мне вообще мозг разрывает.
Функцию Empty() в фоксе знаешь?

------------------
Лень - это неосознанная мудрость.
Ratings: 0 negative/0 positive

Re: Условие в управляемой форме
Зингер

Сообщений: 520
Откуда: Белгород
Дата: 01.10.16 17:14:03
Спасибо.
Ratings: 0 negative/0 positive

Re: Условие в управляемой форме
pasha_usue
Автор

Сообщений: 3108
Откуда: Е-бург
Дата: 03.10.16 07:58:17
У вас есть две формы. Каждая форма содержит основной реквизит (выделен жирным в списке реквизитов формы). В первом случае реквизит имеет тип "ДинамическийСписок", во втором случае - "СправочникОбъект.НекийСправочник".

Соответственно, эти объекты имеют разные свойства, методы и события. Тупо потому, что они выполняют разные функции.

Обращение к подчиненному реквизиту динамического списка, это по-сути, обращение к колонке. И в общем виде оно бессмысленно. Самый подходящий аналог для динамического списка это RemoteView. Только курсор при этом не создается, создается "окно видимости". То-есть, то, что на данный момент показывается пользователю. Максимум можно достучаться до Элементы.Список.ТекущиеДанные.
А этот RemoteView имеет соответствующие свойства для выдёргивания представления из базы: Отбор, Параметры, Порядок, ОсновнаяТаблица. Или вообще может быть сформирован свойствами: ПроизвольныйЗапрос, ТекстЗапроса.

А вот объект элемента справочника, это уже совсем другой объект. Он полностью предоставляет все возможности обращения к свойствам и методам редактируемого элемента. Естественно, никакой отбор тут не применим, и не нужен, так как элемент получен по ключу (по ссылке). Зато у этого объекта есть стандартное свойство "владелец", которое можно не только читать, но и писать - менять.
Ratings: 0 negative/1 positive

Re: Условие в управляемой форме
pasha_usue
Автор

Сообщений: 3108
Откуда: Е-бург
Дата: 03.10.16 09:59:55
Зингер
Цитата:
Функция проверяет, отличается ли переданное значение от значения по умолчанию того же типа.
Что то эта фраза мне вообще мозг разрывает.
ЗначениеЗаполнено(Объект.Владелец)
можно заменить на
Объект.Владелец = Справочники.НекийСправочник.ПустаяСсылка()
. Но в этом случае надо задумываться, а какой тип значения в левом аргументе, и что нужно подставить в правом аргументе.
Функция ЗначениеЗаполнено, по сути, определяет тип значения своего аргумента и сравнивает с пустым значением такого же типа.
Ratings: 0 negative/1 positive



Извините, только зарегистрированные пользователи могут оставлять сообщения в этом форуме.

On-line: 16 ВладимирС Penner AndyNigmatec  (Гостей: 13)

17.06.2019 10:17:00 exec: 0.06
Mem: 1.316 Mb

© 2000-2019 Fox Club 
Яндекс.Метрика