Имя: Пароль:
1C
1С v8
Подскажите с запросом
0 bvn-2005
 
21.11.17
12:17
Есть таблица из 3-х колонок: 1-Сотрудник (Иванов, петров, Сидоров), 2-Параметр (А, Б, В, Г), 3-Значение (число). Каждый сотрудник может встречаться в таблице многократно с различными значениями Параметра.
Нужно отобрать сотрудников со значением Праметра = А, получить табличку вида:
Сотрудник|Сумма по колонке Значение|
При этом сотрудники, у которых хотя бы раз встречается значение Параметра<>А в табличку попадать не должны. Как такое сделать запросом?
1 RomaH
 
naïve
21.11.17
12:19
левое соединение с условием NULL на вторую таблицу
2 1Сергей
 
21.11.17
12:19
во временную таблицу собрать всех, у кого есть не А. Потом вебрать всех из первоначальной таблицы и отделить тех у кого во временной есть хотя бы одна запись

НЕ ЕСТЬ NULL
3 RomaH
 
naïve
21.11.17
12:20
таблица с сотрудниками с параметром А
левое соединение таблица с сотрудниками с параметром не а
где втораятаблица сотрудник есть null
4 1Сергей
 
21.11.17
12:20
*ЕСТЬ NULL
5 wondkind
 
21.11.17
13:01
(0) что-то подобное

ВЫБРАТЬ РАЗЛИЧНЫЕ
    Сотрудник
ПОМЕСТИТЬ ВТ_СПараметромНеА
ИЗ
    Таблица
ГДЕ
    Параметр <> А
;

/////////
ВЫБРАТЬ
    Таблица.Сотрудник,
    Сумма(Таблица.Значение)    
ИЗ
    Таблица КАК Таблица
        ЛЕВОЕ СОЕДИНЕНИЕ ВТ_СПараметромНеА КАК ВТ_СПараметромНеА
        ПО ВТ_СПараметромНеА.Сотрудник = Таблица.Сотрудник
ГДЕ
    ВТ_СПараметромНеА.Сотрудник ЕСТЬ NULL
СГРУППИРОВАТЬ ПО
    Таблица.Сотрудник
6 bvn-2005
 
21.11.17
13:57
Блин, вроде бы все так и делаю, а результат пустой...
        "ВЫБРАТЬ
        |    РабочееВремяРаботниковОрганизаций.Сотрудник
        |ПОМЕСТИТЬ Неявки
        |ИЗ
        |    РегистрНакопления.РабочееВремяРаботниковОрганизаций КАК РабочееВремяРаботниковОрганизаций
        |ГДЕ
        |    РабочееВремяРаботниковОрганизаций.Период >= &ДатН
        |    И РабочееВремяРаботниковОрганизаций.Период <= &ДатК
        |    И РабочееВремяРаботниковОрганизаций.ВидИспользованияРабочегоВремени <> &ВидВремени
        |;
        |
        |////////////////////////////////////////////////////////////////////////////////
        |ВЫБРАТЬ
        |    РабочееВремяРаботниковОрганизаций.Период КАК Период,
        |    РабочееВремяРаботниковОрганизаций.Регистратор,
        |    РабочееВремяРаботниковОрганизаций.Сотрудник КАК Сотрудник,
        |    РабочееВремяРаботниковОрганизаций.ВидИспользованияРабочегоВремени,
        |    РабочееВремяРаботниковОрганизаций.Дней КАК Дней,
        |    РабочееВремяРаботниковОрганизаций.Часов КАК Часов
        |ИЗ
        |    РегистрНакопления.РабочееВремяРаботниковОрганизаций КАК РабочееВремяРаботниковОрганизаций
        |        ЛЕВОЕ СОЕДИНЕНИЕ Неявки КАК Неявки
        |        ПО РабочееВремяРаботниковОрганизаций.Сотрудник = Неявки.Сотрудник
        |ГДЕ
        |    Неявки.Сотрудник ЕСТЬ NULL
        |    И РабочееВремяРаботниковОрганизаций.Период >= &ДатН
        |    И РабочееВремяРаботниковОрганизаций.Период <= &ДатК
        |    И РабочееВремяРаботниковОрганизаций.ВидИспользованияРабочегоВремени = &ВидВремени
        |
        |УПОРЯДОЧИТЬ ПО
        |    Сотрудник,
        |    Период";


Сумму пока убрал...
7 НЕА123
 
21.11.17
14:04
параметры правильные?
8 bvn-2005
 
21.11.17
14:09
Разобрался! Вид времени засунул как строку, а там элемент справочника!