8.х ПриОткрытии Формы

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

  1. TopicStarter Overlay
    НиколайН
    Offline

    НиколайН Опытный в 1С

    Регистрация:
    14 фев 2014
    Сообщения:
    246
    Симпатии:
    0
    Баллы:
    26
    Здравствуйте! Помогите советом!

    1. Создал собственную форму (Обычную НЕ управляемую)
    2. Создал в объекте Документ в "Форме списка" кнопку.
    3. В форме списка документов я выбираю документ, нажимаю на созданную мною кнопку и мне открывается моя нарисованная форма.
    4. В этой форме есть надпись Документ №:

    Что нужно написать, чтобы при открытии моей формы чтобы после надписи "Документ №:" появлялся номер документа, с которого я открыл эту форму
  2. Yuriy_Alexandrovich
    Offline

    Yuriy_Alexandrovich Профессионал в 1С Команда форума

    Регистрация:
    15 сен 2011
    Сообщения:
    1.275
    Симпатии:
    76
    Баллы:
    54
    У формы создать реквизит с типом ссылки на документ, добавить на форму элемент который будет отображать эту информацию, у элемента всвойствах "данные" = реквизит формы. Там где вы получили форму задать значение реквизита формы выбранным документом, открыть форму.
  3. TopicStarter Overlay
    НиколайН
    Offline

    НиколайН Опытный в 1С

    Регистрация:
    14 фев 2014
    Сообщения:
    246
    Симпатии:
    0
    Баллы:
    26
    Немного не понял:

    1.Создал Реквизит "Док" с типом (ДокументСсылка.ЗаказПокупателя).
    2.Добавил на форму "ПолеВода" в свойствах указал Данные = "Док"
    3. В документе "Заказ покупателя" в модуле формы "ФормаСписка", я открываю форму:

    Процедура ДействияФормыРазрешениеНаСделку(Кнопка)
    Форма = Документы.ЗаказПокупателя.ПолучитьФорму("ФормаСделка").ОткрытьМодально();
    КонецПроцедуры

    Не понял как мне задать значения реквизита "Док" выбранным документом.
    Не знаю просто как синтаксис написать!
  4. Yuriy_Alexandrovich
    Offline

    Yuriy_Alexandrovich Профессионал в 1С Команда форума

    Регистрация:
    15 сен 2011
    Сообщения:
    1.275
    Симпатии:
    76
    Баллы:
    54
    по п.2 - Не, непонял. У поля ввода в данных нажимай троеточие, появиться возможность выбрать источник данных, указывай там созданный реквизит формы.
    по п.3 -
    Код:
    Форма =  Документы.ЗаказПокупателя.ПолучитьФорму("ФормаСделка"); // Получаем форму
    Форма.Док = ТекущаяСтрока.Ссылка; // Получаем выбранный документ, возможно тут не точно, непомню как в списке
    Если НЕ Форма.Открыта() Тогда
       Форма.ОткрытьМодально(); // Если форма не открыта, то открываем модально
    КонецЕсли;
    
    НиколайН нравится это.
  5. TopicStarter Overlay
    НиколайН
    Offline

    НиколайН Опытный в 1С

    Регистрация:
    14 фев 2014
    Сообщения:
    246
    Симпатии:
    0
    Баллы:
    26
    Всё получилось! Спасибо большое!)
    Форма.Док = ТекущаяСтрока.Ссылка; - Не сработало

    Форма.Док = ЭлементыФормы.Список.ТекущаяСтрока; - Вот как сработало.
  6. TopicStarter Overlay
    НиколайН
    Offline

    НиколайН Опытный в 1С

    Регистрация:
    14 фев 2014
    Сообщения:
    246
    Симпатии:
    0
    Баллы:
    26
    А ещё такой вопрос.

    На форме которую я создал есть кнопка "Разрешить", при нажатии на эту кнопку у меня выполняется действие и на форму в поля Дата - записывается текущая дата
    и в поле Пользователь - записывается ТекущейПользователь.

    Вопрос в следующем, когда я закрываю форму эти данный исчезают, как мне сделать, чтобы при закрытии они СОХРАНЯЛИСЬ????
  7. Yuriy_Alexandrovich
    Offline

    Yuriy_Alexandrovich Профессионал в 1С Команда форума

    Регистрация:
    15 сен 2011
    Сообщения:
    1.275
    Симпатии:
    76
    Баллы:
    54
    получить объект из ссылки, и у объекта менять соотв. реквизиты
  8. TopicStarter Overlay
    НиколайН
    Offline

    НиколайН Опытный в 1С

    Регистрация:
    14 фев 2014
    Сообщения:
    246
    Симпатии:
    0
    Баллы:
    26
    Ситуация такая, что ТекущаяДата и ТекущийПользователь, не соответствуют Документу.
    Я правильно понял, что если данные я буду брать не из документа, то они не сохранятся?
  9. Yuriy_Alexandrovich
    Offline

    Yuriy_Alexandrovich Профессионал в 1С Команда форума

    Регистрация:
    15 сен 2011
    Сообщения:
    1.275
    Симпатии:
    76
    Баллы:
    54
    если вы заполните объект и сохраните его тогда сохраняться, иначе - нет.
    сейчас, как я понял, вы оперируете ссылкой на объект, она априоре "readonly", из ссылки получите объект "ДокОбъект = Док.ПолучитьОбъект()", заполните реквизиты объекта как вам нужно, а далее запишите его "ДокОбъект.Записать(<Параметры>)" смотри синтаксис помощник (Ctrl-F1 на методе, функции)

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