8.х программное открытие формы элемента справочника с заполнением параметров

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

  1. TopicStarter Overlay
    JediAlex
    Offline

    JediAlex Опытный в 1С

    Регистрация:
    27 авг 2011
    Сообщения:
    181
    Симпатии:
    0
    Баллы:
    26
    Здравствуйте. в собственной конфигурации есть справочник "ЖурналРегистрацииОбъектныхГрафиков" с реквизитами "Номер" - число(5,0), год - число(4,0). в форме списка справочника сделал команду создания нового элемента, при этом новое значение реквизита "номер" надо вычислить и подставить в открывшуюся форму и в фору также поставить в реквизит "год" текущий год. Делаю так:
    Код:
    &НаКлиенте
    Процедура СоздатьЗаписьЖурнала(Команда)
        //СоздатьЗаписьЖурналаНаСервере();
        ПараметрыФормы = Новый Структура;
        ПараметрыФормы.Вставить("Номер", ПолучитьНомерЗаписиТекущегоГода());
        ПараметрыФормы.Вставить("Год",Год(ТекущаяДата()));
        ОткрытьФорму("Справочник.ЖурналРегистрацииОбъектныхГрафиков.Форма.ФормаЭлемента", ПараметрыФормы,,);
    КонецПроцедуры
    
    &НаСервере
    Функция ПолучитьНомерЗаписиТекущегоГода() Экспорт
    ПредНомер=Новый Запрос;
    Предномер.Текст="ВЫБРАТЬ
    |   ВЫБОР
    |       КОГДА КОЛИЧЕСТВО(ЖурналРегистрацииОбъектныхГрафиков.Ссылка) = 0
    |           ТОГДА 1
    |       ИНАЧЕ МАКСИМУМ(ЖурналРегистрацииОбъектныхГрафиков.Номер)
    |   КОНЕЦ КАК номер
    |ИЗ
    |   Справочник.ЖурналРегистрацииОбъектныхГрафиков КАК ЖурналРегистрацииОбъектныхГрафиков
    |ГДЕ
    |   ЖурналРегистрацииОбъектныхГрафиков.Год = &ГодГрафика";
    Предномер.УстановитьПараметр("ГодГрафика",Год(ТекущаяДата()));
    Результат=ПредНомер.Выполнить().Выбрать();
    Пока Результат.Следующий() Цикл
    Возврат  Результат.Номер;
    КонецЦикла;
    КонецФункции
    Сейчас справочник пустой и должны быть значения6 номер=1;год=2018. В отладчике:
    ПолучитьНомерЗаписиТекущегоГода()=1
    Год(ТекущаяДата())=2018, но при открытии формы командой номер =0, Год=0... что не так делаю? подскажите пожалуйста.
  2. AlexeyKh
    Offline

    AlexeyKh Опытный в 1С

    Регистрация:
    27 июл 2012
    Сообщения:
    146
    Симпатии:
    17
    Баллы:
    29
    так в самой форме элемента справочника, в событии: ПриСозданииНаСервере, надо код прописать, примерно такой, возможны варианты

    Код:
    &НаСервере
    Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
        ЗаполнитьЗначенияСвойств(Объект,Параметры,"Номер,Год");
    КонецПроцедуры
    

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