8.х Заполнение открытой формы документа

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

  1. TopicStarter Overlay
    Dmitry141280
    Offline

    Dmitry141280

    Регистрация:
    9 дек 2008
    Сообщения:
    5
    Симпатии:
    0
    Баллы:
    1
    Здравствуйте, могу ли я присвоить значение реквизиту документа, в его открытой форме (модуль формы), не используя предопределенный процедуры: ОбработкаЗаполнения(), ПриКопировании(), ПередОткритием()????????

    Как реквизиту программно присвоить ссылку выбранного элемента?????
  2. bons
    Offline

    bons Опытный в 1С

    Регистрация:
    7 авг 2008
    Сообщения:
    94
    Симпатии:
    0
    Баллы:
    26
    А форму открывать обязательно? или она уже открыта?


    ИМХО: если не ошибаюсь...

    Если открывать форму не нужно, или можно не открывать, то получаешь объект и заполняешь реквизит и записываешь...

    Если форма открыта то в любом месте можно обратиться к реквизиту и его заполнить?
  3. TopicStarter Overlay
    Dmitry141280
    Offline

    Dmitry141280

    Регистрация:
    9 дек 2008
    Сообщения:
    5
    Симпатии:
    0
    Баллы:
    1
    в модуле формы присвоить реквизиту документа не получается, форма документа открыта

    НовыйКонтрагент=Справочники.Контрагенты.СоздатьЭлемент();
    НовыйКонтрагент.Родитель=Справочники.Контрагенты.НайтиПоНаименованию("Заемщики");
    НовыйКонтрагент.Наименование=ЗАФизЛицо.Наименование;
    НовыйКонтрагент.НаименованиеПолное=ЗАФизЛицо.Наименование;
    НовыйКонтрагент.ЮрФизЛицо=Перечисления.ЮрФизЛицо.ФизЛицо;

    Контрагент=НовыйКонтрагент;
  4. BabySG
    Offline

    BabySG Администраторы Команда форума Администратор

    Регистрация:
    10 июн 2007
    Сообщения:
    11.853
    Симпатии:
    12
    Баллы:
    29
    А записывать кто будет новый элемент?
  5. TopicStarter Overlay
    Dmitry141280
    Offline

    Dmitry141280

    Регистрация:
    9 дек 2008
    Сообщения:
    5
    Симпатии:
    0
    Баллы:
    1
    процедура модуляформы документы, вызывается по кнопке,
    на форме поле ввода физических лиц - // создается элемент спр контрагентов,
    этот элемент я не могу присвоить ни в форму, ни рекфизиту открытому документа???????
    Код:
    Процедура Сформировать()
    //Заполнение контрагента из физического лица
    //Проверка на группу
    Если Справочники.Контрагенты.НайтиПоНаименованию("Заемщики")=Справочники.Контрагенты.ПустаяСсылка() Тогда
    ГруппаКонтрагента=Справочники.Контрагенты.СоздатьГруппу();
    ГруппаКонтрагента.Наименование="Заемщики";
    ГруппаКонтрагента.Записать();
    Иначе
    КонецЕсли;
    НовыйКонтрагент=Справочники.Контрагенты.НайтиПоНаименованию(ЗАФизЛицо.Наименование);
    Если Не НовыйКонтрагент.Пустая() тогда
    Иначе
    //		Контрагент.ПолучитьОбъект();
    НовыйКонтрагент=Справочники.Контрагенты.СоздатьЭлемент();
    НовыйКонтрагент.Родитель=Справочники.Контрагенты.НайтиПоНаименованию("Заемщики");
    НовыйКонтрагент.Наименование=ЗАФизЛицо.Наименование;
    НовыйКонтрагент.НаименованиеПолное=ЗАФизЛицо.Наименование;
    НовыйКонтрагент.ЮрФизЛицо=Перечисления.ЮрФизЛицо.ФизЛицо;
    НовыйКонтрагент.Записать();
    ДокументОбъект.Контрагент=НовыйКонтрагент;
    выаыва=Контрагент;
    КонецЕсли;
    
    КонецПроцедуры
    
  6. tunec
    Offline

    tunec Опытный в 1С

    Регистрация:
    2 июн 2008
    Сообщения:
    469
    Симпатии:
    0
    Баллы:
    26
    проверь типы отладчиком, да и на значения тоже глянь...

    Кстати, а ты уверен что не присваивается? может просто на форме не выводится?
  7. TopicStarter Overlay
    Dmitry141280
    Offline

    Dmitry141280

    Регистрация:
    9 дек 2008
    Сообщения:
    5
    Симпатии:
    0
    Баллы:
    1
    ну.... если отладчик показывает таблицу Контрагенты=""
    -//значит не присваивает
  8. TopicStarter Overlay
    Dmitry141280
    Offline

    Dmitry141280

    Регистрация:
    9 дек 2008
    Сообщения:
    5
    Симпатии:
    0
    Баллы:
    1
    Большое спасибо, разобрался

    Код:
    Процедура Сформировать()
    //Заполнение контрагента из физического лица
    //Проверка на группу
    Если Справочники.Контрагенты.НайтиПоНаименованию("Заемщики")=Справочники.Контрагенты.ПустаяСсылка() Тогда
    ГруппаКонтрагента=Справочники.Контрагенты.СоздатьГруппу();
    ГруппаКонтрагента.Наименование="Заемщики";
    ГруппаКонтрагента.Записать();
    Иначе
    КонецЕсли;
    НовыйКонтрагент=Справочники.Контрагенты.НайтиПоНаименованию(ЗАФизЛицо.Наименование);
    Если Не НовыйКонтрагент.Пустая() тогда
    Иначе
    //		Контрагент.ПолучитьОбъект();
    НовыйКонтрагент=Справочники.Контрагенты.СоздатьЭлемент();
    НовыйКонтрагент.Родитель=Справочники.Контрагенты.НайтиПоНаименованию("Заемщики");
    НовыйКонтрагент.Наименование=ЗАФизЛицо.Наименование;
    НовыйКонтрагент.НаименованиеПолное=ЗАФизЛицо.Наименование;
    НовыйКонтрагент.ЮрФизЛицо=Перечисления.ЮрФизЛицо.ФизЛицо;
    НовыйКонтрагент.Записать();
    Контрагент=НовыйКонтрагент.Ссылка; ///////////// вот тут /////////////
    КонецЕсли;
    КонецПроцедуры
    

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