7.7 ОткрытьФорму() для существующего документа не работает

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

  1. TopicStarter Overlay
    gamser
    Offline

    gamser Опытный в 1С

    Регистрация:
    27 окт 2006
    Сообщения:
    112
    Симпатии:
    0
    Баллы:
    26
    Например так для УСН
    Вызов идет из внешней обработки

    Код:
    Списание=СоздатьОбъект("Документ.ПеремещениеМПЗ");
    Списание.НайтиДокумент(ВыбранныйДокумент);
    ОткрытьФорму(Списание,,);
    
    
    И фига с дрыгой Метод возвращает 0 и форму не открывает
    Кто нибудь объяснит почему?
  2. igkr
    Offline

    igkr

    Регистрация:
    13 авг 2006
    Сообщения:
    9
    Симпатии:
    0
    Баллы:
    1
    Нужно так
    ОткрытьФорму(Списание.ТекущийДокумент(),,);
    или
    ОткрытьФорму(ВыбранныйДокумент,,);

    Фактически нужно передавать ссылку на документ
  3. TopicStarter Overlay
    gamser
    Offline

    gamser Опытный в 1С

    Регистрация:
    27 окт 2006
    Сообщения:
    112
    Симпатии:
    0
    Баллы:
    26
    Спасибо, работает :))
    Вот фрагмент из синтакс-помощника

    Синтаксис:
    ОткрытьФорму(<Документ>,<КонтекстФормы>,<РежимПросмотра>)
    Назначение:
    Открывает визуальную форму существующего документа или элемента/группы справочника.
    Возвращает: 1 - если действие выполнено, 0 - иначе.
    Параметры:
    <Документ> - выражение со значением типа 'документ';
  4. TopicStarter Overlay
    gamser
    Offline

    gamser Опытный в 1С

    Регистрация:
    27 окт 2006
    Сообщения:
    112
    Симпатии:
    0
    Баллы:
    26
    Поторопился.
    Так чем отличаются Документ от Документ.ТекущийДокумент()?
    И тот и другой в функции ТипЗначенияСтр() говорят что они оба имеют тип "Документ"
    А ТипЗначения() говорит то же но в цифирках.
    Наверное так (в терминологии 1С 8):
    Документ имеет тип ДокументОбъект
    Документ.ТекущийДокумент() Имеет тип ДокументСсылка
    Все это условно конечно.
  5. MaxxaM
    Offline

    MaxxaM Опытный в 1С

    Регистрация:
    16 окт 2007
    Сообщения:
    288
    Симпатии:
    2
    Баллы:
    29
    Документ - объект типа документ и может быть с позиционированным или не очень, а
    Документ.ТекущийДокумент() позиционирование на конкретный документ в выборке документов

    Они принимают одинаковое значения после выполнения команд
    Код:
    док.ВыбратьДокументы(дата1,дата2);        
    док.ПолучитьДокумент()
    
    
    
    однако при передаче данных, неоднократно вощникали проблемы при использовании просто перм. док, поэтому правильней, надежней и четабельней использовать Документ.ТекущийДокумент().

    ИМХО я думаю: что реально в перм. док 1с держит выборку документов, но визуально отображает только текущийдокумент. :unsure:

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