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

Как Программо Скрыть Колонку в Дереве Значения!!!!

Автор claberRZN, 12 ноя 2015, 14:55

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

claberRZN

Люди а как программно скрыть колонку Ссылка !!! Вот кусок запроса



Дерево = Новый ДеревоЗначений;
      
      Дерево.Колонки.Добавить("Дата",,"Дата");
      Дерево.Колонки.Добавить("Номер",,"Номер");
      Дерево.Колонки.Добавить("СуммаДокумента",,"СуммаДокумента");
      Дерево.Колонки.Добавить("Организация",,"Организация");
      Дерево.Колонки.Добавить("Контрагент",,"Контрагент");
      Дерево.Колонки.Добавить("Ссылка",,"Ссылка");
      
      
      
      
      ЗапросВозвратПоступление  = Новый Запрос;
      ЗапросВозвратПоступление.УстановитьПараметр("НачалоПериода",НачалоПериода);
      ЗапросВозвратПоступление.УстановитьПараметр("КонецПериода",КонецДня(КонецПериода));
      ЗапросВозвратПоступление.УстановитьПараметр("Организация",Организации );
      ЗапросВозвратПоступление.УстановитьПараметр("Контрагент", Контрагент);
      ЗапросВозвратПоступление.Текст = ("ВЫБРАТЬ
      |   ПоступлениеТоваровУслугТовары.Ссылка КАК ДокументПоступления
      |ПОМЕСТИТЬ ВТДокументыПоступления
      |ИЗ
      |   Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары
      |ГДЕ
      |   ПоступлениеТоваровУслугТовары.Ссылка.Дата МЕЖДУ &НачалоПериода И &КонецПериода
      |   И ПоступлениеТоваровУслугТовары.Ссылка.Проведен = ИСТИНА
      |   И (&Организация = Значение(Справочник.Организации.ПустаяСсылка) или  ПоступлениеТоваровУслугТовары.Ссылка.Организация = &Организация)      
      |   И (&Контрагент = ЗНАЧЕНИЕ(Справочник.Контрагенты.пустаяСсылка)
      |         ИЛИ ПоступлениеТоваровУслугТовары.Ссылка.Контрагент = &Контрагент)
      |
      |СГРУППИРОВАТЬ ПО
      |   ПоступлениеТоваровУслугТовары.Ссылка
      |;
      |
      |////////////////////////////////////////////////////////////////////////////////
      |ВЫБРАТЬ РАЗЛИЧНЫЕ
      |   ВозвратТоваровПоставщикуТовары.Ссылка КАК ДокументВозврата,
      |   ВозвратТоваровПоставщикуТовары.ДокументПоступления
      |ПОМЕСТИТЬ ВТДокументыВозврата
      |ИЗ
      |   Документ.ВозвратТоваровПоставщику.Товары КАК ВозвратТоваровПоставщикуТовары
      |ГДЕ
      |   ВозвратТоваровПоставщикуТовары.Ссылка.Дата >= &НачалоПериода
      |   И ВозвратТоваровПоставщикуТовары.Ссылка.Проведен = ИСТИНА
      |   И (&Организация = Значение(Справочник.Организации.ПустаяСсылка) или  ВозвратТоваровПоставщикуТовары.Ссылка.Организация = &Организация)
      |    И &Контрагент = ЗНАЧЕНИЕ(Справочник.Контрагенты.пустаяСсылка) ИЛИ ВозвратТоваровПоставщикуТовары.Ссылка.Контрагент = &Контрагент
      
      |;
      |
      |////////////////////////////////////////////////////////////////////////////////
      |ВЫБРАТЬ
      |   ВТДокументыПоступления.ДокументПоступления КАК ДокументПоступления,
      |   ВТДокументыПоступления.ДокументПоступления.Дата КАК ДокументПоступленияДата,
      |   ВТДокументыПоступления.ДокументПоступления.Номер КАК ДокументПоступленияНомер,
      |   ВТДокументыПоступления.ДокументПоступления.СуммаДокумента КАК ДокументПоступленияСуммаДокумента,
      |   ВТДокументыПоступления.ДокументПоступления.Организация КАК ДокументПоступленияОрганизация,
      |   ВТДокументыПоступления.ДокументПоступления.Контрагент КАК ДокументПоступленияКонтрагент,
      |   ВТДокументыВозврата.ДокументВозврата,
      |   ВТДокументыВозврата.ДокументВозврата.Дата КАК ДокументВозвратаДата,
      |   ВТДокументыВозврата.ДокументВозврата.Номер КАК ДокументВозвратаНомер,
      |   ВТДокументыВозврата.ДокументВозврата.СуммаДокумента КАК ДокументВозвратаСуммаДокумента,
      |   ВТДокументыВозврата.ДокументВозврата.Организация КАК ДокументВозвратаОрганизация,
      |   ВТДокументыВозврата.ДокументВозврата.Контрагент КАК ДокументВозвратаКонтрагент
      |ИЗ
      |   ВТДокументыПоступления КАК ВТДокументыПоступления
      |      ЛЕВОЕ СОЕДИНЕНИЕ ВТДокументыВозврата КАК ВТДокументыВозврата
      |      ПО ВТДокументыПоступления.ДокументПоступления = ВТДокументыВозврата.ДокументПоступления
      |
      |УПОРЯДОЧИТЬ ПО
      |   ДокументПоступленияДата,
      |   ДокументВозвратаДата
      |ИТОГИ ПО
      |   ДокументПоступления");
      
      Результат = ЗапросВозвратПоступление.Выполнить();
      
      РезультатЗапроса = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
      
      
      Пока РезультатЗапроса.Следующий() Цикл
         НоваяСтрокаУровеньПоступление                = Дерево.Строки.Добавить();
         
         НоваяСтрокаУровеньПоступление.Дата             = РезультатЗапроса.ДокументПоступленияДата;
         НоваяСтрокаУровеньПоступление.Номер            = РезультатЗапроса.ДокументПоступленияНомер;
         НоваяСтрокаУровеньПоступление.СуммаДокумента   = РезультатЗапроса.ДокументПоступленияСуммаДокумента;
         НоваяСтрокаУровеньПоступление.Организация      = РезультатЗапроса.ДокументПоступленияОрганизация;
         НоваяСтрокаУровеньПоступление.Контрагент      = РезультатЗапроса.ДокументПоступленияКонтрагент;
         НоваяСтрокаУровеньПоступление.Ссылка          = РезультатЗапроса.ДокументПоступления;
         ВыборкаДокументыВозврат = РезультатЗапроса.Выбрать();
         Пока ВыборкаДокументыВозврат.Следующий() Цикл
            
            Если Не ЗначениеЗаполнено(ВыборкаДокументыВозврат.ДокументВозврата) Тогда
               Продолжить;
            КонецЕсли;
            
            
            НоваяСтрокаУровеньВозврат                = НоваяСтрокаУровеньПоступление.Строки.Добавить();
            НоваяСтрокаУровеньВозврат.Ссылка          = ВыборкаДокументыВозврат.ДокументВозврата;
            НоваяСтрокаУровеньВозврат.Дата             = ВыборкаДокументыВозврат.ДокументВозвратаДата;
            НоваяСтрокаУровеньВозврат.Номер            = ВыборкаДокументыВозврат.ДокументВозвратаНомер;
            НоваяСтрокаУровеньВозврат.СуммаДокумента   = ВыборкаДокументыВозврат.ДокументВозвратаСуммаДокумента;
            НоваяСтрокаУровеньВозврат.Организация      = ВыборкаДокументыВозврат.ДокументВозвратаОрганизация;
            НоваяСтрокаУровеньВозврат.Контрагент      = ВыборкаДокументыВозврат.ДокументВозвратаКонтрагент;
            
         КонецЦикла;     
      КонецЦикла; 
      ЭлементыФормы.Дерево.СоздатьКолонки();
      ЭлементыФормы.Дерево.ГоризонтальныеЛинии = Истина;ЭлементыФормы.Дерево.ВертикальныеЛинии = Истина;
      ОбойтиУровеньДерева(Дерево.Строки);   
   КонецЕсли;
   

Gunner

Может просто не добавлять колонку "Ссылка" в ДЗ?<_<

claberRZN

ну я так и сделал, а вот как кодом это сделать не вышло !!! просто для общего интереса нужно

vitasw


claberRZN

Видимость не работает так как у меня 3 запроса и дерево создает ссылку, я удалил из запроса Ссылку но теперь мне сказали что бы при 2м щелчке на ТЗ открывался документ !!! и при этом ссылка на ТЗ не нужна , вот ее надо скрыть кодом. Идей Нету =(

Vladimir_Sh

claberRZN, да хоть 100500 запросов. Почему не работает? Уберите видимость колонки на форме.
Если я Вам помог, нажми - Спасибо!

vitasw

Чет я совсем начинаю терять нить повествования
Цитата: claberRZN от 12 ноя 2015, 16:58Видимость не работает так как у меня 3 запроса
Эээ, а причем тут количество запросов к видимости колонки элемента формы?
Цитата: claberRZN от 12 ноя 2015, 16:58при 2м щелчке на ТЗ открывался документ
Откуда вдруг взялась ТЗ, если всю дорогу речь шла о ДЗ?

claberRZN

Вот запрос целиком, убираю видимость все равно она отображается !!!

Процедура КнопкаВыполнитьНажатие(Кнопка)
   ЭФ=ЭлементыФормы;
   Если Переключатель1=0
      Тогда
      
      Дерево = Новый ДеревоЗначений;
      ЗапросПоступление = Новый Запрос;
      ЗапросПоступление.УстановитьПараметр("НачалоПериода",НачалоПериода);
      ЗапросПоступление.УстановитьПараметр("КонецПериода",КонецДня(КонецПериода));
      ЗапросПоступление.УстановитьПараметр("Организация",Организации );
      ЗапросПоступление.УстановитьПараметр("Контрагент",Контрагент);
      ЗапросПоступление.Текст = ("ВЫБРАТЬ РАЗЛИЧНЫЕ
      |   ПоступлениеТоваровУслугТовары.Ссылка.Дата КАК Дата,
      |   ПоступлениеТоваровУслугТовары.Ссылка.Номер,
      |   ПоступлениеТоваровУслугТовары.Ссылка.СуммаДокумента,
      |   ПоступлениеТоваровУслугТовары.Ссылка.Контрагент,
      |   ПоступлениеТоваровУслугТовары.Ссылка.Организация
      |ИЗ
      |   Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары
      |ГДЕ
      |   ПоступлениеТоваровУслугТовары.Ссылка.Дата МЕЖДУ &НачалоПериода И &КонецПериода
      |   И ПоступлениеТоваровУслугТовары.Ссылка.Проведен = ИСТИНА
      |   И (&Организация = ЗНАЧЕНИЕ(Справочник.Организации.ПустаяСсылка)
      |         ИЛИ ПоступлениеТоваровУслугТовары.Ссылка.Организация = &Организация)
      |   И (&Контрагент = ЗНАЧЕНИЕ(Справочник.Контрагенты.пустаяСсылка)
      |         ИЛИ ПоступлениеТоваровУслугТовары.Ссылка.Контрагент = &Контрагент)
      |
      |УПОРЯДОЧИТЬ ПО
      |   Дата"
      );
      
      
      Дерево = ЗапросПоступление.Выполнить().Выгрузить(ОбходРезультатаЗапроса.ПоГруппировкамСИерархией);
      ЭлементыФормы.Дерево.ГоризонтальныеЛинии = Истина;ЭлементыФормы.Дерево.ВертикальныеЛинии = Истина;
      
      
      
   ИначеЕсли Переключатель1=1 Тогда
      
      
      
      
      
      
      
      ЗапросВозврат  = Новый Запрос;
      
      ЗапросВозврат.УстановитьПараметр("НачалоПериода",НачалоПериода);
      ЗапросВозврат.УстановитьПараметр("Организация",Организации );
      ЗапросВозврат.УстановитьПараметр("Контрагент", Контрагент);
      ЗапросВозврат.Текст = ("ВЫБРАТЬ РАЗЛИЧНЫЕ
      |   ВозвратТоваровПоставщикуТовары.Ссылка.Номер,
      |   ВозвратТоваровПоставщикуТовары.Ссылка.Дата КАК Дата,
      |   ВозвратТоваровПоставщикуТовары.Ссылка.СуммаДокумента,
      |   ВозвратТоваровПоставщикуТовары.Ссылка.Организация,
      |   ВозвратТоваровПоставщикуТовары.Ссылка.Контрагент
      |ИЗ
      |   Документ.ВозвратТоваровПоставщику.Товары КАК ВозвратТоваровПоставщикуТовары
      |ГДЕ
      |   ВозвратТоваровПоставщикуТовары.ДокументПоступления ССЫЛКА Документ.ПоступлениеТоваровУслуг
      |   И ВозвратТоваровПоставщикуТовары.Ссылка.Дата >= &НачалоПериода
      |   И ВозвратТоваровПоставщикуТовары.Ссылка.Проведен = ИСТИНА
      |   И (&Организация = ЗНАЧЕНИЕ(Справочник.Организации.ПустаяСсылка)
      |         ИЛИ ВозвратТоваровПоставщикуТовары.Ссылка.Организация = &Организация)
      |   И (&Контрагент = ЗНАЧЕНИЕ(Справочник.Контрагенты.пустаяСсылка)
      |         ИЛИ ВозвратТоваровПоставщикуТовары.Ссылка.Контрагент = &Контрагент)
      |
      |УПОРЯДОЧИТЬ ПО
      |   Дата");
      
      
      
      
      Дерево = ЗапросВозврат.Выполнить().Выгрузить(ОбходРезультатаЗапроса.ПоГруппировкамСИерархией);
      ЭлементыФормы.Дерево.ГоризонтальныеЛинии = Истина;ЭлементыФормы.Дерево.ВертикальныеЛинии = Истина;
      
   ИначеЕсли Переключатель1=2 Тогда
      
      
      
      Дерево = Новый ДеревоЗначений;
      
      Дерево.Колонки.Добавить("Дата",,"Дата");
      Дерево.Колонки.Добавить("Номер",,"Номер");
      Дерево.Колонки.Добавить("СуммаДокумента",,"СуммаДокумента");
      Дерево.Колонки.Добавить("Организация",,"Организация");
      Дерево.Колонки.Добавить("Контрагент",,"Контрагент");
      //Дерево.Колонки.Добавить("Ссылка",,"Ссылка");
      
      
      
      
      ЗапросВозвратПоступление  = Новый Запрос;
      ЗапросВозвратПоступление.УстановитьПараметр("НачалоПериода",НачалоПериода);
      ЗапросВозвратПоступление.УстановитьПараметр("КонецПериода",КонецДня(КонецПериода));
      ЗапросВозвратПоступление.УстановитьПараметр("Организация",Организации );
      ЗапросВозвратПоступление.УстановитьПараметр("Контрагент", Контрагент);
      ЗапросВозвратПоступление.Текст = ("ВЫБРАТЬ РАЗЛИЧНЫЕ
      |   ПоступлениеТоваровУслугТовары.Ссылка КАК ДокументПоступления
      |ПОМЕСТИТЬ ВТДокументыПоступления
      |ИЗ
      |   Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары
      |ГДЕ
      |   ПоступлениеТоваровУслугТовары.Ссылка.Дата МЕЖДУ &НачалоПериода И &КонецПериода
      |   И ПоступлениеТоваровУслугТовары.Ссылка.Проведен = ИСТИНА
      |   И (&Организация = ЗНАЧЕНИЕ(Справочник.Организации.ПустаяСсылка)
      |         ИЛИ ПоступлениеТоваровУслугТовары.Ссылка.Организация = &Организация)
      |   И (&Контрагент = ЗНАЧЕНИЕ(Справочник.Контрагенты.пустаяСсылка)
      |         ИЛИ ПоступлениеТоваровУслугТовары.Ссылка.Контрагент = &Контрагент)
      |
      |СГРУППИРОВАТЬ ПО
      |   ПоступлениеТоваровУслугТовары.Ссылка
      |;
      |
      |////////////////////////////////////////////////////////////////////////////////
      |ВЫБРАТЬ РАЗЛИЧНЫЕ
      |   ВозвратТоваровПоставщикуТовары.Ссылка КАК ДокументВозврата,
      |   ВозвратТоваровПоставщикуТовары.ДокументПоступления
      |ПОМЕСТИТЬ ВТДокументыВозврата
      |ИЗ
      |   Документ.ВозвратТоваровПоставщику.Товары КАК ВозвратТоваровПоставщикуТовары
      |ГДЕ
      |   ВозвратТоваровПоставщикуТовары.Ссылка.Дата >= &НачалоПериода
      |   И ВозвратТоваровПоставщикуТовары.Ссылка.Проведен = ИСТИНА
      |   И (&Организация = ЗНАЧЕНИЕ(Справочник.Организации.ПустаяСсылка)
      |         ИЛИ ВозвратТоваровПоставщикуТовары.Ссылка.Организация = &Организация)
      |   И (&Контрагент = ЗНАЧЕНИЕ(Справочник.Контрагенты.пустаяСсылка)
      |         ИЛИ ВозвратТоваровПоставщикуТовары.Ссылка.Контрагент = &Контрагент)
      |;
      |
      |////////////////////////////////////////////////////////////////////////////////
      |ВЫБРАТЬ
      |   ВТДокументыПоступления.ДокументПоступления КАК ДокументПоступления,
      |   ВТДокументыПоступления.ДокументПоступления.Дата КАК ДокументПоступленияДата,
      |   ВТДокументыПоступления.ДокументПоступления.Номер КАК ДокументПоступленияНомер,
      |   ВТДокументыПоступления.ДокументПоступления.СуммаДокумента КАК ДокументПоступленияСуммаДокумента,
      |   ВТДокументыПоступления.ДокументПоступления.Организация КАК ДокументПоступленияОрганизация,
      |   ВТДокументыПоступления.ДокументПоступления.Контрагент КАК ДокументПоступленияКонтрагент,
      |   ВТДокументыВозврата.ДокументВозврата,
      |   ВТДокументыВозврата.ДокументВозврата.Дата КАК ДокументВозвратаДата,
      |   ВТДокументыВозврата.ДокументВозврата.Номер КАК ДокументВозвратаНомер,
      |   ВТДокументыВозврата.ДокументВозврата.СуммаДокумента КАК ДокументВозвратаСуммаДокумента,
      |   ВТДокументыВозврата.ДокументВозврата.Организация КАК ДокументВозвратаОрганизация,
      |   ВТДокументыВозврата.ДокументВозврата.Контрагент КАК ДокументВозвратаКонтрагент
      |ИЗ
      |   ВТДокументыПоступления КАК ВТДокументыПоступления
      |      ЛЕВОЕ СОЕДИНЕНИЕ ВТДокументыВозврата КАК ВТДокументыВозврата
      |      ПО ВТДокументыПоступления.ДокументПоступления = ВТДокументыВозврата.ДокументПоступления
      |
      |УПОРЯДОЧИТЬ ПО
      |   ДокументПоступленияДата,
      |   ДокументВозвратаДата
      |ИТОГИ ПО
      |   ДокументПоступления");
      
      Результат = ЗапросВозвратПоступление.Выполнить();
      
      РезультатЗапроса = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
      
      
      Пока РезультатЗапроса.Следующий() Цикл
         НоваяСтрокаУровеньПоступление                = Дерево.Строки.Добавить();
         
         НоваяСтрокаУровеньПоступление.Дата             = РезультатЗапроса.ДокументПоступленияДата;
         НоваяСтрокаУровеньПоступление.Номер            = РезультатЗапроса.ДокументПоступленияНомер;
         НоваяСтрокаУровеньПоступление.СуммаДокумента   = РезультатЗапроса.ДокументПоступленияСуммаДокумента;
         НоваяСтрокаУровеньПоступление.Организация      = РезультатЗапроса.ДокументПоступленияОрганизация;
         НоваяСтрокаУровеньПоступление.Контрагент      = РезультатЗапроса.ДокументПоступленияКонтрагент;
         НоваяСтрокаУровеньПоступление.Ссылка          = РезультатЗапроса.ДокументПоступления;
         ВыборкаДокументыВозврат = РезультатЗапроса.Выбрать();
         Пока ВыборкаДокументыВозврат.Следующий() Цикл
            
            Если Не ЗначениеЗаполнено(ВыборкаДокументыВозврат.ДокументВозврата) Тогда
               Продолжить;
            КонецЕсли;
            
            
            НоваяСтрокаУровеньВозврат                = НоваяСтрокаУровеньПоступление.Строки.Добавить();
            НоваяСтрокаУровеньВозврат.Ссылка          = ВыборкаДокументыВозврат.ДокументВозврата;
            НоваяСтрокаУровеньВозврат.Дата             = ВыборкаДокументыВозврат.ДокументВозвратаДата;
            НоваяСтрокаУровеньВозврат.Номер            = ВыборкаДокументыВозврат.ДокументВозвратаНомер;
            НоваяСтрокаУровеньВозврат.СуммаДокумента   = ВыборкаДокументыВозврат.ДокументВозвратаСуммаДокумента;
            НоваяСтрокаУровеньВозврат.Организация      = ВыборкаДокументыВозврат.ДокументВозвратаОрганизация;
            НоваяСтрокаУровеньВозврат.Контрагент      = ВыборкаДокументыВозврат.ДокументВозвратаКонтрагент;
            
         КонецЦикла;     
      КонецЦикла; 
      
      ЭлементыФормы.Дерево.СоздатьКолонки();
      ЭлементыФормы.Дерево.ГоризонтальныеЛинии = Истина;ЭлементыФормы.Дерево.ВертикальныеЛинии = Истина;
      ОбойтиУровеньДерева(Дерево.Строки);   
   КонецЕсли;
   
   
КонецПроцедуры

Процедура ДеревоВыбор(Элемент, ВыбраннаяСтрока, Колонка, СтандартнаяОбработка)
   СтандартнаяОбработка = Ложь;
   
   
КонецПроцедуры

Процедура ОбойтиУровеньДерева(Строки);
   Для каждого Строка из Строки Цикл
      ОбойтиУровеньДерева(Строка.Строки);
   КонецЦикла;
КонецПроцедуры

vitasw

Цитата: claberRZN от 12 ноя 2015, 17:54убираю видимость все равно она отображается !!!
Стисняюсь спросить, где?! в какой строке кода вы управляете видимостью колонки дерева?

claberRZN

Цитата: vitasw от 12 ноя 2015, 17:59
Цитата: claberRZN от 12 ноя 2015, 17:54убираю видимость все равно она отображается !!!
Стисняюсь спросить, где?! в какой строке кода вы управляете видимостью колонки дерева?

А ну вот так я и не знаю чего пописать что бы скрыть и куда прописать , я думал что достаточно сделать на Форме "Убрать галку видимости"

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

Рейтинг@Mail.ru

Поиск