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

Хранилище

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

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



> Вывод одного значения из нескольких , если в одного клиента несколько сигментов          
burza Подменю пользователя
сообщение 23.07.18, 15:27
Сообщение #1

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

Здравствуйте! Есть клиенты и у каждого может быть как один так и несколько сегментов. как в скд всегда тянуть только один сегмент. ибо если 2 сегмента пример то строки дублируются а это не хорошо.

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

takefive Подменю пользователя
сообщение 23.07.18, 15:50
Сообщение #2

Говорящий
***
Группа: Пользователи
Сообщений: 60
Из: Днепропетровск
Спасибо сказали: 22 раз
Рейтинг: 23.2

burza @ Сегодня, 16:27 * ,
Функция МИНИМУМ


Signature
без свинга нет музыки...

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

burza Подменю пользователя
сообщение 24.07.18, 11:50
Сообщение #3

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

группировка это не то.

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

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

А как по-вашему из трех выбрать один. какие предложения ? приоритеты...

Petre Подменю пользователя
сообщение 24.07.18, 13:12
Сообщение #5

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2902
Из: Київ, Україна
Спасибо сказали: 1144 раз
Рейтинг: 1225

QUOTE (burza @ 24.07.18, 11:50) *
группировка это не то.

Не что "не то"?

sava1 @ Today, 13:01 * ,
Модуль "нейронные сети"...


Signature
Допрацьовую:
- "Бухгалтерія для України 2.1";
- "Альфа-Авто: Автосалон+Автосервіс+Автозапчастини, українська версія".

burza Подменю пользователя
сообщение 24.07.18, 13:31
Сообщение #6

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

sava1 @ Сегодня, 14:01 * ,

да не важно какое будет значение, главное чтобы было 1-но из нескольких имеющихся.

sava1 Подменю пользователя
сообщение 24.07.18, 14:36
Сообщение #7

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

ну так почему не нравится группировка ?

twilight_dream Подменю пользователя
сообщение 29.07.18, 21:12
Сообщение #8

Оратор
*****
Группа: Пользователи
Сообщений: 265
Спасибо сказали: 4 раз
Рейтинг: 0

вместо ПартнерыСегмента.Сегмент пишем МАКСИМУМ(ПартнерыСегмента.Сегмент) КАК Сегмент

Если не надо по сегменту группировать, пусть так и остается агрегатным полем, а по остальным полям сгруппируйте.
Если надо группировку по сегменту, тогда не особо отличается:
внизу делаем группировку с итогами
Итоги ОБЩИЕ, Сегмент,... например

Вроде в 1С можно и в группировку вставить МАКСИМУМ(ПартнерыСегмента.Сегмент), тогда можно без итогов. Но это пробовать надо.


Signature

burza Подменю пользователя
сообщение 06.08.18, 12:17
Сообщение #9

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

twilight_dream @ 29.07.18, 22:12 * ,
суть в том что в таком способе все попадает в группировку, а мне этого не нужно.

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

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

вместо
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПартнерыСегмента КАК ПартнерыСегмента
        ПО ЗаказКлиентаТовары.Ссылка.Партнер = ПартнерыСегмента.Партнер


пишем
ЛЕВОЕ СОЕДИНЕНИЕ (
    Выбрать максимум(Сегмент),
                    Партнер
    ИЗ  РегистрСведений.ПартнерыСегмента КАК ПартнерыСегмента
    Сгруппировать по Партнер
    ) как КАК ПартнерыСегмента
ПО ЗаказКлиентаТовары.Ссылка.Партнер = ПартнерыСегмента.Партнер

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

burza Подменю пользователя
сообщение 06.08.18, 13:10
Сообщение #11

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

sava1 @ Сегодня, 13:36 * ,
Спасибо работает) не додумался сделать вложенным и там группировку сделать)

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


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

 

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