[РЕШЕНО] Значение не является значением объектного типа (Метаданные)

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем Peroman, 16 апр 2015.

  1. TopicStarter Overlay
    Peroman
    Offline

    Peroman Опытный в 1С

    Регистрация:
    26 май 2009
    Сообщения:
    879
    Симпатии:
    13
    Баллы:
    29
    Всем доброго времени суток!

    Платформа: 1С:Предприятие 8.3 (8.3.5.1231)
    Конфигурация: "Управление торговлей", редакция 10.3 (10.3.32.1)

    В документе ПеремщениеТоваров, в командную панель добавил кнопку СерийныеНомера, скопировал данную кнопку из документа ПоступлениеТоваровУслуг, от туда же стянул Процедуру :
    Код:
    Процедура КоманднаяПанельТоварыСерийныеНомера(Кнопка)
    Всё вроде нормально работает, если номенклатура не имеет признака ВестиСерийныеНомера, то выдается всё корректно, но если данный признак есть, то до открытия формы Обработки ввода серийных номеров, выскакивает ошибка:

    upload_2015-4-16_13-14-40.png

    upload_2015-4-16_13-15-14.png
  2. nomad_irk
    Online

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    7.581
    Симпатии:
    717
    Баллы:
    204
    Ссылка на документ/сам ДокументОбъект в обработку передается?
  3. alexburn
    Offline

    alexburn Модераторы Команда форума Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    14.782
    Симпатии:
    509
    Баллы:
    204
    В обработчике команды прописали ПараметрыКоманды() ?
  4. TopicStarter Overlay
    Peroman
    Offline

    Peroman Опытный в 1С

    Регистрация:
    26 май 2009
    Сообщения:
    879
    Симпатии:
    13
    Баллы:
    29
    Процедура, полный листинг:
    Код:
    Процедура КоманднаяПанельТоварыСерийныеНомера(Кнопка)
       
        СтрокаТабличнойЧасти = ЭлементыФормы.Товары.ТекущиеДанные;
        Если СтрокаТабличнойЧасти = Неопределено Тогда
            Возврат;
        КонецЕсли;
       
        СтруктураПараметров = Новый Структура();
        СтруктураПараметров.Вставить("Номенклатура",                 СтрокаТабличнойЧасти.Номенклатура);
        СтруктураПараметров.Вставить("ХарактеристикаНоменклатуры",     СтрокаТабличнойЧасти.ХарактеристикаНоменклатуры);
        СтруктураПараметров.Вставить("СерияНоменклатуры",             СтрокаТабличнойЧасти.СерияНоменклатуры);
        СтруктураПараметров.Вставить("Количество",                     СтрокаТабличнойЧасти.Количество);
        СтруктураПараметров.Вставить("ЕдиницаИзмерения",             СтрокаТабличнойЧасти.ЕдиницаИзмерения);
        СтруктураПараметров.Вставить("СозданиеНовыхСерийныхНомеров",Ложь);
        СтруктураПараметров.Вставить("ДокументОбъект",                 ЭтотОбъект);
        СтруктураПараметров.Вставить("ИмяТабличнойЧасти",             "Товары");
        СтруктураПараметров.Вставить("НомерСтрокиТабличнойЧасти",     СтрокаТабличнойЧасти.НомерСтроки);
        СтруктураПараметров.Вставить("СтрокаТабличнойЧасти",         СтрокаТабличнойЧасти);
        СтруктураПараметров.Вставить("ПараметрыСвязиСтрокТЧ",         мПараметрыСвязиСтрокТЧ);
       
        // Открываем форму подбора.
        ФормаВводСерийныхНомеров = Обработки.ВводСерийныхНомеров.ПолучитьФорму("ОсновнаяФорма", ЭтаФорма, ЭтаФорма);
        ФормаВводСерийныхНомеров.СтруктураИсходныхПараметров = СтруктураПараметров;
        ФормаВводСерийныхНомеров.Открыть();
    
    КонецПроцедуры // КоманднаяПанельТоварыСерийныеНомера()
    
    --- Объединение сообщений, 16 апр 2015 ---
    Не совсем понял, о чём вы? Какой обработчик?
  5. TopicStarter Overlay
    Peroman
    Offline

    Peroman Опытный в 1С

    Регистрация:
    26 май 2009
    Сообщения:
    879
    Симпатии:
    13
    Баллы:
    29
    Код:
    СтруктураИсходныхПараметров.Свойство("ДокументОбъект",                 Документ);
    Затык на этом происходит. Это уже в самой обработке ВводСерийныхНомеров При чём, если это документ ПоступлениеТоваровУслуг, то
    переменная Документ заполняется, а если это документ ПеремещениеТоваров, то нет.
    Хотя в отладчике видно что данные есть:
    upload_2015-4-16_14-3-33.png
    Так же в обработку всё передалось:
    upload_2015-4-16_14-4-56.png

    Но при этом на шаге присвоения переменной Документ, в обработчике ПередОткрытием обработки ВводСерийныхНомеров, переменная не заполняется
  6. alexburn
    Offline

    alexburn Модераторы Команда форума Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    14.782
    Симпатии:
    509
    Баллы:
    204
    У любой команды есть обработчик.
    И кстати, вы точно прописали КоманднаяПанельТоварыСерийныеНомера () к кнопке ?
    --- Объединение сообщений, 16 апр 2015 ---
    С учетом скринов. Видимо нужно пилить обработку, чтоб не обращала на тип документа, либо править под типы документов.
  7. TopicStarter Overlay
    Peroman
    Offline

    Peroman Опытный в 1С

    Регистрация:
    26 май 2009
    Сообщения:
    879
    Симпатии:
    13
    Баллы:
    29
    Разобрался. всё элементарно. Надо было в обработке ВводСерийныхНомеров в составной тип данных добавить документ Перемещение товаров.
    alexburn нравится это.

Поделиться этой страницей