Подбор и таблицы значений

Тема в разделе "1C и всё что с ней связано", создана пользователем Dred, 18 окт 2008.

  1. Dred

    Dred Гость

    Всем Доброе время суток!!!
    Вообщем требуется, что бы при кликаньи на кнопочку на форме отчета, открывалась форма справочника товаров, на которой помимо таблицы со значениями справочника, есть пустая таблица значений. В эту пустую таблицу значений при клике на значение справочника должно заноситься название товара. Потом при клике на кнопку эти значения из ТЗ должны переноситься в список значений расположенный на форме отчета и закрываться форма справочника.

    Скажите пожалуйста как это сделать?
    В данный момент у меня значения добавляются сразу как и кликаю на какую то строку справочника в список значений, а вот как сделатть чтобы загружалось по кнопке не знаю...

    Процедуры отчета
    Код (Text):
    Процедура ОбработкаПодбора(ТабНом,ФормаТаблицы)
    Номенклатура.ДобавитьЗначение(ТабНом.Номенклатура);
    КонецПроцедуры   

    Процедура Добавить()
    ОткрытьПодбор("Справочник.Номенкулатура","ФормаТаблицы");
    КонецПроцедуры
    Справочник:
    Код (Text):
    Процедура ПриОткрытии()
    ТабНом.НоваяКолонка("Номенклатура");
    КонецПроцедуры

    Процедура ПриВыбореСтроки()  
    ТабНом.НоваяСтрока();
    ТабНом.Номенклатура=Наименование;
    КонецПроцедуры
     
  2. kaa

    kaa Гость

    Посмотрите типовую ТиС как реализован подбор в документы через кнопку Подбор
     
  3. Dred

    Dred Гость

    kaa
    да я в первую очередь посмотрел ))) но что то не особо вьхел, там как то все замудренно.

    Как я понимаю для того чтобы сделать что я хочу необходимо 3 процедуры и строчек 10 кода?
     
  4. NightWolf

    NightWolf Гость

    Попробуй так:
    Процедура ОбработкаКликаПоТЗ()
    Перем ПараметрыВыбора;

    Если ТабНом.ТекущаяСтрока()=0 Тогда
    Возврат;
    КонецЕсли;
    ПараметрыВыбора = ТабНом.Номенклатура;
    Форма.ВыполнитьВыбор(ПараметрыВыбора);

    КонецПроцедуры
     
  5. kaa

    kaa Гость

    ПоКнопкеПодбор()
    ОткрытьПодбор(Справочник.Номенклатура);//далее по справке
    КонецПроцедуры

    //нужна форма списка справочника с таблицей значений как в ТиС если есть используй ,нет создавай
    в ней в процедуре ПриВыбореСтроки() описываешь заполнение таблицы и при выходе из формысписка передаешь в параметр

    ОбработкаПодбора(Элем,КонтФормы)
    Если ТипЗначенияСтр(Элем) = "ТаблицаЗначений" Тогда
    Элем.ВыбратьСтроки();
    Пока Элем.ПолучитьСтроку()=1 Тогда
    //заполняем таблицу
    КонецЦикла;
    КонецЕсли;
     
  6. puh14

    puh14 Well-Known Member
    1C Team

    Регистрация:
    11 июл 2008
    Сообщения:
    1.412
    Симпатии:
    0
    А мона через открытии модально формы справочника , передавая в тз формы справочника текущюю ТЗ, там по кликам на строках добавлять в тз формы справочника новые строчки, а по закрытии формы - загружать изменную в справочнике ТЗ обратно.
     
  7. SeverBap

    SeverBap Well-Known Member

    Регистрация:
    18 сен 2007
    Сообщения:
    440
    Симпатии:
    0
    kaa
    реально написал, конечно я не знаю конфигурацию (как и мы все), но посмотрел комлексную в которой есть вот что в справочнике номенклатуры:
    Код (Text):
    // ВыполнитьЗапись()
    //
    // Параметры:
    // Нет
    //
    // Возвращаемое значение:
    // Нет
    //
    // Вызывается из формул элементов диалога:
    // Кнопка ОК
    //
    // Описание:
    //  Активизирует в документе процедуру ОбработкаПодбора и передает ей в качестве
    //  выбранного значения список значений. Параметр "ПоКнопкеПодбор" показывает,
    // что подбор был инициирован кнопкой подбор.
    //
    Процедура ВыполнитьЗапись()

    Перем ПараметрыВыбора;

    ПараметрыВыбора = СоздатьОбъект("СписокЗначений");
    ПараметрыВыбора.ДобавитьЗначение(ЕстьВидТМЦ    , "ЕстьВидТМЦ");
    ПараметрыВыбора.ДобавитьЗначение(ЦенаВподборе , "ЦенаВподборе");
    ПараметрыВыбора.ДобавитьЗначение(ТипЦен        , "ТипЦен");   
    ПараметрыВыбора.ДобавитьЗначение(ТаблицаПодбора, "ТаблицаПодбора");
    ПараметрыВыбора.ДобавитьЗначение(1            , "ПоКнопкеПодбор");
    Форма.ВыполнитьВыбор(ПараметрыВыбора);
    ТаблицаПодбора.УдалитьСтроки(); // иначе при выходе еще раз можем перенести

    КонецПроцедуры //ВыполнитьЗапись()
    нам интересно значит вот это:
    Код (Text):
    ПараметрыВыбора.ДобавитьЗначение(ТаблицаПодбора, "ТаблицаПодбора");
    В отчете значит нужно в процедуре обработка подбора проработать:
    Код (Text):
    Процедура ОбработкаПодбора(ВыбЗнач, КонтФормыПодбора)
    Если ТипЗначенияСтр(ВыбЗнач)="СписокЗначений" Тогда
    ТаблицаКотораяБылаЗаполненаПриПодборе=ВыбЗнач.Получить("ТаблицаПодбора");
    ТаблицаКотораяБылаЗаполненаПриПодборе.ВыбратьСтроки();
    Пока ТаблицаКотораяБылаЗаполненаПриПодборе.ПолучитьСтроку()=1 Цикл
    МойСписок.ДобавитьЗначение(ТаблицаКотораяБылаЗаполненаПриПодборе.Номенклатура);
    КонецЦикла;
    КонецПроцедуры // ОбработкаПодбора()
    Писал грубо, сам переделаешь под свое что тебе надо! ;)
     
  8. SeverBap

    SeverBap Well-Known Member

    Регистрация:
    18 сен 2007
    Сообщения:
    440
    Симпатии:
    0
    Dred хоть написал бы то это или нет!!!!
     
Загрузка...
Похожие Темы - Подбор таблицы значений
  1. KateBakly
    Ответов:
    14
    Просмотров:
    5.237
  2. SergaevOleg
    Ответов:
    2
    Просмотров:
    127
  3. olga13
    Ответов:
    9
    Просмотров:
    3.710
  4. olga13
    Ответов:
    3
    Просмотров:
    7.729
  5. AnaStas
    Ответов:
    0
    Просмотров:
    1.910

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