DemAl

Миго. Урок 23. Итоги в дин. списке

Aug 9th, 2025
245
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQL 4.98 KB | None | 0 0
  1. ВЫБРАТЬ
  2.     РеализацияТоваров.Ссылка КАК Ссылка ПОМЕСТИТЬ ВТДокументыРеализации ИЗ
  3.     Документ.РеализацияТоваров КАК РеализацияТоваров ГДЕ
  4.     РеализацияТоваров.Проведен
  5.     И НЕ РеализацияТоваров.ПометкаУдаления
  6.     И РеализацияТоваров.Ссылка = &ДокументРТУ
  7. ;
  8.  
  9. ////////////////////////////////////////////////////////////////////////////////
  10. ВЫБРАТЬ
  11.     ДокТЧ.Ссылка КАК Ссылка, ДокТЧ.Номенклатура КАК Номенклатура ПОМЕСТИТЬ ВТТоварыИзРеализации ИЗ
  12.     ВТДокументыРеализации КАК ВТДокументыРеализации
  13.     ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.РеализацияТоваров.Товары КАК ДокТЧ ПО ВТДокументыРеализации.Ссылка = ДокТЧ.Ссылка
  14.  
  15. СГРУППИРОВАТЬ ПО
  16.     ДокТЧ.Номенклатура, ДокТЧ.Ссылка
  17. ;
  18.  
  19. ////////////////////////////////////////////////////////////////////////////////
  20. ВЫБРАТЬ
  21.     ТаблицаТоваров.Ссылка КАК Реализация, ТаблицаТоваров.Номенклатура КАК Номенклатура,
  22.     ЕСТЬNULL(РегистрОстатков.Склад, ЗНАЧЕНИЕ(Справочник.Склады.ПустаяСсылка)) КАК Склад,
  23.     СУММА(ВЫБОР
  24.         КОГДА ЕСТЬNULL(РегистрОстатков.КоличествоОстаток, 0) < 0
  25.         ТОГДА 0
  26.         ИНАЧЕ ЕСТЬNULL(РегистрОстатков.КоличествоОстаток, 0) КОНЕЦ) КАК КоличествоОстаток
  27. ПОМЕСТИТЬ ВТДанные
  28. ИЗ
  29.     ВТТоварыИзРеализации КАК ТаблицаТоваров
  30. ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.Остатки( ,
  31.                                 Номенклатура В (ВЫБРАТЬ РАЗЛИЧНЫЕ
  32.                                                 ВТТоварыИзРеализации.Номенклатура КАК Номенклатура ИЗ
  33.                                                 ВТТоварыИзРеализации КАК ВТТоварыИзРеализации)) КАК РегистрОстатков
  34.             ПО ТаблицаТоваров.Номенклатура = РегистрОстатков.Номенклатура
  35.  
  36. СГРУППИРОВАТЬ ПО
  37.     ТаблицаТоваров.Номенклатура,
  38.     ЕСТЬNULL(РегистрОстатков.Склад, ЗНАЧЕНИЕ(Справочник.Склады.ПустаяСсылка)), ТаблицаТоваров.Ссылка
  39. ;
  40.  
  41. //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ
  42. ВТДанные.Реализация КАК Реализация,
  43.     СУММА(ВТДанные.КоличествоОстаток) КАК ИтогоОстаток
  44. ПОМЕСТИТЬ ВТИтоги
  45. ИЗ
  46.     ВТДанные КАК ВТДанные
  47.  
  48. СГРУППИРОВАТЬ ПО
  49.     ВТДанные.Реализация
  50. ;
  51.  
  52. ////////////////////////////////////////////////////////////////////////////////
  53. ВЫБРАТЬ
  54.     ВТДанные.Реализация КАК Реализация,
  55.     ВТДанные.Номенклатура КАК Номенклатура,
  56.     ВТДанные.Склад КАК Склад,
  57.     ВТДанные.КоличествоОстаток КАК КоличествоОстаток, 0 КАК ПорядокСортировки
  58. ПОМЕСТИТЬ ВТДанныеПлюсИтого
  59. ИЗ
  60.     ВТДанные КАК ВТДанные
  61. ЛЕВОЕ СОЕДИНЕНИЕ ВТИтоги КАК ВТИтоги
  62. ПО ВТДанные.Реализация = ВТИтоги.Реализация
  63.  
  64. ОБЪЕДИНИТЬ ВСЕ
  65.  
  66. ВЫБРАТЬ
  67.     NULL,
  68.     "ИТОГО:",
  69.     NULL,
  70.     ВТИтоги.ИтогоОстаток,
  71.     1
  72. ИЗ
  73.     ВТИтоги КАК ВТИтоги
  74. ;
  75.  
  76. ////////////////////////////////////////////////////////////////////////////////
  77. ВЫБРАТЬ
  78.     ВТДанныеПлюсИтого.Реализация КАК Реализация,
  79.     ВТДанныеПлюсИтого.Номенклатура КАК Номенклатура,
  80.     ВТДанныеПлюсИтого.Склад КАК Склад,                       
  81.     ВТДанныеПлюсИтого.КоличествоОстаток КАК КоличествоОстаток,
  82.     ВТДанныеПлюсИтого.ПорядокСортировки КАК ПорядокСортировки
  83. ИЗ
  84.     ВТДанныеПлюсИтого КАК ВТДанныеПлюсИтого
  85.  
  86. УПОРЯДОЧИТЬ ПО
  87.     ПорядокСортировки
Advertisement
Add Comment
Please, Sign In to add comment