7.7 Форма выбора

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 7.7"", создана пользователем Евгений1986, 4 дек 2012.

  1. TopicStarter Overlay
    Евгений1986
    Offline

    Евгений1986

    Регистрация:
    4 дек 2012
    Сообщения:
    31
    Симпатии:
    0
    Баллы:
    1
    Добрый день, Уважаемые.
    Я пока новичёк, помогите пожалуйста с вопросом.. Есть документ в котором нужно заполнить табличную часть , но для заполнения одного из полей нужно спросить у пользователя вариант из предоставленных значений. Т.е на форме нужно сделать конопку "заполнить", после нажатия которой должно выходить окошко с выбором значения, после нажатия кнопки "Ок" выбранный вариант должен попасть в табличную часть нашего документа. Форму я сделал в обработке. По кнопке она у меня вызывается ( ОткрытьФормуМодально("Обработка.ВыборДоставки", Контекст) ), а дальше после выбора значения я не могу перенести значение в сам документ. Как это можно сделать?
  2. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    Смотрите Форма.Параметр
  3. rshakiro
    Offline

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

    Регистрация:
    17 мар 2011
    Сообщения:
    2.236
    Симпатии:
    144
    Баллы:
    104
    А Вы уверены, что пошли верным "путем"?? Для чего создавать обработку, если требуется заполнить 1 значение... Ну да ладно, думаю Вам в помощь СписокЗначений
  4. TopicStarter Overlay
    Евгений1986
    Offline

    Евгений1986

    Регистрация:
    4 дек 2012
    Сообщения:
    31
    Симпатии:
    0
    Баллы:
    1
    Каким образом ещё можно это реализовать? можно как нибудь динамически создать форму со значениями для того чтобы пользователь выбрал нужное , а потом взять его в документ?
  5. rshakiro
    Offline

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

    Регистрация:
    17 мар 2011
    Сообщения:
    2.236
    Симпатии:
    144
    Баллы:
    104
    Какой реквизит документа Вы хотите заполнить обработкой? Укажите тип реквизита!!
  6. TopicStarter Overlay
    Евгений1986
    Offline

    Евгений1986

    Регистрация:
    4 дек 2012
    Сообщения:
    31
    Симпатии:
    0
    Баллы:
    1
    Т.е есть табличная часть в документе. Нужно автоматически по кнопке заполнить одну строку в таблице (услуга по доставке), но для этого программа должна предложить пользователю 3 варианта выбора этой услуги. И в зависимости от того, что он выбирет, это должно попасть в строку табличной части. Может это глупо, но обработку я использую лишь для того чтобы создать форму с выбором вариантов.
  7. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    я так понимаю значение одно. Или в разных строках м.б. разное?
  8. TopicStarter Overlay
    Евгений1986
    Offline

    Евгений1986

    Регистрация:
    4 дек 2012
    Сообщения:
    31
    Симпатии:
    0
    Баллы:
    1
    Для каждого документа может быть только одно значение выбрано
  9. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    в данном случае это должен быть реквизит шапки, а не реквизит ТЧ.
    Вот и вызывайте нужную процедуру. Если реквизит не заполнен - можно проверить в процедуре ПриРедактированииНовойСтроки()
    ... и не нужно ничего вызывать модально
  10. TopicStarter Overlay
    Евгений1986
    Offline

    Евгений1986

    Регистрация:
    4 дек 2012
    Сообщения:
    31
    Симпатии:
    0
    Баллы:
    1
    Тип реквизита "Справочник Номенклатура". Т.е после того как пользователь выбирет нужное значение , его я сначала заведу в справочник номенклатура (это я знаю как сделать), а затем помещу в табличную часть. Задача в том, как после заведения в справочник (это я делаю в вызываемой форме), добавить этот элемент в ТЧ документа.

    Нет, это не должен быть реквизит шапки, так как помимо этой автоматически добавляемой строки, в ТЧ будут строки добавляемые вручную.
  11. TopicStarter Overlay
    Евгений1986
    Offline

    Евгений1986

    Регистрация:
    4 дек 2012
    Сообщения:
    31
    Симпатии:
    0
    Баллы:
    1
    Подскажите , плиз, как из вызываемой формы передать значение в вызывающую и затем закрыть вызываемую.?
  12. rshakiro
    Offline

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

    Регистрация:
    17 мар 2011
    Сообщения:
    2.236
    Симпатии:
    144
    Баллы:
    104
    Не понимаю для чего Вам подключать обработку... Если Вы вручную добавляете строку, открывается спр.Номенклатуры, там возможно добавление нового элемента, и выбор только что созданного элемента... Или я Вас не правильно понимаю?? Что у Вас обработка делает? Чем отличается от ручного ввода строки??
  13. TopicStarter Overlay
    Евгений1986
    Offline

    Евгений1986

    Регистрация:
    4 дек 2012
    Сообщения:
    31
    Симпатии:
    0
    Баллы:
    1
    В обработке у меня вываливается список выбора услуг (их всего 3), затем обработка заводит этот элемент в справочник+ передаваемые значения из документа (это я сделал) (много однообразной ручной работы, чтобы завести услугу в справочник, нужно соединять данные из документа). Вручную пользователи вводят товары. Затем считается полный комплекс (услуга + товары). Осталось всего лишь передать заведённый обработкой элемент справочника в основную форму.. Но не знаю как..
  14. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    все равно что-то мутновато, зачем повторять услугу в каждой строке, если она одна и та же... Ну да ладно.

    есть 2 способа

    Первый
    Код:
    //в документе
    Процедура ОткрытьОбработку()
    ОткрытьФормуМодально("Обработка.ВашаОбработка", Контекст);
    //в этом случае к ТЧ документа можно ображаться внутри самой обработки
    //делайте что ходите. Удадяйте, изменяйте...
    //НЕПРИМЕННОЕ УСЛОВИЕ - модальность вызова
    КонецПроцедуры
    
    //в обработке
    Перем Докум;
    ...
    Процедура ПриОткрытии()
    Докум=Форма.Параметр;
    //все... хапнули. делаем что хотим  
    Сообщить(" А номер документа я знаю! "+Докум.НомерДок);
    КонецПроцедуры
    
    Второй
    Код:
    Процедура ОткрытьОбработку()
    парам="";
    ОткрытьФормуМодально("Обработка.ВашаОбработка", Парам);
    //получили переданное значение.... к примеру
    Если Парам=1 Тогда
    Сообщить("УРА!");
    КонецЕсли;
    КонецПроцедуры
    
    
    //в обработке
    Процедура ПриЗакрытии()
    Форма.Параметр=НужныйНамПараметр;
    //если хотите передать не одно а несколько значений - используйте объект СписокЗначений
    КонецПроцедуры
    
    Ну и третий.... Когда обработка вызывается не модально. Описывать здесь не буду, т.к. это отдельная тема и с вашим багажом знаний пока не актуальна. (извините если обидел)
  15. TopicStarter Overlay
    Евгений1986
    Offline

    Евгений1986

    Регистрация:
    4 дек 2012
    Сообщения:
    31
    Симпатии:
    0
    Баллы:
    1
    Добрый день!

    Огромнейшее спасибо Вам!!! Просто до этого с вызовом форм и обменом между ними информацией не сталкивался, как то обходил добавляя всё в документ. А вот поставили такую задачу.
    Проблема решена.
  16. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104

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