К списку форумов К списку вопросов
Народ... Вопрос по v 8...
nia
21.09.2004 - 04:31
nia
21.09.2004 - 03:12 Если не трудно, можно рассмотреть такой вопрос:
Имеется объект (Справочник), в нем имеется реквизит "X" (строка)
Затем в запросе мне нужно указать что, нужно вывести только те записи
(Элементов), которые не попадают в условие(Ниже текст). Но при этом я
б не хотел чтоб выводились группы в которых не присутствует элемент
согласно условию.
      "ВЫБРАТЬ
      | Об.Ссылка КАК Ссылка,
      | Об.Представление,
      |ИЗ
      | Справочник.Об КАК Об
      |
      |ГДЕ
      | Об.X НЕ ПОДОБНО &Параметр
      |УПОРЯДОЧИТЬ ПО
      | Ссылка ИЕРАРХИЯ ";
В данном случае например, есть три записи:
Группа "Один"
           Запись "1"
Группа "Два"
           Запись "2"
Группа "Три"
           Запись "3"
Результат запроса будет (Если по условию я выбираю только "1")
Плучаем
//*********************************************//
Группа "Один"
           Запись "1"
Группа "Два"
Группа "Три"
//********************************************//
Хотелось бы
//*********************************************//
Группа "Один"
           Запись "1"
//********************************************//
То есть, мне б не хотелось, чтоб вывоились 2 и 3 группы.
--
Пудель
1 - 21.09.2004 - 04:37
А ежели итоги использовать?
nia
2 - 21.09.2004 - 04:41
Это справочник, нет итоговых полей
Пудель
3 - 21.09.2004 - 04:47
(2) Ты уверен в том, что сказал?
nia
4 - 21.09.2004 - 04:53
  "ВЫБРАТЬ
  | Об.Ссылка КАК Ссылка,
  | Об.Представление,
  | Об.ЭтоГруппа
  |ИЗ
  | Справочник.Об КАК Об
  |
  |ГДЕ
  | (Об.Просмотрен НЕ ПОДОБНО &Параметр) И (Об.ЭтоГруппа = ЛОЖЬ)
  |УПОРЯДОЧИТЬ ПО
  | Ссылка ИЕРАРХИЯ
  | ";
ИТОГИ по чем?
Пудель
5 - 21.09.2004 - 04:59
По твоей заднице, упрямец :).
nia
6 - 21.09.2004 - 05:09
Принимаю ... (пожертвую задницей)
Есть справочник "Об"
В справочнике есть реквизиты стандартные:
по чем группировать ... ?
   Если можно пример.........
Первый из могикан
7 - 21.09.2004 - 05:09
Задействуй счетчик
Пудель
8 - 21.09.2004 - 05:13
ВЫБРАТЬ
  Банки.Наименование
ИЗ
  Справочник.Банки КАК Банки
ИТОГИ ПО
  Банки.Ссылка ИЕРАРХИЯ
nia
9 - 21.09.2004 - 05:22
Не получилось. Выводятсь только группы :(((
Пудель
10 - 21.09.2004 - 05:27
Какой был текст запроса, что выводились только группы?
nia
11 - 21.09.2004 - 05:44
  "ВЫБРАТЬ
  | Об.Ссылка КАК Ссылка,
  | Об.Представление,
  | Об.ЭтоГруппа
  |ИЗ
  | Справочник.Об КАК Об
  |
  |ГДЕ
  | Об.Просмотрен НЕ ПОДОБНО &Параметр
  |ИТОГИ ПО
  | Ссылка ИЕРАРХИЯ
  | ";
Пудель
12 - 21.09.2004 - 05:51
А как выводил?
nia
13 - 21.09.2004 - 06:00
// ============================================================================
// Назначение:
//
// Аргументы:
//
Процедура ВыбратьРекурсивно(Выборка,ОбластьСсылка,ОбластьДетальныхЗаписей,ТабДок)
  Пока Выборка.Следующий() Цикл
    Если Выборка.ЭтоГруппа Тогда
      ОбластьСсылка.Параметры.Заполнить(Выборка);
      ТабДок.Вывести(ОбластьСсылка, Выборка.Уровень());
    Иначе
      ОбластьДетальныхЗаписей.Параметры.Заполнить(Выборка);
      ТабДок.Вывести(ОбластьДетальныхЗаписей, Выборка.Уровень());
    КонецЕсли;
    ВыбратьРекурсивно(Выборка.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкамСИерархией)
    ,ОбластьСсылка,ОбластьДетальныхЗаписей,ТабДок);
  КонецЦикла;
КонецПроцедуры // ВыбратьРекурсивно()
Процедура ДействияФормыНовыеОбъектыСформировать(Кнопка)
  ТабДок = ЭлементыФормы.ПолеТабличногоДокумента;
  НовыеОбъекты(ТабДок);
КонецПроцедуры
Процедура НовыеОбъекты(ТабДок) Экспорт
  Макет = ОбработкаОбъект.ПолучитьМакет("НовыеОбъекты");
  Запрос = Новый Запрос;
  Запрос.Текст =
  "ВЫБРАТЬ
  | Об.Ссылка КАК Ссылка,
  | Об.Представление,
  | Об.ЭтоГруппа
  |ИЗ
  | Справочник.Об КАК Об
  |
  |ГДЕ
  | (Об.Просмотрен НЕ ПОДОБНО &Параметр) И (Об.ЭтоГруппа = ЛОЖЬ)
  |ИТОГИ ПО
  | Ссылка ИЕРАРХИЯ
  | ";
  
  Запрос.УстановитьПараметр("Параметр","%"+ПолноеИмяПользователя()+"%");
  Результат = Запрос.Выполнить();
  
  ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок");
  ОбластьПодвал = Макет.ПолучитьОбласть("Подвал");
  ОбластьШапкаТаблицы = Макет.ПолучитьОбласть("ШапкаТаблицы");
  ОбластьПодвалТаблицы = Макет.ПолучитьОбласть("ПодвалТаблицы");
  ОбластьСсылка = Макет.ПолучитьОбласть("Ссылка");
  ОбластьДетальныхЗаписей = Макет.ПолучитьОбласть("Детали");
  ТабДок.Очистить();
  ТабДок.Вывести(ОбластьЗаголовок);
  ТабДок.Вывести(ОбластьШапкаТаблицы);
  ТабДок.НачатьАвтогруппировкуСтрок();
  ВыборкаДетали = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкамСИерархией);
    ВыбратьРекурсивно(ВыборкаДетали,ОбластьСсылка,ОбластьДетальныхЗаписей,ТабДок);
  ТабДок.ЗакончитьАвтогруппировкуСтрок();
  ТабДок.Вывести(ОбластьПодвалТаблицы);
  ТабДок.Вывести(ОбластьПодвал);
КонецПроцедуры
Процедура ПриОткрытии()
  ТабДок = ЭлементыФормы.ПолеТабличногоДокумента;
  НовыеОбъекты(ТабДок);
КонецПроцедуры
 
Пудель
14 - 21.09.2004 - 06:04
В отладчике смотрел, что представляет из себя ВыборкаДетали? Особенно если выгрузить? Или весь запрос... Мне что-то не верится, что правда только группы.
nia
15 - 21.09.2004 - 06:08
Смотрел, остался только вриант тот что я показал. При этом выводится все группы которые есть + группы (ВСЕ) + элементы (по условию)
Пудель
16 - 21.09.2004 - 06:12
Не понял ничего.
nia
17 - 21.09.2004 - 06:22
В случае, что я привел выше:
ПОДУЧАЕСЯ ТАК:
---ЕСТЬ ВСЕГО
            Товар 1 (Группа 1)
                    Т1,
            Товар 2 (Группа 1)
            Товар 3 (Группа 3)
-- КОНЕЦ ВСЕГО
УСЛОВИЕ (Хочу товар 1)
---ВЫБРАЛ
---ПОЛУЧАЮ:
---ЕСТЬ ВСЕГО
            Товар 1 (Группа 1)
                    Т1,
            Товар 2 (Группа 1) (ХОТЯ сдесь = 0)
            Товар 3 (Группа 3) И (ХОТЯ сдесь = 0)
-- КОНЕЦ ВСЕГО
nia
18 - 21.09.2004 - 06:27
я пошел спать. Аська - 156289702
Хотелось бы разобраься до конца - можно ли это или нет.
Спасибо тебе "Пудель", надеюсь что завтра увидимся (свяжемся).
nia
19 - 21.09.2004 - 12:01
up
nia
20 - 21.09.2004 - 12:23
up (ну кто то подскажет...)
nia
21 - 21.09.2004 - 12:45
Судя по всему - это невозможно, а жаль...
JulyRain
22 - 21.09.2004 - 12:56
Да не вопрос: добавляешь поле в запрос:
ВЫБОР КОГДА
 <УСЛОВИЕВыполнено> Тогда
       1
  ИНАЧЕ
       0
КОНЕЦ как элемент
...
..
...
ИТОГИ Элемент ИЕРАРХИЯ
ну в общем смысл такой
может и криво но работает

К списку вопросов на форуме 1C

>>