7.7 установка фильтра для выбора движений по регистру

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

  1. TopicStarter Overlay
    Asd111
    Offline

    Asd111

    Регистрация:
    19 янв 2010
    Сообщения:
    5
    Симпатии:
    0
    Баллы:
    1
    Подскажите плиз как решить такую проблему:
    необходимо установить фильтр для выбора движений по регистру, а значение измерений взять из ранее сформированного списка значений (первое значение СЗ = Измерение1, второе значение СЗ = Измерение2).
  2. Бухгалтерский угодник
    Offline

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

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    Код:
    Рег.УстановитьЗначениеФильтра("Рекв1",Спис1,2);
    Рег.УстановитьЗначениеФильтра("Рекв2",Спис2,2);
    Рег.ВыбратьДвижения();
    Пока Рег.ПолучитьДвижения()=1 Цикл
    //...
    КонецЦикла;
    
    
  3. TopicStarter Overlay
    Asd111
    Offline

    Asd111

    Регистрация:
    19 янв 2010
    Сообщения:
    5
    Симпатии:
    0
    Баллы:
    1
    Посмотрите пожалуйста что у меня получилось
    Код:
    з1=Список.ПолучитьЗначение(1);	  	
    з2=Список.ПолучитьЗначение(2); 
    Если ВыбКонПериода<ПолучитьДатуТА() Тогда
    Рег.ВременныйРасчет(1); 
    Рег.УстановитьЗначениеФильтра("Контейнер",з1,2);   
    Рег.УстановитьЗначениеФильтра("Расх",з2,2);
    РассчитатьРегистрыНа(ВыбКонПериода);
    КонецЕсли;
    Рег.ВыбратьДвижения(ВыбНачПериода,ВыбКонПериода);
    Пока Рег.ПолучитьДвижение()=1 Цикл
    ....
    КонецЦикла   
    
    К сожалению, так и не фильтрует, точнее отфильтровывает все и в отчет не попадает ни одно движение.
  4. Itsys
    Offline

    Itsys Опытный в 1С

    Регистрация:
    3 янв 2010
    Сообщения:
    1.394
    Симпатии:
    0
    Баллы:
    26
    Зачем Вам для движения рассчитывать итоги? это только замедляет процесс.
    А Вы уверены, что движения с установленными фильтрами есть?
    УстановитьЗначениеФильтра никогда не пробовал на выборке движений, делал через запрос.
  5. TopicStarter Overlay
    Asd111
    Offline

    Asd111

    Регистрация:
    19 янв 2010
    Сообщения:
    5
    Симпатии:
    0
    Баллы:
    1
    Да, Вы конечно правы расчет итогов бесполезен.
    Движения с установленными фильтрами точно есть. Может просто фильтр задаю некорректно.
    Мне необходимо создать отчет-расшифровку из шахматки.
    А как сделать запрос с условиями, значения которых берутся из исходного отчета?
  6. Itsys
    Offline

    Itsys Опытный в 1С

    Регистрация:
    3 янв 2010
    Сообщения:
    1.394
    Симпатии:
    0
    Баллы:
    26
    Запрос делается как обычно... Смотря какую информацию надо из него получить
  7. TopicStarter Overlay
    Asd111
    Offline

    Asd111

    Регистрация:
    19 янв 2010
    Сообщения:
    5
    Симпатии:
    0
    Баллы:
    1
    А получить надо перечень документов, которые двинули регистр по конкретному Контейнеру (строка шахматки) и конкретному Расходу (колонка).
    Вероятно проблема в том, что значения колонки и строки я получаю как символьное представление, а не как элемент справочников и поэтому фильтр не работает.
    Не могу сообразить: как преобразовать строку в элемент справочника?
  8. Бухгалтерский угодник
    Offline

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

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    А как вы вообще получаете это строку - вот в этом месте и смотрите
  9. TopicStarter Overlay
    Asd111
    Offline

    Asd111

    Регистрация:
    19 янв 2010
    Сообщения:
    5
    Симпатии:
    0
    Баллы:
    1
    Всем большое спасибо за помощь:)
    А решилось все вот таким образом:
    Код:
     Ко.НайтиПоКоду(Список.ПолучитьЗначение(1)); 
    ра.НайтиПоКоду(Список.ПолучитьЗначение(2));
    Рег.УстановитьЗначениеФильтра("Контейнер",Ко.ТекущийЭлемент(),2);   
    Рег.УстановитьЗначениеФильтра("Расх",Ра.ТекущийЭлемент(),2);
    

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