На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Правила раздела:

  • Перед тем, как задать вопрос, желательно почитать документацию и воспользоваться поиском.
  • Когда задаёте вопрос, то обязательно указывайте платформу (7.7, 8.0, 8.1, 8.2, etc), причем желательно в заголовке. Если речь идёт о типовой конфигурации, то указывайте её название и релиз. Текущие версии можно посмотреть здесь.
  • Ещё раз напоминаем о необходимости соблюдать не только правила, но и законы. Уважайте авторские права.

Высказать своё мнение о модераторах раздела можно здесь: evGenius
  
> Три группировки и глюк , с запросом
    Создаю запрос

    ExpandedWrap disabled
       
      Запрос=СоздатьОбъект("Запрос");
      Текст="
      |Орган=Справочник.Организации2.ТекущийЭлемент;
      |Имя=Справочник.Организации2.Наименование;
      |Тел=Справочник.Организации2.Тел;
      |Кон=Справочник.Организации2.КонтактныеЛица;
      |Код=Справочник.Организации2.Код;
      |Группировка Имя;
      |Группировка Тел;
      |Группировка Кон;
      |";                    
          
      Запрос.Выполнить(Текст);
      Кодд=1;
      Таб = СоздатьОбъект("Таблица");
      Таб.ИсходнаяТаблица("Таблица");
      Пока Запрос.Группировка("Имя")=1 Цикл
      Пока Запрос.Группировка("Тел")=1 Цикл
      Пока Запрос.Группировка("Кон")=1 Цикл
      Таб.ВывестиСекцию("Колонки");
      КонецЦикла;
      КонецЦикла;
      КонецЦикла;




    На что 1С отвечает:

    Запрос.Выполнить(Текст);
    {Обработка.ГруппировкаОрганизаций.Форма.Модуль(16)}: Длина индекса превышает максимальную длину и не может быть уменьшена.

    Причем когда 2 группировки, то все ок, а с тремя не хочет :-(

    Плииииз
      Попробуй через Мастер запросов
        Во первых, как я понял здесь можешь обойтись и без запроса:
        Спр = СоздатьОбъект("правочник.Организации2");
        Спр.ВыбратьЭлементы();
        Пока Спр.ПолучитьЭлемент() = 1 Цикл
        Имя=Спр.Наименование;
        Тел=Спр.Тел;
        Кон=Спр.КонтактныеЛица;
        Таб.ВывестиСекцию("Колонки");
        КонецЦикла;

        А во вторых какой релиз у тебя 1с-ки? Пробывал на других?
          Цитата Sphinx2001 @ 28.08.04, 04:35
          Во первых, как я понял здесь можешь обойтись и без запроса:
          Спр = СоздатьОбъект("правочник.Организации2");
          Спр.ВыбратьЭлементы();
          Пока Спр.ПолучитьЭлемент() = 1 Цикл
          Имя=Спр.Наименование;
          Тел=Спр.Тел;
          Кон=Спр.КонтактныеЛица;
          Таб.ВывестиСекцию("Колонки");
          КонецЦикла;

          Без запроса не получится т.к. нужна группировка по трем полям.
          да и если просто перебором, то 80 000 записей многовато будет.

          проблему решил другим способом :-)
          //переносим справочник в таблицу значений и ...

          ТабЗнач.Свернуть("Наименование,Тел,Конт","");

          получилось и быстро и хорошо, а вот на запросы я теперь в обиде :ph34r: >:(
          0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
          0 пользователей:


          Рейтинг@Mail.ru
          [ Script execution time: 0,0207 ]   [ 15 queries used ]   [ Generated: 5.05.24, 05:33 GMT ]