Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
14 дек 2024, 15:35

выбор значений по текстовому совпадению в отчет

Автор colanah, 23 фев 2012, 00:03

0 Пользователей и 1 гость просматривают эту тему.

colanah

Здравствуйте.

Возник вопрос у начинающего 1с'ника)

Есть Журнал Приходные Накладные, где собственно эти самые накладные создаются.
Есть Журнал Документов, где выводится список приходных накладных в таблице.
Хочу сделать Отчет, что бы он выводил мне только те накладные, у которых колонка поставщик содержит тестовое поле "магазин".

То есть если название поставщика ООО Вася, то не надо выводить, а если Магазин "Лента", то надо.

Так вот вопрос, каким образом осуществляется доступ к тому месту, где храняться эти самые постащики, это же не реквизит, а какая то временная таблица уже созданная и соответсвенно мы собираемся ее еще раз отсортировать по заданному параметру для отчета.

Процедура ОтчетПоМагазинам() 
   ном_закл = Форма.Закладки.ТекущаяСтрока();   
   Таб = СоздатьОбъект("Таблица");
   Таб.ИсходнаяТаблица("ОтчетПоМагазинам");     
   прих = СоздатьОбъект("Документ.ПриходнаяНакладная");   
   прих.ВыбратьДокументы(ДатаНач, ДатаКон); 
   пн = 0;
   Пока прих.ПолучитьДокумент() = 1 Цикл  // прих
                                   

      пн = пн + 1;
      
      Если пн = 1 Тогда
         Таб.ВывестиСекцию("Шапка");   
      КонецЕсли;           
                                   
      
      Сообщить(прих.Клиент);
   
      Если прих.Клиент = "Магазин" Тогда
      Таб.ВывестиСекцию("ПрихДок");   
      КонецЕсли;
      
   КонецЦикла;     // прих     
   Таб.ТолькоПросмотр(1); 
   Таб.ПовторятьПриПечатиСтроки(4,4);
   Таб.Опции(0, 0, 4, 0, "ОтчетПоМагазинам");
   Таб.Показать("ОтчетПоМагазинам","");     
   Таб.ПараметрыСтраницы(2,100, , 10, 0, 0, 0, 5, 5,  1);   
   
КонецПроцедуры   

Вот данный код выводит мне одно название магазина во всех колонках, а надо, что бы были соответствующие приходным накладным.

В таблице вывожу Выражение прих.Клиент.

Я так понимаю нужен какой то перебор еще добавить?

sergejK74

Процедура ОтчетПоМагазинам()
   ном_закл = Форма.Закладки.ТекущаяСтрока();   
   Таб = СоздатьОбъект("Таблица");
   Таб.ИсходнаяТаблица("ОтчетПоМагазинам");     
   прих = СоздатьОбъект("Документ.ПриходнаяНакладная");   
   прих.ВыбратьДокументы(ДатаНач, ДатаКон);
   пн = 0;
   Пока прих.ПолучитьДокумент() = 1 Цикл  // прих
                                   

      пн = пн + 1;
     
      Если пн = 1 Тогда
         Таб.ВывестиСекцию("Шапка");   
      КонецЕсли;           
                                   
     
      Сообщить(прих.Клиент);
//Или так 
      Если Найти(ВРЕГ(прих.Клиент), "МАГАЗИН")=1 Тогда
// или так
// Если Лев(ВРЕГ(прих.Клиент),7 )="МАГАЗИН") Тогда
      Таб.ВывестиСекцию("ПрихДок");   
      КонецЕсли;
     
   КонецЦикла;     // прих     
   Таб.ТолькоПросмотр(1);
   Таб.ПовторятьПриПечатиСтроки(4,4);
   Таб.Опции(0, 0, 4, 0, "ОтчетПоМагазинам");
   Таб.Показать("ОтчетПоМагазинам","");     
   Таб.ПараметрыСтраницы(2,100, , 10, 0, 0, 0, 5, 5,  1);   
   
КонецПроцедуры 
Кнопочка Спасибо - слева!

colanah

Спасибо, работает, завтра буду разбираться почему работает)

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск