8.х Вывод данных из регистра

Тема в разделе "Общие вопросы "1С:Предприятие 8"", создана пользователем PavelA, 1 авг 2012.

  1. TopicStarter Overlay
    PavelA
    Offline

    PavelA Опытный в 1С

    Регистрация:
    26 дек 2011
    Сообщения:
    739
    Симпатии:
    0
    Баллы:
    26
    И как быть :'(
  2. Tiger86
    Offline

    Tiger86 Модераторы Команда форума Модератор

    Регистрация:
    24 мар 2011
    Сообщения:
    6.407
    Симпатии:
    108
    Баллы:
    104
    и вообще, чтоб было понятно что надо на выходе, вот из вашего скрина составьте в екселе формат как надо и представьте скрин сюда
  3. TopicStarter Overlay
    PavelA
    Offline

    PavelA Опытный в 1С

    Регистрация:
    26 дек 2011
    Сообщения:
    739
    Симпатии:
    0
    Баллы:
    26
    Excel не могу предоставить, могу на словах.
    Есть объект у него есть 4 типа мощности. Надо чтобы брал 1 мощность, но если она равна 0, тогда вторую, если и та равна 0, то третью и если третья равноа 0 тогда 4, если же 4 равна 0 то просто пустое поле. А вид и из ТЗ видно, объект - и его мощность.
  4. Tiger86
    Offline

    Tiger86 Модераторы Команда форума Модератор

    Регистрация:
    24 мар 2011
    Сообщения:
    6.407
    Симпатии:
    108
    Баллы:
    104
    я вам предложила свой вариант вашего запроса, правда он соствлен почти вслепую, так как не очень прослеживаю вашу мысль по поводу, что откуда и зачем берется если мощности соответсвующие не заполнены....
  5. TopicStarter Overlay
    PavelA
    Offline

    PavelA Опытный в 1С

    Регистрация:
    26 дек 2011
    Сообщения:
    739
    Симпатии:
    0
    Баллы:
    26
    В вашем случае выводит свойсво а не значение свойства + выводит все свойства, а мне надо, чтобы выводило одно которое у объекта есть.
  6. Yuriy_Alexandrovich
    Offline

    Yuriy_Alexandrovich Профессионал в 1С Команда форума

    Регистрация:
    15 сен 2011
    Сообщения:
    1.275
    Симпатии:
    76
    Баллы:
    54
    Покажи что будет если выполнить такой запрос :
    Код:
    ВЫБРАТЬ
    ЗначенияСвойствПредНаименованийОбъектовСрезПоследних.ОбъектДС,
    ЗначенияСвойствПредНаименованийОбъектовСрезПоследних.ЗначениеСвойства КАК ЗначениеСвойства,
    ЗначенияСвойствПредНаименованийОбъектовСрезПоследних.Свойство		 КАК Свойство,
    СвойстваОбъектов.Ссылка											   КАК ИзПланаХарактеристик,
    ПредНаименованияОбъектов.Ссылка,
    ПредНаименованияОбъектов.ОбъектКС,
    ПредНаименованияОбъектов.ОбъектКС.Регион							  КАК ОбъектКСРегион
    ИЗ
    РегистрСведений.ЗначенияСвойствПредНаименованийОбъектов.СрезПоследних КАК ЗначенияСвойствПредНаименованийОбъектовСрезПоследних
    ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ПредНаименованияОбъектов КАК ПредНаименованияОбъектов
    ПО ЗначенияСвойствПредНаименованийОбъектовСрезПоследних.ОбъектДС = ПредНаименованияОбъектов.Ссылка
    ЛЕВОЕ СОЕДИНЕНИЕ ПланыВидовХарактеристик.СвойстваПредНаименованийОбъектов КАК СвойстваОбъектов
    ПО ЗначенияСвойствПредНаименованийОбъектовСрезПоследних.ОбъектДС = СвойстваОбъектов.Ссылка
    ГДЕ
    ЗначенияСвойствПредНаименованийОбъектовСрезПоследних.Свойство В ИЕРАРХИИ(&Свойство)
    И ПредНаименованияОбъектов.Ссылка В ИЕРАРХИИ(&Ссылка)
    И ЗначенияСвойствПредНаименованийОбъектовСрезПоследних.ЗначениеСвойства ЕСТЬ НЕ NULL
    И ЗначенияСвойствПредНаименованийОбъектовСрезПоследних.ЗначениеСвойства <> 0
    УПОРЯДОЧИТЬ ПО
    Свойство
    ИТОГИ
    КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ЗначениеСвойства)
    ПО
    ОБЩИЕ,
    ОбъектКСРегион
  7. TopicStarter Overlay
    PavelA
    Offline

    PavelA Опытный в 1С

    Регистрация:
    26 дек 2011
    Сообщения:
    739
    Симпатии:
    0
    Баллы:
    26
    так не вариант( пвх еще подвязывать...
  8. TopicStarter Overlay
    PavelA
    Offline

    PavelA Опытный в 1С

    Регистрация:
    26 дек 2011
    Сообщения:
    739
    Симпатии:
    0
    Баллы:
    26
    Посмотрел, можно через пакеты сделать, вот только вопрос как ? =( В принципе дошел до этого. Задача остается, на данном этапе надо как то обозвать реквизит присовить ему, что он брал только максимум из доступных мощностей. Чето не соображу как записать правильно.

    Вложения:

    • 1.jpg
      1.jpg
      Размер файла:
      58,8 КБ
      Просмотров:
      8
  9. Yuriy_Alexandrovich
    Offline

    Yuriy_Alexandrovich Профессионал в 1С Команда форума

    Регистрация:
    15 сен 2011
    Сообщения:
    1.275
    Симпатии:
    76
    Баллы:
    54
    Используй группировки
    Код:
    СГРУППИРОВАТЬ ПО ОбъектДС
  10. Tiger86
    Offline

    Tiger86 Модераторы Команда форума Модератор

    Регистрация:
    24 мар 2011
    Сообщения:
    6.407
    Симпатии:
    108
    Баллы:
    104
    про организацию пакетных запросов я на сайте Чистова читала статейку, понятно и с примерами
  11. Yuriy_Alexandrovich
    Offline

    Yuriy_Alexandrovich Профессионал в 1С Команда форума

    Регистрация:
    15 сен 2011
    Сообщения:
    1.275
    Симпатии:
    76
    Баллы:
    54
    Описание смотри в синтаксис помощнике, там же - агрегатные функции в запросе
  12. shurikvz
    Offline

    shurikvz Модераторы Команда форума Модератор

    Регистрация:
    1 окт 2009
    Сообщения:
    8.409
    Симпатии:
    316
    Баллы:
    104
    Писал прямо здесь. Можно приблизительно так:

    Код:
    ТЗ = Новый ТаблицаЗначений;
    ТЗ.Колонки.Добавить("Свойство");
    ТЗ.Колонки.Добавить("Порядок");
    
    НоваяСтрока = ТЗ.Добавить();
    НоваяСтрока.Свойство = ПервоеСвойство;
    НоваяСтрока.Порядок = 1;
    НоваяСтрока = ТЗ.Добавить();
    НоваяСтрока.Свойство = ВтороеСвойство;
    НоваяСтрока.Порядок = 2;
    
    и т.д...
    
    
    Запрос.Текст =
    "ВЫБРАТЬ ТЗ.Свойство, ТЗ.Порядок ПОМЕСТИТЬ ТаблицаСвойств ИЗ &ТЗ КАК ТЗ;
    |
    |ВЫБРАТЬ ПредНаименованияОбъектов.Ссылка, ПредНаименованияОбъектов.ОбъектКС, ПредНаименованияОбъектов.ОбъектКС.Регион КАК ОбъектКСРегион Поместить СписокОбъектовКС
    |ИЗ Справочник.ПредНаименованияОбъектов КАК ПредНаименованияОбъектов ГДЕ ПредНаименованияОбъектов.Ссылка В ИЕРАРХИИ(&Ссылка);
    |
    |ВЫБРАТЬ ЗначенияСвойствПредНаименованийОбъектовСрезПоследних.ОбъектДС, ЗначенияСвойствПредНаименованийОбъектовСрезПоследних.ЗначениеСвойства КАК ЗначениеСвойства, ЗначенияСвойствПредНаименованийОбъектовСрезПоследних.Свойство КАК Свойство ПОМЕСТИТЬ СвойстваОбъектов
    |ИЗ РегистрСведений.ЗначенияСвойствПредНаименованийОбъектов.СрезПоследних(, Объект В (Выбрать Т.Ссылка ИЗ СписокОбъектовКС КАК Т) И Свойство В (Выбрать Т.Свойство ИЗ ТаблицаСвойств КАК Т)) КАК ЗначенияСвойствПредНаименованийОбъектовСрезПоследних
    |
    |ВЫБРАТЬ СвойстваОбъектов.ОбъектДС, МИНИМУМ(ТаблицаСвойств.Порядок) ПОМЕСТИТЬ МинимальныйИндексСвойства
    |ИЗ СвойстваОбъектов КАК СвойстваОбъектов
    |ВНУТРЕННЕЕ СОЕДИНЕНИЕ ТаблицаСвойств КАК ТаблицаСвойств ПО СвойстваОбъектов.Свойство = ТаблицаСвойств.Свойство
    |ГДЕ СвойстваОбъектов.Значение <> 0 СГРУППИРОВАТЬ ПО СвойстваОбъектов.ОбъектДС;
    |
    |ВЫБРАТЬ МинимальныйИндексСвойства.ОбъектДС, ТаблицаСвойств.Свойство ПОМЕСТИТЬ НужноеСвойствоДляОбъекта
    |ИЗ МинимальныйИндексСвойства КАК МинимальныйИндексСвойства
    |ВНУТРЕННЕЕ СОЕДИНЕНИЕ ТаблицаСвойств КАК ТаблицаСвойств ПО МинимальныйИндексСвойства.Порядок = ТаблицаСвойств.Порядок;
    |
    |Уничтожить ТаблицаСвойств; Уничтожить МинимальныйИндексСвойства;
    |
    |ВЫБРАТЬ СвойстваОбъектов.ОбъектДС, СвойстваОбъектов.ЗначениеСвойства, СвойстваОбъектов.Свойство, СписокОбъектовКС.ОбъектКС, СписокОбъектовКС.ОбъектКСРегион
    |ИЗ СвойстваОбъектов КАК СвойстваОбъектов
    |ВНУТРЕННЕЕ СОЕДИНЕНИЕ НужноеСвойствоДляОбъекта ПО СвойстваОбъектов.ОбъектДС = НужноеСвойствоДляОбъекта.ОбъектДС И СвойстваОбъектов.Свойство = НужноеСвойствоДляОбъекта.Свойство
    |ЛЕВОЕ СОЕДИНЕНИЕ СписокОбъектовКС КАК СписокОбъектовКС ПО СвойстваОбъектов.ОбъектДС = СписокОбъектовКС.Ссылка
    |
    |Уничтожить СвойстваОбъектов; Уничтожить СписокОбъектовКС; Уничтожить НужноеСвойствоДляОбъекта;
    |"
  13. TopicStarter Overlay
    PavelA
    Offline

    PavelA Опытный в 1С

    Регистрация:
    26 дек 2011
    Сообщения:
    739
    Симпатии:
    0
    Баллы:
    26
    Вопрос решен, всем спаибо за помощь!

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