transform.Kontenrahmen.sql 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  1. SET QUOTED_IDENTIFIER ON
  2. GO
  3. SET ANSI_NULLS ON
  4. GO
  5. CREATE VIEW [transform].[Kontenrahmen]
  6. AS
  7. SELECT [Konto_Nr] + ' - ' + [Konto_Bezeichnung] AS [Konto]
  8. , [Konto_Nr]
  9. , [Konto_Bezeichnung]
  10. , [Konto_Art]
  11. , [K].[KST-Nr]
  12. , [STK]
  13. , [Konto_1]
  14. , [Konto_2]
  15. , [Konto_3]
  16. , [Konto_4]
  17. , [Konto_5]
  18. , [Ebene1]
  19. , [Ebene2]
  20. , [Ebene3]
  21. , [Ebene4]
  22. , [Ebene5]
  23. , [Ebene6]
  24. , [Ebene7]
  25. , [Ebene8]
  26. , [Ebene9]
  27. , [Ebene10]
  28. , [Ebene11]
  29. , [Ebene12]
  30. , [Ebene13]
  31. , [Ebene14]
  32. , [Ebene15]
  33. , [Ebene16]
  34. , [Ebene17]
  35. , [Ebene18]
  36. , [Ebene19]
  37. , [Ebene20]
  38. , [Ebene21]
  39. , [Ebene22]
  40. , [Ebene23]
  41. , [Ebene24]
  42. , [Ebene25]
  43. , [Ebene26]
  44. , [Ebene27]
  45. , [Ebene28]
  46. , [Ebene29]
  47. , [Ebene30]
  48. , [Ebene31]
  49. , [Ebene32]
  50. , [Ebene33]
  51. , [Ebene34]
  52. , [Ebene35]
  53. , [Ebene36]
  54. , [Ebene37]
  55. , [Ebene38]
  56. , [Ebene39]
  57. , [Ebene40]
  58. , [Ebene41]
  59. , [Ebene42]
  60. , [Ebene43]
  61. , [Ebene44]
  62. , [Ebene45]
  63. , [Ebene46]
  64. , [Ebene47]
  65. , [Ebene48]
  66. , [Ebene49]
  67. , [Ebene50]
  68. , [Ebene51]
  69. , [Ebene52]
  70. , [Ebene53]
  71. , [Ebene54]
  72. , [Ebene55]
  73. , [Ebene56]
  74. , [Ebene57]
  75. , [Ebene58]
  76. , [Ebene59]
  77. , [Ebene60]
  78. , CASE
  79. WHEN [Ebene1] = 'XX' THEN 'XX'
  80. WHEN [Ebene1] = N'Umsatzerlöse'
  81. THEN '1_' + CASE
  82. WHEN isnumeric(left([Ebene2], 4)) = 1 THEN left([Ebene2], 4)
  83. WHEN isnumeric(left([Ebene3], 4)) = 1 THEN left([Ebene3], 4)
  84. WHEN isnumeric(left([Ebene4], 4)) = 1 THEN left([Ebene4], 4)
  85. END
  86. WHEN [Ebene1] = 'Materialaufwand'
  87. THEN '2_' + CASE
  88. WHEN isnumeric(left([Ebene2], 4)) = 1 THEN left([Ebene2], 4)
  89. WHEN isnumeric(left([Ebene3], 4)) = 1 THEN left([Ebene3], 4)
  90. WHEN isnumeric(left([Ebene4], 4)) = 1 THEN left([Ebene4], 4)
  91. END
  92. WHEN [Ebene1] = 'Kosten'
  93. THEN '3_' + CASE
  94. WHEN isnumeric(left([Ebene2], 4)) = 1 THEN left([Ebene2], 4)
  95. WHEN isnumeric(left([Ebene3], 4)) = 1 THEN left([Ebene3], 4)
  96. WHEN isnumeric(left([Ebene4], 4)) = 1 THEN left([Ebene4], 4)
  97. END
  98. WHEN left([Ebene1], 8) = 'Indirekt'
  99. THEN '4_' + CASE
  100. WHEN isnumeric(left([Ebene2], 4)) = 1 THEN left([Ebene2], 4)
  101. WHEN isnumeric(left([Ebene3], 4)) = 1 THEN left([Ebene3], 4)
  102. WHEN isnumeric(left([Ebene4], 4)) = 1 THEN left([Ebene4], 4)
  103. END
  104. WHEN left([Ebene1], 6) = 'Finanz'
  105. THEN '5_' + CASE
  106. WHEN isnumeric(left([Ebene2], 4)) = 1 THEN left([Ebene2], 4)
  107. WHEN isnumeric(left([Ebene3], 4)) = 1 THEN left([Ebene3], 4)
  108. WHEN isnumeric(left([Ebene4], 4)) = 1 THEN left([Ebene4], 4)
  109. END
  110. ELSE 'X?'
  111. END AS [Sortierung]
  112. , [KS].[Kostenstelle] AS [Kostenstelle]
  113. FROM [x_data].[Kontenrahmen] [K]
  114. LEFT JOIN [x_data].[Kostenstelle] [KS] ON [K].[KST-Nr] = [KS].[KST-Nr]
  115. GO
  116. SET QUOTED_IDENTIFIER OFF
  117. GO
  118. SET ANSI_NULLS OFF
  119. GO
  120. GO