Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Как вывести некое значение, не имеющее отношение к данным отчета? , вывести некое значение, не имеющее отношение к данным отчета          
kserg2012 Подменю пользователя
сообщение 31.08.21, 9:31
Сообщение #1

Говорящий
***
Группа: Пользователи
Сообщений: 98
Спасибо сказали: 14 раз
Рейтинг: 14.3

Добрый день.

Суть проблемы - клиент просит в отчете по продажам (для информативности) вывести отдельной колонкой значение-ресурс, в котором будет одна общая "Сумма оплаты поставщикам",
при этом эта сумма никакого отношения к данным отчета по продажам не имеет.

Я понимаю как получить это значение(есть запрос с отборами), но не совсем понимаю как это "оформить" в рамках СКД.
Подскажите пож-та какие возможны простые решения.

Спасибо

Сообщение отредактировал Vofka - 31.08.21, 16:46

sava1 Подменю пользователя
сообщение 31.08.21, 9:42
Сообщение #2

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2684
Из: Проскуров
Спасибо сказали: 678 раз
Рейтинг: 656.7

цепляете значение к основному набору и выводите в верхней группировка

kserg2012 Подменю пользователя
сообщение 31.08.21, 10:15
Сообщение #3

Говорящий
***
Группа: Пользователи
Сообщений: 98
Спасибо сказали: 14 раз
Рейтинг: 14.3

Цитата(sava1 @ 31.08.21, 10:42) *
цепляете значение к основному набору

хочу уточнить - это делать через связь 2-х наборов данных (основной и доп.запрос,в котором получается Сумма оплаты поставщикам) ?
или не обязательно - можно например вычислить это значение внешним запросом и добавить его как параметр &СуммаОплатыПоставщикам ??

sava1 Подменю пользователя
сообщение 31.08.21, 10:19
Сообщение #4

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2684
Из: Проскуров
Спасибо сказали: 678 раз
Рейтинг: 656.7

любой путь возможен - как Вам удобнее - основное, чтобы в результирующем наборе это значение было. в ресурсах проставьте МАКСИМУМ(...) - для вывода в группировках

Спасибо сказали: kserg2012,

kserg2012 Подменю пользователя
сообщение 31.08.21, 10:20
Сообщение #5

Говорящий
***
Группа: Пользователи
Сообщений: 98
Спасибо сказали: 14 раз
Рейтинг: 14.3

sava1 @ Сегодня, 11:19 * ,
понял
спасибо

lolmatrix Подменю пользователя
сообщение 31.08.21, 15:48
Сообщение #6

Завсегдатай
****
Группа: Пользователи
Сообщений: 113
Спасибо сказали: 1 раз
Рейтинг: 1

sava1 @ Сегодня, 10:42 * ,
Подскажите пожалуйста.. как это цеплять к основному отчету? программно обратиться к компоновщику очета? не могли бы вы пример кода показать?

kserg2012 Подменю пользователя
сообщение 02.09.21, 8:33
Сообщение #7

Говорящий
***
Группа: Пользователи
Сообщений: 98
Спасибо сказали: 14 раз
Рейтинг: 14.3

Цитата(lolmatrix @ 31.08.21, 16:48) *
как это цеплять к основному отчету?

у меня получилось реализовать 2 способами
1) в запросе СКД добавил подзапрос, в котором получаю Сумму оплаты поставщикам, и далее чеоез ЛЕВОЕ СОЕДИНЕНИЕ по условию связи ИСТИНА данное значение добавляю в основной запрос.
Далее описываю это значение как ресурс с агрегатной функцией МАКСИМУМ(СуммаОплатыПоставщикам) и выводом в 2-х группировках данных (в самой верхней и в ОбщиеИтоги)

Решение приемлемое, но мне не очень понравилось, к тому же у клиента появилась "хотелка" - прикрутить к этому подзапросу небольшой отбор... Поэтому сделал вторым способом - более наглядно

2) В запросе вместо значения СуммаОплатыПоставщикам из подзапроса подставил 0 (чтобы организовать саму колонку в данных СКД)
а само значение-число вывожу как наименование этой колонки в шапке - получилось типа "Оплата поставщикам 272 000 USD"
(вывод в группировках теперь не нужен)

реализовано это в Процедуре ПриКомпоновкеРезультата
-получаю обычным запросом значение СуммаОплатыПоставщикам и затем через ДоступноеПолеВыбора нахожу и меняю заголовок этой колонки


kserg2012 @ Сегодня, 9:27 * ,

Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
    
    Запрос = Новый Запрос;
    Запрос.Текст=
    ...
    тзВрем = Запрос.Выполнить().Выгрузить();
    
    //изменим заголовок Доступного поля
    ЗаголовкиПолей = Новый Соответствие;
    Для Каждого ДоступноеПолеВыбора Из КомпоновщикНастроек.Настройки.ДоступныеПоляВыбора.Элементы Цикл
        Если Лев(ДоступноеПолеВыбора.Заголовок,10) = "Оплата пос" Тогда
            ЗаголовкиПолей.Вставить(ДоступноеПолеВыбора.Поле, "Оплата поставщикам" + Символы.ПС + тзВрем[0].ОплатаПоставщикамUSD+" USD");
            Прервать;
        КонецЕсли;
    КонецЦикла;

    Для Каждого ВыбранноеПоле Из КомпоновщикНастроек.Настройки.Выбор.Элементы Цикл
        НовыйЗаголовок = ЗаголовкиПолей.Получить(ВыбранноеПоле.Поле);
        Если НовыйЗаголовок <> Неопределено Тогда
            ВыбранноеПоле.Заголовок = НовыйЗаголовок;
            Прервать;
        КонецЕсли;
    КонецЦикла;

Спасибо сказали: lolmatrix,

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 29.03.24, 12:03
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!