7.7 Открытие формы редактирования элемента

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 7.7"", создана пользователем lamer1C, 13 июн 2007.

  1. TopicStarter Overlay
    lamer1C
    Offline

    lamer1C

    Регистрация:
    26 фев 2007
    Сообщения:
    36
    Симпатии:
    0
    Баллы:
    1
    Помогите разобраться в следующем вопросе.
    У меня имеется агрегатный тип данных "Справочник". Программно я нахожу нужный мне элемент этого справочника, как я могу автоматически открыть диалог редактирования найденного элемента справочника?
  2. Steel Rain
    Offline

    Steel Rain Опытный в 1С

    Регистрация:
    29 сен 2006
    Сообщения:
    408
    Симпатии:
    2
    Баллы:
    29
    Открыть форму существующего элемента справочника

    ОткрытьФорму(<?>,,)
    Синтаксис:
    ОткрытьФорму(<Элемент>,<КонтекстФормы>,<РежимПросмотра>)
    Назначение:
    Открывает визуальную форму сущ. элемента/группы справочника.
    Возвращает: 1 - если действие выполнено, 0 - иначе.
    Параметры:
    <Элемент> - выражение со значением типа 'Справочник';
    <КонтекстФормы> - имя переменной, куда можно задать значение любого типа для передачи в открываемую форму. Данное значение будет доступно в открытой форме как атрибут Форма.Параметр. После исполнения данного метода система вернет в данную переменную контекст открытой формы (необязателен);
    <РежимПросмотра> - необязательный параметр. Числовое выражение: 1 - открыть форму в режиме только просмотра; 0 - открыть форму в режиме редактирования; -1 (минус единица) - в этом случае используется вариант, предусмотренный текущим значением параметра ''Режим открытия объектов'', установленным пользователем интерактивно.
    Замечание:
    Пока форма открыта, тип значения параметра <КонтекстФормы> равен 100, когда закрыта - 0.

    Синтаксис помошник рулит!
  3. TopicStarter Overlay
    lamer1C
    Offline

    lamer1C

    Регистрация:
    26 фев 2007
    Сообщения:
    36
    Симпатии:
    0
    Баллы:
    1
    Спасибо за справку по функции, но у меня проблема в том, что при использовании ОткрытьФорму(), открывается форма списка, а не форма элемента для редактирования.

    Возможно я неправильно задаю параметр <элемент>. Я пишу:
    ОткрытьФорму("Справочник.ИмяСправочника", , 0);

    Поправьте где у меня ошибка.
  4. Aptem
    Offline

    Aptem

    Регистрация:
    15 май 2007
    Сообщения:
    38
    Симпатии:
    0
    Баллы:
    1
    везде... ОткрытьФорму(Спр); в спр содержится элемент а не форма справочника
  5. Steel Rain
    Offline

    Steel Rain Опытный в 1С

    Регистрация:
    29 сен 2006
    Сообщения:
    408
    Симпатии:
    2
    Баллы:
    29
    Нужно открыть элемент справочника, а вы в метод передаете название справочника. Сначала нужно спозиционироваться на нужном элементе и его передать в метод. К примеру так:

    Код:
    Справочник=СоздатьОбъект("Справочник.Номенклатура");
    Элемент=Справочник.НайтиПоКоду(_кодНужногоЭлемента_);
    ОткрытьФорму(Элемент,,0);
    
  6. TopicStarter Overlay
    lamer1C
    Offline

    lamer1C

    Регистрация:
    26 фев 2007
    Сообщения:
    36
    Симпатии:
    0
    Баллы:
    1
    Спасибо за подсказки все заработало правда с несколько измененным кодом:

    Справочник=СоздатьОбъект("Справочник.Номенклатура");
    Справочник.НайтиПоКоду(_кодНужногоЭлемента_);
    Элемент=Справочник.ТекущийЭлемент();
    ОткрытьФорму(Элемент,,0);
  7. Steel Rain
    Offline

    Steel Rain Опытный в 1С

    Регистрация:
    29 сен 2006
    Сообщения:
    408
    Симпатии:
    2
    Баллы:
    29
    Ну да, верно. НайтиПоКоду только позиционирует на элементе и возвращает 0 или 1. Не было базы под рукой. Так на вскидку написал.

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