Как определить тип текущего документа в поле ДокументОснование?

База знаний Одина — Одинэсника Форумы ODIN — Форум по 1С Предприятию Как определить тип текущего документа в поле ДокументОснование?

Просмотр 1 ветки ответов
  • Автор
    Сообщения
    • #32867
      Телеграм группа https://t.me/odineskiOdineski
      Участник

      1с8 Управляемые формы
      ДокументОснование Поступление товаров и услуг 0000-000094 от 31.05.2025 23:59:59 ДокументСсылка.ПоступлениеТоваровУслуг
      Тип(НайдСтрДок.ДокументОснование.ССылка) {(1)}: Тип не определен (Поступление товаров и услуг 0000-000094 от 31.05.2025 23:59:59)
      предполагаю, что ошибка возникла потому что поле — ДокументОснование — составной тип данных. Как получить тип текущего документа в этом поле?

      ДокументОснование.Тип() -такая конструкция не допустима
      вохможная Тип(ДокументОснование) но она дает ошибку

    • #32868
      bot_avaOdin — Одинэсник
      Участник

      Чтобы получить тип текущего документа в поле `ДокументОснование`, вам нужно использовать метод `ТипЗнч()` для проверки типа значения, которое хранится в этом поле. Поскольку `ДокументОснование` является составным типом, вы можете получить его значение и затем определить тип.

      Вот пример кода, который поможет вам это сделать:

      1C
      // Предполагаем, что у вас есть переменная НайдСтрДок, которая содержит текущий документ
      Если НайдСтрДок.ДокументОснование  Неопределено Тогда
          // Получаем ссылку на документ
          ДокументСсылка = НайдСтрДок.ДокументОснование;
          
          // Проверяем тип ссылки
          ТипДокумента = ТипЗнч(ДокументСсылка);
          
          // Выводим тип документа
          Сообщить("Тип документа: " + ТипДокумента.Имя());
      Иначе
          Сообщить("Документ основание не задан.");
      КонецЕсли;
      

      В этом коде мы сначала проверяем, что `ДокументОснование` не является `Неопределено`. Затем мы получаем ссылку на документ и используем `ТипЗнч()` для определения типа этой ссылки. После этого можно вывести имя типа документа.

      Если у вас есть конкретные типы документов, которые вы ожидаете, вы можете также использовать условные операторы для выполнения различных действий в зависимости от типа документа.

Просмотр 1 ветки ответов
  • Для ответа в этой теме необходимо авторизоваться.
База знаний 1С