SRD_Teile_neu_3.sql 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160
  1. select c157 as "Register No",
  2. c156 as "Entry No",
  3. c155 as "Srd Item No",
  4. c154 as "Dealer No",
  5. c153 as "Transaction Type",
  6. c132 as "Transaction Type Specification",
  7. c152 as "Xtimestamp",
  8. c151 as "Current Qty On-hand",
  9. c150 as "Open Order Quantity",
  10. c149 as "Average Cost",
  11. c148 as "Customer Backorder",
  12. c147 as "Enable For Requisition",
  13. c146 as "Area",
  14. c145 as "Document Type",
  15. c144 as "Document No",
  16. c111 as "Posting Date",
  17. c143 as "Quantity",
  18. c142 as "Gross Price",
  19. c141 as "Unit Price",
  20. c140 as "Customer Order No",
  21. c139 as "Customer Text",
  22. c138 as "Customer No",
  23. c137 as "Vin",
  24. c136 as "Mileage",
  25. c135 as "Salesperson Code",
  26. c134 as "Item No",
  27. '1' as "Hauptbetrieb",
  28. c133 as "Standort",
  29. c132 as "BA Spezifikation",
  30. c131 as "First Name",
  31. c130 as "Last Name",
  32. c129 as "Verkäufer",
  33. c128 as "No_Customer",
  34. c127 as "Name_Customer",
  35. c126 as "Customer Group Code",
  36. c125 as "Customer Posting Group",
  37. c124 as "Location Code_Customer",
  38. c123 as "Customer Type",
  39. c122 as "Umsatzart",
  40. c121 as "Kundenart",
  41. c120 as "Kunde",
  42. c119 as "Bmw Parts Type",
  43. c116 as "Item Group Code",
  44. c118 as "Teileart-Gruppe",
  45. c117 as "Artikelgruppe-Gruppe",
  46. c116 as "Artikelgruppe",
  47. c115 as "Teileart",
  48. c114 as "Menge",
  49. c113 as "VK",
  50. c112 as "EK",
  51. c111 as "Invoice Date",
  52. c110 as "Verkauf / Einkauf",
  53. c109 as "Bewegungsart",
  54. c95 as "Umsatz_alt",
  55. c108 as "Einsatz_alt",
  56. c107 as "Bewegungsart Detail",
  57. c106 as "Description",
  58. c91 as "Betrag Lagerzugang_alt",
  59. c93 as "Menge VK_alt",
  60. c92 as "Menge Lagerzugang_alt",
  61. c105 as "Description_Artikel",
  62. c104 as "Teil",
  63. c103 as "Abteilung",
  64. c102 as "Beleg_ori",
  65. c101 as "Beleg",
  66. c100 as "Make Code",
  67. c99 as "Marke",
  68. c98 as "Amount",
  69. c97 as "Adjusted Cost",
  70. c96 as "Cost Posted To G L",
  71. c94 as "Einsatz_neu",
  72. COUNT(c155) OVER (partition by c85) as "Anzahl Datensätze",
  73. (c95) / (COUNT(c155) OVER (partition by c85)) as "Umsatz",
  74. CASE WHEN ((c94) IS NOT NULL) THEN ((c94) / (COUNT(c155) OVER (partition by c85))) ELSE (0) END as "Einsatz",
  75. (c93) / (COUNT(c155) OVER (partition by c85)) as "Menge VK",
  76. (c92) / (COUNT(c155) OVER (partition by c85)) as "Menge Lagerzugang",
  77. (c91) / (COUNT(c155) OVER (partition by c85)) as "Betrag Lagerzugang",
  78. c90 as "Extra Code 3",
  79. c89 as "Inland/Export",
  80. c88 as "Artikelgruppe-Gruppe numerisch",
  81. c87 as "4 Stellen Document No",
  82. c86 as "Beleg_Tagesbericht"
  83. from
  84. (select ((cast_numberToString(cast_integer(T1."Entry No_"))) + T1."Document No_") as c85,
  85. CASE WHEN ((day((now()) - T1."Posting Date")) <= 3) THEN ((CASE WHEN (T3."No_" IS NOT NULL) THEN (T1."Document No_" + ' / ' + (CASE WHEN (T3."No_" IS NOT NULL) THEN (T3."No_" + ' - ' + T3."Name") ELSE null END)) ELSE (T1."Document No_") END)) ELSE null END as c86,
  86. (left(T1."Document No_",4)) as c87,
  87. CASE WHEN (T4."Item Group Code" BETWEEN '00' AND '22') THEN ('Artikelgruppe 0 - 22') WHEN (T4."Item Group Code" BETWEEN '23' AND '33') THEN ('Artikelgruppe 23 - 33') WHEN (T4."Item Group Code" BETWEEN '34' AND '99') THEN ('Artikelgruppe 34 - 99') ELSE ('Teileart fehlt/Rest') END as c88,
  88. CASE WHEN (T3."Extra Code 3" = 'EXPORT') THEN ('Anteil Export') ELSE ('Anteil Inland') END as c89,
  89. T3."Extra Code 3" as c90,
  90. CASE WHEN ((CASE WHEN (T1."Transaction Type" IN ('LC')) THEN ('Verkauf') ELSE ('Einkauf') END) = 'Einkauf') THEN (((convert(float, T1."Quantity"))) * ((convert(float, T1."Unit Price")))) ELSE (0) END as c91,
  91. CASE WHEN ((CASE WHEN (T1."Transaction Type" IN ('LC')) THEN ('Verkauf') ELSE ('Einkauf') END) = 'Einkauf') THEN (((convert(float, T1."Quantity")))) ELSE (0) END as c92,
  92. CASE WHEN ((CASE WHEN (T1."Transaction Type" IN ('LC')) THEN ('Verkauf') ELSE ('Einkauf') END) = 'Verkauf') THEN (((convert(float, T1."Quantity")))) ELSE (0) END as c93,
  93. CASE WHEN (((CASE WHEN ((CASE WHEN (T1."Transaction Type" IN ('LC')) THEN ('Verkauf') ELSE ('Einkauf') END) = 'Verkauf') THEN (((convert(float, T1."Quantity"))) * ((convert(float, T1."Average Cost")))) ELSE (0) END) < 0) and (((convert(float, T6."Adjusted Cost"))) > 0)) THEN (((convert(float, T6."Adjusted Cost"))) * -1) WHEN (((CASE WHEN ((CASE WHEN (T1."Transaction Type" IN ('LC')) THEN ('Verkauf') ELSE ('Einkauf') END) = 'Verkauf') THEN (((convert(float, T1."Quantity"))) * ((convert(float, T1."Average Cost")))) ELSE (0) END) > 0) and (((convert(float, T6."Adjusted Cost"))) < 0)) THEN (((convert(float, T6."Adjusted Cost"))) * -1) ELSE (((convert(float, T6."Adjusted Cost")))) END as c94,
  94. CASE WHEN ((CASE WHEN (T1."Transaction Type" IN ('LC')) THEN ('Verkauf') ELSE ('Einkauf') END) = 'Verkauf') THEN (((convert(float, T1."Quantity"))) * ((convert(float, T1."Unit Price")))) ELSE (0) END as c95,
  95. (convert(float, T6."Cost Posted to G_L")) as c96,
  96. (convert(float, T6."Adjusted Cost")) as c97,
  97. (convert(float, T6."Amount")) as c98,
  98. CASE WHEN (T4."Make Code" IN ('BMW','BMW-C1','BMW-MOT','BMWI')) THEN ('BMW') WHEN (T4."Make Code" IN ('BMW-MINI')) THEN ('MINI') ELSE ('Andere') END as c99,
  99. T4."Make Code" as c100,
  100. CASE WHEN ((day((now()) - T1."Posting Date")) <= 180) THEN ((CASE WHEN (T3."No_" IS NOT NULL) THEN (T1."Document No_" + ' / ' + (CASE WHEN (T3."No_" IS NOT NULL) THEN (T3."No_" + ' - ' + T3."Name") ELSE null END)) ELSE (T1."Document No_") END)) ELSE null END as c101,
  101. CASE WHEN (T3."No_" IS NOT NULL) THEN (T1."Document No_" + ' / ' + (CASE WHEN (T3."No_" IS NOT NULL) THEN (T3."No_" + ' - ' + T3."Name") ELSE null END)) ELSE (T1."Document No_") END as c102,
  102. CASE WHEN (T1."Area" = 1) THEN ('T & Z') WHEN (T1."Area" = 4) THEN ('Service') WHEN (T1."Area" = 0) THEN ('Sonstige') ELSE null END as c103,
  103. T1."Item No_" + ' - ' + T4."Description" as c104,
  104. T4."Description" as c105,
  105. T5."Description" as c106,
  106. T1."Transaction Type Specification" + ' - ' + T5."Description" as c107,
  107. CASE WHEN ((CASE WHEN (T1."Transaction Type" IN ('LC')) THEN ('Verkauf') ELSE ('Einkauf') END) = 'Verkauf') THEN (((convert(float, T1."Quantity"))) * ((convert(float, T1."Average Cost")))) ELSE (0) END as c108,
  108. CASE WHEN (T1."Transaction Type" = 'BA') THEN ('BA - Bestellung') WHEN (T1."Transaction Type" = 'RA') THEN ('RA - Rückgaben') WHEN (T1."Transaction Type" = 'LB') THEN ('LB - Lagerzugänge maschinell') WHEN (T1."Transaction Type" = 'LC') THEN ('LC - Lagerabgänge') WHEN (T1."Transaction Type" = 'LA') THEN ('LA - Lagerzugänge manuell') ELSE null END as c109,
  109. CASE WHEN (T1."Transaction Type" IN ('LC')) THEN ('Verkauf') ELSE ('Einkauf') END as c110,
  110. T1."Posting Date" as c111,
  111. (convert(float, T1."Average Cost")) as c112,
  112. (convert(float, T1."Unit Price")) as c113,
  113. (convert(float, T1."Quantity")) as c114,
  114. CASE WHEN (T4."Parts Category" = '1') THEN ('1 - Teile') WHEN (T4."Parts Category" = '2') THEN ('2 - Tauschteile') WHEN (T4."Parts Category" = '3') THEN ('3 - Nachrüstteile') WHEN (T4."Parts Category" = '4') THEN ('4 - ') WHEN (T4."Parts Category" = '5') THEN ('5 - Räder, Felgen') WHEN (T4."Parts Category" = '6') THEN ('6 - ') WHEN (T4."Parts Category" = '7') THEN ('7 - Accessoires') WHEN (T4."Parts Category" = '8') THEN ('8 - Reifen') WHEN (T4."Parts Category" = '9') THEN ('9 - Öle, Sonstiges') ELSE null END as c115,
  115. T4."Item Group Code" as c116,
  116. CASE WHEN (T4."Item Group Code" IN ('B','C','A')) THEN ('Artikelgruppe A - C') WHEN (T4."Item Group Code" IN ('E','K','H','F','I','G','D','J')) THEN ('Artikelgruppe D - K') WHEN (T4."Item Group Code" BETWEEN '23' AND '33') THEN ('Artikelgruppe D + E neu') WHEN (T4."Item Group Code" BETWEEN '34' AND '99') THEN ('Artikelgruppe F - K neu') ELSE ('Teileart fehlt/Rest') END as c117,
  117. CASE WHEN (T4."Parts Category" IN ('1','2')) THEN ('Teileart 1 - 2') WHEN (T4."Parts Category" IN ('3','4','5','6','7','8','9')) THEN ('Teileart 3 - 9') ELSE ('Teileart fehlt') END as c118,
  118. T4."Parts Category" as c119,
  119. CASE WHEN (T3."No_" IS NOT NULL) THEN (T3."No_" + ' - ' + T3."Name") ELSE null END as c120,
  120. T3."Gen_ Bus_ Posting Group" as c121,
  121. CASE WHEN (T3."No_" LIKE 'I%') THEN ('Intern') WHEN (T3."No_" LIKE 'G%') THEN ('GWL') WHEN (((not T3."No_" LIKE 'I%') and (not T3."No_" LIKE 'G%')) and (T3."No_" IS NOT NULL)) THEN ('Extern') ELSE null END as c122,
  122. T3."Customer Type" as c123,
  123. T3."Location Code" as c124,
  124. T3."Customer Posting Group" as c125,
  125. T3."Customer Group Code" as c126,
  126. T3."Name" as c127,
  127. T3."No_" as c128,
  128. T2."First Name" + ' ' + T2."Last Name" as c129,
  129. T2."Last Name" as c130,
  130. T2."First Name" as c131,
  131. T1."Transaction Type Specification" as c132,
  132. CASE WHEN (T1."Dealer No_" IN ('00357','29682','22075','28303')) THEN ('10') WHEN (T1."Dealer No_" IN ('00557','29619','40119')) THEN ('20') ELSE null END as c133,
  133. T1."Item No_" as c134,
  134. T1."Salesperson Code" as c135,
  135. T1."Mileage" as c136,
  136. T1."VIN" as c137,
  137. T1."Customer No_" as c138,
  138. T1."Customer Text" as c139,
  139. T1."Customer Order No_" as c140,
  140. T1."Unit Price" as c141,
  141. T1."Gross Price" as c142,
  142. T1."Quantity" as c143,
  143. T1."Document No_" as c144,
  144. T1."Document Type" as c145,
  145. T1."Area" as c146,
  146. T1."Enable for Requisition" as c147,
  147. T1."Customer Backorder" as c148,
  148. T1."Average Cost" as c149,
  149. T1."Open Order Quantity" as c150,
  150. T1."Current Qty_ On-Hand" as c151,
  151. T1."xTimestamp" as c152,
  152. T1."Transaction Type" as c153,
  153. T1."Dealer No_" as c154,
  154. T1."SRD Item No_" as c155,
  155. T1."Entry No_" as c156,
  156. T1."Register No_" as c157
  157. from ((((("Vogl7x"."dbo"."BMW AH Vogl$BMW SRD Transaction" T1 left outer join "Vogl7x"."dbo"."BMW AH Vogl$Employee" T2 on T1."Salesperson Code" = T2."No_") left outer join "Vogl7x"."dbo"."BMW AH Vogl$Customer" T3 on T1."Customer No_" = T3."No_") left outer join "Vogl7x"."dbo"."BMW AH Vogl$Item" T4 on T1."Item No_" = T4."No_") left outer join "Vogl7x"."dbo"."BMW AH Vogl$BMW SRD Movement Type" T5 on (T1."Transaction Type" = T5."Movement Type Code") and (T1."Transaction Type Specification" = T5."Movement Type Specification")) left outer join "Vogl7x"."dbo"."BMW AH Vogl$Value Entry" T6 on ((T6."Item No_" = T1."SRD Item No_") and (T6."Document No_" = T1."Document No_")) and (T6."Posting Date" = T1."Posting Date"))
  158. where ((T1."Posting Date" >= convert(datetime, '2020-01-01 00:00:00.000')) and (not T1."Document No_" LIKE 'FILAG%'))
  159. ) D1
  160. -- order by "Xtimestamp" asc