8.х Передача параметров из документа в справочник

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

  1. TopicStarter Overlay
    viktor676
    Offline

    viktor676

    Регистрация:
    1 апр 2009
    Сообщения:
    3
    Симпатии:
    0
    Баллы:
    1
    Подскажите, плз, как передать параметры из документа в справочник для выбора. Требуется организовать вывод остатков в справочнике "Номенклатура" по складу на дату ввода документа "Требование-накладная".
  2. Чешир
    Offline

    Чешир

    Регистрация:
    10 ноя 2006
    Сообщения:
    36
    Симпатии:
    0
    Баллы:
    1
    Вызов документа в Модуле справочника: Документы.ТребованиеНакладная.Выбрать(<Дата начала>, <Дата окончания>, <Отбор>, <Порядок>) .
    Остатки же нужно брать из РегистраНакопления.ТоварыНаСкладах.Остатки()...сделать отбор по Складу полученному из ТребованияНакладной...
    Вот как-то так...если я правильно понял суть проблемы...
  3. tunec
    Offline

    tunec Опытный в 1С

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

    viktor676

    Регистрация:
    1 апр 2009
    Сообщения:
    3
    Симпатии:
    0
    Баллы:
    1
    Спасибо за ответ, но я наверно неверно сформулировал вопрос. Есть ли в восьмерке метод, реализующий передачу в открываемую для выбора форму справочника каких-то значений, например дату документа и склад. Затем я хотел бы при перемещении по справочнику выводить информационную строку, показывающую остатки текущей номенклатуры на переданном при открытии складе на указанную дату. В семерке был метод Форма.Параметр, где через параметр можно было передать что угодно. В восьмерке вроде бы есть метод ЭтаФорма.ВладелецФормы., но попытка использовать его дает ошибку

    Процедура ПриОткрытии()
    сообщить("ЭтаФорма.ВладелецФормы.Склад "+ЭтаФорма.ВладелецФормы.Склад);
    КонецПроцедуры // ПередОткрытием()
    : Поле объекта не обнаружено (Склад)
  5. tunec
    Offline

    tunec Опытный в 1С

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

    Форма=Документы.<ИмяДокумета>.ПолучитьФорму("НоваяМегаформаСпримочками",ЭтаФорма);
    Форма.<Параметр1>= ЗначениеПараметра2;
    Форма.<Параметр2>= ЗначениеПараметра2;
    .....

    Форма.Открыть();
    Ну и в открываемой форме должны быть созданы реквизиты формы <Параметр1>, <Параметр2> и т.д.

    П.С. чтобы использовать владельца формы нужо сначала его установить :)
  6. vitaly_mnpz
    Offline

    vitaly_mnpz Опытный в 1С

    Регистрация:
    15 фев 2009
    Сообщения:
    267
    Симпатии:
    0
    Баллы:
    26
    Проще в форме создать экспортную переменную, в которую передавать структуру параметров

    Код:
    Форма = Справочники.НашСправочник.ПолучитьФорму("НашаФорма",ЭтаФорма);
    
    СтруктураПараметров= Новый Структура;
    СтруктураПараметров.Вставить("ДатаОстатков",Дата);
    СтруктураПараметров.Вставить("Склад",Склад);
    
    Форма.мСтруктураПараметров= СтруктураПараметров;
    Форма.Открыть();
    
    А в форме при открытии (или перед открытием) прочитать значение переменной.

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