Получение тип реквизита из составного типа

1. user1256662 18.05.22 15:11 Сейчас в теме
Как получить выбранный тип реквизита? По отладчику ничего не могу найти

&НаКлиенте
Процедура РазмещениеДенежныхСредствБанковскийСчетПриИзменении(Элемент)
	ВладелецСчета = Объект.Организация;
	
	НовыйМассивПараметров = Новый Массив();
	//Если Элементы.РазмещениеДенежныхСредствБанковскийСчет = Тип("СправочникСсылка.Организации") Тогда	
		НовыйМассивПараметров.Добавить(Новый ПараметрВыбора("Отбор.Владелец", ВладелецСчета));
	//ИначеЕсли Элементы.РазмещениеДенежныхСредствБанковскийСчет = Тип("СправочникСсылка.ДоговорыКонтрагентов") Тогда
		НовыйМассивПараметров.Добавить(Новый ПараметрВыбора("Отбор.Организация", ВладелецСчета));
	//КонецЕсли;
	
	Элементы.РазмещениеДенежныхСредствБанковскийСчет.ПараметрыВыбора = Новый ФиксированныйМассив(НовыйМассивПараметров); 
КонецПроцедуры
Показать
По теме из базы знаний
Найденные решения
13. petleon 7 18.05.22 15:58 Сейчас в теме
(1) Попробуйте так:
Если ТипЗнч(Элемент.Родитель.ТекущиеДанные.БанковскийСчет) = Тип("СправочникСсылка.Организации") Тогда
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. lmnlmn 69 18.05.22 15:14 Сейчас в теме
3. user1256662 18.05.22 15:21 Сейчас в теме
(2)Дк он выдаст это Поле Формы.
Прикрепленные файлы:
6. lmnlmn 69 18.05.22 15:31 Сейчас в теме
(3) Тогда вам надо на сервер за типом сходить.
7. user1256662 18.05.22 15:39 Сейчас в теме
(6) по подробнее можно? немного не понимаю как,если мне нужно получить реквизит при изменении и вставить судя по этому типу в отбор
9. lmnlmn 69 18.05.22 15:42 Сейчас в теме
(7) У вас обработка ведется с директивой &НаКлиенте.
Можно написать функцию с директивой компиляции &НаСервере и ей получить тип реквизита через ТипЗнч()
10. lmnlmn 69 18.05.22 15:45 Сейчас в теме
(7) Что-то вроде:
&НаСервере
Функция ПолучитьТипНаСервере()
    Возврат ТипЗнч(Объект.Реквизит)
КонецФункции
12. user1256662 18.05.22 15:53 Сейчас в теме
(10)
&НаСервере
Функция ПолучитьТипНаСервере()
Возврат ТипЗнч(Объект.Реквизит)
КонецФункции


Он не даст,потому что это не таб часть
14. lmnlmn 69 18.05.22 15:59 Сейчас в теме
(12) Неясно причем тут табличная часть. Запросите тип реквизита который является источником данных для элемента РазмещениеДенежныхСредствБанковскийСчет

P.S. Там же, на сервере и сравнить можно.
15. MikhailDr 18.05.22 16:02 Сейчас в теме
(3) ТипЗнч() надо применять не к элементу формы, а к значению реквизита. Это либо реквизит формы, либо реквизит объекта.
4. Ivanov_OM 38 18.05.22 15:25 Сейчас в теме
(1) А если так:
&НаКлиенте
Процедура РазмещениеДенежныхСредствБанковскийСчетПриИзменении(Элемент)
    ВладелецСчета = Объект.Организация;
    
    НовыйМассивПараметров = Новый Массив();
    Если ТипЗнч(Объект.РазмещениеДенежныхСредствБанковскийСчет) = Тип("СправочникСсылка.Организации") Тогда    
        НовыйМассивПараметров.Добавить(Новый ПараметрВыбора("Отбор.Владелец", ВладелецСчета));
    ИначеЕсли ТипЗнч(РазмещениеДенежныхСредствБанковскийСчет) = Тип("СправочникСсылка.ДоговорыКонтрагентов") Тогда
        НовыйМассивПараметров.Добавить(Новый ПараметрВыбора("Отбор.Организация", ВладелецСчета));
    КонецЕсли;
    
    Элементы.РазмещениеДенежныхСредствБанковскийСчет.ПараметрыВыбора = Новый ФиксированныйМассив(НовыйМассивПараметров); 
КонецПроцедуры
Показать
5. user1256662 18.05.22 15:28 Сейчас в теме
(4) Он не даст,потому что РазмещениеДенежныхСредств это табличная часть и через объект к реквизитам ТЧ нельзя обращаться.
8. Ivanov_OM 38 18.05.22 15:41 Сейчас в теме
(5)Тогда вообще непонятно, как ты пытаешься сравнить табличную часть с элементом.
11. user1256662 18.05.22 15:53 Сейчас в теме
(8)Вот это мне и не понятно,как можно обратиться к табличной части через объект,чтобы получить тип значения
16. lmnlmn 69 18.05.22 16:05 Сейчас в теме
(11) А, так там ТЧ. Тогда:
ТипЗнч(Элементы.ТЧ.ТекущиеДанные.Реквизит)
13. petleon 7 18.05.22 15:58 Сейчас в теме
(1) Попробуйте так:
Если ТипЗнч(Элемент.Родитель.ТекущиеДанные.БанковскийСчет) = Тип("СправочникСсылка.Организации") Тогда
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот