Запросы в 1С 8.1

Тема в разделе "1C и всё что с ней связано", создана пользователем arhiordinator1, 27 июл 2010.

Статус темы:
Закрыта.
  1. arhiordinator1

    arhiordinator1 Гость

    Всем привет, есть небольшая проблемка с запросом, суть запроса, есть справочник контрагенты, в нём есть поле контактов, телефон и тому подобное, вообщем надо сформировать отчёт так что бы напротив названия компании располагался её телефон, но в моём запросе почему то компании с пустыми телефонами выводятся тоже, к примеру:

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


    Результат выглядит жутковато :
    наименование___________телефон
    _______________________370-07-92
    _______________________472-48-20
    Копейка
    Копейка________________320-77-65, 324-85-05,292-25-03

    Что делать с подобными глюками как их извести?

    P.S.подчёркивания поставил сам они символизируют пробелы. А то когда тему создал не было видно что это табличка.
     
  2. arhiordinator1

    arhiordinator1 Гость

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

    Darlock Well-Known Member
    1C Team

    Регистрация:
    4 янв 2008
    Сообщения:
    558
    Симпатии:
    0
    Почти, поменяйте связи между таблицами, Справочник должен быть слева, а не регистр сведений.
     
Загрузка...
Статус темы:
Закрыта.

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