Вывести те документы где в таблице Товары только услуги

  1. 8 г. назад

    ВЫБРАТЬ РАЗРЕШЕННЫЕ
    ПоступлениеТоваровУслугТовары.Ссылка,
    ПоступлениеТоваровУслугТовары.Номенклатура.ТипНоменклатуры
    ИЗ
    Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары
    ГДЕ
    ПоступлениеТоваровУслугТовары.Ссылка.Дата МЕЖДУ &ДатаНачала И &ДатаОкончания

    только те ссылки, где нет номенклатуры с типом товар.

  2. где вопрос?

    Ответы: (2)
  3. (1) тут, это пример.
    как вывести все поступления в которых есть и товар и Услуги, но не выводить поступления в которых только Услуги.

    вообщем сделал как то так

    ВЫБРАТЬ
    	Поступления.Ссылка,
    	Поступления.БезУслуг,
    	Поступления.СУслугами,
    	Поступления.СУслугами - Поступления.БезУслуг КАК разница
    ИЗ
    	(ВЫБРАТЬ
    		ПоступлениеТоваровУслугТовары.Ссылка КАК Ссылка,
    		КОЛИЧЕСТВО(1) КАК БезУслуг,
    		ВложенныйЗапрос.НоменклатураКоличество КАК СУслугами
    	ИЗ
    		Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары
    			ВНУТРЕННЕЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
    				ПоступлениеТоваровУслугТовары.Ссылка КАК Ссылка,
    				КОЛИЧЕСТВО(1) КАК НоменклатураКоличество
    			ИЗ
    				Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары
    			ГДЕ
    				ПоступлениеТоваровУслугТовары.Ссылка.Дата МЕЖДУ &ДатаНачала И &ДатаОкончания
    			
    			СГРУППИРОВАТЬ ПО
    				ПоступлениеТоваровУслугТовары.Ссылка) КАК ВложенныйЗапрос
    			ПО ПоступлениеТоваровУслугТовары.Ссылка = ВложенныйЗапрос.Ссылка
    	ГДЕ
    		ПоступлениеТоваровУслугТовары.Ссылка.Дата МЕЖДУ &ДатаНачала И &ДатаОкончания
    		И ПоступлениеТоваровУслугТовары.Номенклатура.ТипНоменклатуры = &ТипНоменклатуры
    	
    	СГРУППИРОВАТЬ ПО
    		ПоступлениеТоваровУслугТовары.Ссылка,
    		ВложенныйЗапрос.НоменклатураКоличество) КАК Поступления
    ГДЕ
    	Поступления.БезУслуг - Поступления.БезУслуг = 0
    Ответы: (4)
  4. Семерочник? Откуда такие муки?

    Ответы: (4)
  5. 07.07.2015 13:30:58 отредактировано Леопольд Роскошный

    (2) еесть варианты оптимизации?

    (3) причем сдесь это?
    да было давно.

  6. жесть какая. а почему не использовать конструкцию ГДЕ .. НЕ В ...

    Ответы: (6) (10)
  7. (5) а именно?

    Ответы: (11)
  8. 07.07.2015 13:39:53 отредактировано MIK
      ВЫБРАТЬ
    	ЕСТЬNULL(ПоступлениеТоваровУслугТовары.Ссылка, ПоступлениеТоваровУслугУслуги.Ссылка) КАК Ссылка,
    	ВЫБОР
    		КОГДА ПоступлениеТоваровУслугТовары.Ссылка ЕСТЬ NULL 
    			ТОГДА ЛОЖЬ
    		ИНАЧЕ ИСТИНА
    	КОНЕЦ КАК ЕстьТовары,
    	ВЫБОР
    		КОГДА ПоступлениеТоваровУслугУслуги.Ссылка ЕСТЬ NULL 
    			ТОГДА ЛОЖЬ
    		ИНАЧЕ ИСТИНА
    	КОНЕЦ КАК ЕстьУслуги
    ИЗ
    	Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары
    		ПОЛНОЕ СОЕДИНЕНИЕ Документ.ПоступлениеТоваровУслуг.Услуги КАК ПоступлениеТоваровУслугУслуги
    		ПО ПоступлениеТоваровУслугТовары.Ссылка = ПоступлениеТоваровУслугУслуги.Ссылка
    
    Ответы: (9)
  9. ВЫБРАТЬ РАЗРЕШЕННЫЕ
    	Поступления.Ссылка
    ПОМЕСТИТЬ ПТИУразрешенные
    ИЗ
    	(ВЫБРАТЬ
    		ПоступлениеТоваровУслугТовары.Ссылка КАК Ссылка,
    		КОЛИЧЕСТВО(1) КАК БезУслуг,
    		ВложенныйЗапрос.НоменклатураКоличество КАК СУслугами
    	ИЗ
    		Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары
    			ВНУТРЕННЕЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
    				ПоступлениеТоваровУслугТовары.Ссылка КАК Ссылка,
    				КОЛИЧЕСТВО(1) КАК НоменклатураКоличество
    			ИЗ
    				Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары
    			ГДЕ
    				ПоступлениеТоваровУслугТовары.Ссылка.Дата МЕЖДУ &ДатаНачала И &ДатаОкончания
    			
    			СГРУППИРОВАТЬ ПО
    				ПоступлениеТоваровУслугТовары.Ссылка) КАК ВложенныйЗапрос
    			ПО ПоступлениеТоваровУслугТовары.Ссылка = ВложенныйЗапрос.Ссылка
    	ГДЕ
    		ПоступлениеТоваровУслугТовары.Ссылка.Дата МЕЖДУ &ДатаНачала И &ДатаОкончания
    		И ПоступлениеТоваровУслугТовары.Номенклатура.ТипНоменклатуры = &ТипНоменклатуры
    	
    	СГРУППИРОВАТЬ ПО
    		ПоступлениеТоваровУслугТовары.Ссылка,
    		ВложенныйЗапрос.НоменклатураКоличество) КАК Поступления
    ГДЕ
    	Поступления.БезУслуг - Поступления.БезУслуг = 0
    ;
    
    ////////////////////////////////////////////////////////////////////////////////
    ВЫБРАТЬ РАЗРЕШЕННЫЕ
    	ПоступлениеТоваровУслуг.Ссылка,
    	ПоступлениеТоваровУслуг.Менеджер,
    	ПоступлениеТоваровУслуг.Организация
    ИЗ
    	ПТИУразрешенные КАК ПТИУразрешенные
    		ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПоступлениеТоваровУслуг КАК ПоступлениеТоваровУслуг
    		ПО ПТИУразрешенные.Ссылка <> ПоступлениеТоваровУслуг.Ссылка
    ГДЕ
    	ПоступлениеТоваровУслуг.Проведен
    	И ПоступлениеТоваровУслуг.Дата МЕЖДУ &ДатаНачала И &ДатаОкончания

    как то даже так .

  10. 07.07.2015 13:41:54 отредактировано Леопольд Роскошный

    (7) нее в Ерп 2,0 Товары и Услуги находятся в одной Табличной части.

    Ответы: (12)
  11. (5) да я даже уверен, что протупил и как то, можно сделать по другому.

  12. (6) мне лень некогда

    вкратце так: выбираешь ссылки тех доков, где есть услуги, а затем выбираешь ссылки ГДЕ НЕ В

    Ответы: (13) (22)
  13. (9) еще проще.

    Выбираем доки где есть и товары и услуги

    ВЫБРАТЬ
    	ПоступлениеТоваровУслугТовары.Ссылка
    ИЗ
    	Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары
    ГДЕ
    	ПоступлениеТоваровУслугТовары.Номенклатура.ВидНоменклатуры <> &ПустойВидНоменклатуры
    
    СГРУППИРОВАТЬ ПО
    	ПоступлениеТоваровУслугТовары.Ссылка
    
    ИМЕЮЩИЕ
    	МАКСИМУМ(ПоступлениеТоваровУслугТовары.Номенклатура.ВидНоменклатуры) <> МИНИМУМ(ПоступлениеТоваровУслугТовары.Номенклатура.ВидНоменклатуры)
    
    Ответы: (14) (16) (20)
  14. (11) ты не понял, нужно исключить доки где нет товара вообще.

    Ответы: (15)
  15. (12) блять точно...

  16. (13) так ты выбирать будешь из табличной части, соответственно, доки без товаров не попадут

    Ответы: (19)
  17. (12)

    ГДЕ
    ПоступлениеТоваровУслугТовары.Номенклатура.ВидНоменклатуры <> &ПустойВидНоменклатуры

    это то зачем??

    Ответы: (17)
  18. (16) угадай. кстати корректней сделать отбор "в (&Товар,&Услуга)"

    Ответы: (18)
  19. (17) да эт не нужно товаров с пустым видом не бывает .

  20. (15) а ну да так проще, че та я седня туплю ..

  21. MIK ПоступлениеТоваровУслугТовары.Номенклатура.ВидНоменклатуры <> &ПустойВидНоменклатуры

    зачем параметр? если можно ЗНАЧЕНИЕ(Справочник.НужныйСправочник.ПустаяСсылка)

    Ответы: (21) (25)
  22. (20) да не возможен такой товар

  23. 07.07.2015 14:04:39 отредактировано Леопольд Роскошный

    (11)

    вкратце так: выбираешь ссылки тех доков, где есть услуги,

    то есть те ссылки где есть только услуги?

    Ответы: (23)
  24. (22) описка. выбираешь те ссылки, где есть НЕ услуги

    Ответы: (24)
  25. (23) воо!

  26. (20) просто я не знаю справочник там или перечисление

    Ответы: (26)
  27. (25) перечисление.
    но что то твое не работает.

    Ответы: (27)
  28. (26) у меня работает )

    Ответы: (28)
  29. 07.07.2015 14:42:03 отредактировано Леопольд Роскошный

    (27) да я не правильно перенес.
    у тебя быстрее и йобли меньше. но выбирает только те где есть товар и Услуга где только товар нет.

    Ответы: (29)
  30. Леопольд Роскошный где только товар нет.

    МИН = МАКС = ТОВАР

    Ответы: (30)
  31. (29) да все уже допилил.
    у Мика Самый быстрый.

  32. иногда Закциклишься на одном и не в какую..
    зачем я придумал считать строки..

или зарегистрируйтесь чтобы ответить!