|   |   | 
| 
 | как построить такой вот запрос | ☑ | ||
|---|---|---|---|---|
| 0
    
        olo_lo1 30.10.11✎ 22:15 | 
        не могу вкурить как построить такой вот запрос
  нужно построить запрос на вхождения клиентов в выбранный список Проектов(где клиент был участником), т.е. как бы отчет по лояльности клиента Заранее неизвестно сколько проектов выберет пользователь в список запрос В списке в данном случае не подойдет, так как нужно вытащить данные где клиент участвовал во всех выбранных проектах. есть документ Событие, у него есть реквизит Клиент, Проект | |||
| 1
    
        Конфигуратор1с 30.10.11✎ 22:35 | 
        что есть проект ???     | |||
| 2
    
        olo_lo1 30.10.11✎ 22:39 | 
        типовой реквизит справочник.проекты     | |||
| 3
    
        Конфигуратор1с 30.10.11✎ 22:40 | 
        и как контрагенты связаны с проектами?     | |||
| 4
    
        olo_lo1 30.10.11✎ 22:40 | 
        через документ Событие     | |||
| 5
    
        Михей 30.10.11✎ 22:41 | 
        ВЫБРАТЬ
  Клиент, Проект Из Документ.Событие СГРУППИРОВАТЬ ПО Клиент, Проект | |||
| 6
    
        Конфигуратор1с 30.10.11✎ 22:42 | 
        + где проект в списке проектов     | |||
| 7
    
        SoftIce 30.10.11✎ 22:44 | 
        а что мешает просто выбрать
  ВЫБРАТЬ ДокСобытие.Клиент ИЗ Документ.Событие КАК ДокСобытие ГДЕ Документ.Событие.Проект В (&СписокПроектов) И (НЕ Документ.Событие.ПометкаУдаления) | |||
| 8
    
        Diabolicum 1C 30.10.11✎ 22:46 | 
        (5), (6) не пройдет. Из условия задачи нужно узнать во всех ли событиях участвовал клиент. Но если он не участвовал, то документа Событие не будет и соответственно все клиенты всегда будут удовлетворять условию.
  Если я правильно понял автора | |||
| 9
    
        olo_lo1 30.10.11✎ 22:47 | 
        (7) если было бы так просто..
  здесь фишка в том что бы выявить что клиент был на всех выбранных проектах.. да еще хочется на СКД это дело написать | |||
| 10
    
        olo_lo1 30.10.11✎ 22:47 | 
        (8) да, все верно     | |||
| 11
    
        Diabolicum 1C 30.10.11✎ 22:48 | 
        Тут только полное соединение списка всех прошедших событий со списком документов событие, отобранных по клиенту     | |||
| 12
    
        olo_lo1 30.10.11✎ 22:49 | 
        (11) согласен с вами, а как это динамически в СКД в момент нажатии кнопки сформировать сделать ?     | |||
| 13
    
        Diabolicum 1C 30.10.11✎ 22:59 | 
        Выбрать
  СпрКлиент.Ссылка как клиент, СпрСобытия.ссылка как событие Поместить СобытияКлиентов Из Справочник.контрагент как СпрКлиент, Справочник.события как СпрСобытия Где ....... ; Выбрать СК.Клиент, СК.Событие, Выбор когда док.клиент есть null тогда ложь иначе истина конец как участие Из СобытияКлиентов как СК Левое соединение документ.Событие как док По док.событие = СК.событие и Док.клиент = СК.клиент Вот примерно как то так. Запрос вернет список акций каждого клиента с признаком участия в них. Ну а дальше можно сгруппировать по клиенту и агрегировать поле участие по минимуму. Это в том случае, если нужно определить только участие клиента. Идея ясна?))) | |||
| 14
    
        olo_lo1 30.10.11✎ 23:12 | 
        запрос построил по-другому, все получилось, но я уперся как всегда в плохие знания СКД
  каким образом в момент нажатия кнопки сформировтаь в компоновщик передать параметр ? | |||
| 15
    
        Diabolicum 1C 30.10.11✎ 23:23 | 
        (14) а зачем тебе строить запрос динамически? Тот подход, который я тебе предлагаю не требует динамического построения. Он будет работать всегда. Нужно только расставить параметры и фильтры.
  С СКД я тебе не смогу помочь. Динамической работой с ней занимаюсь очень редко с книгой под рукой. А сейчас "звиняйте, бананьев немае" :) | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |