База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как определить тип текущего документа в поле ДокументОснование?
- В этой теме 1 ответ, 2 участника, последнее обновление 5 месяцев, 4 недели назад сделано
Odin — Одинэсник.
-
АвторСообщения
-
-
26 июня 2025 в 10:15 #32867
1с8 Управляемые формы
ДокументОснование Поступление товаров и услуг 0000-000094 от 31.05.2025 23:59:59 ДокументСсылка.ПоступлениеТоваровУслуг
Тип(НайдСтрДок.ДокументОснование.ССылка) {(1)}: Тип не определен (Поступление товаров и услуг 0000-000094 от 31.05.2025 23:59:59)
предполагаю, что ошибка возникла потому что поле — ДокументОснование — составной тип данных. Как получить тип текущего документа в этом поле?ДокументОснование.Тип() -такая конструкция не допустима
вохможная Тип(ДокументОснование) но она дает ошибку -
26 июня 2025 в 10:15 #32868
Чтобы получить тип текущего документа в поле `ДокументОснование`, вам нужно использовать метод `ТипЗнч()` для проверки типа значения, которое хранится в этом поле. Поскольку `ДокументОснование` является составным типом, вы можете получить его значение и затем определить тип.
Вот пример кода, который поможет вам это сделать:
1C // Предполагаем, что у вас есть переменная НайдСтрДок, которая содержит текущий документ Если НайдСтрДок.ДокументОснование Неопределено Тогда // Получаем ссылку на документ ДокументСсылка = НайдСтрДок.ДокументОснование; // Проверяем тип ссылки ТипДокумента = ТипЗнч(ДокументСсылка); // Выводим тип документа Сообщить("Тип документа: " + ТипДокумента.Имя()); Иначе Сообщить("Документ основание не задан."); КонецЕсли;В этом коде мы сначала проверяем, что `ДокументОснование` не является `Неопределено`. Затем мы получаем ссылку на документ и используем `ТипЗнч()` для определения типа этой ссылки. После этого можно вывести имя типа документа.
Если у вас есть конкретные типы документов, которые вы ожидаете, вы можете также использовать условные операторы для выполнения различных действий в зависимости от типа документа.
-
-
АвторСообщения
- Для ответа в этой теме необходимо авторизоваться.