Advertisement
Guest User

Untitled

a guest
Nov 18th, 2019
138
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.91 KB | None | 0 0
  1. ALTER PROCEDURE "MONODBC"."sp_gummilagring"( /* [IN | OUT | INOUT] parameter_name parameter_type [DEFAULT default_value], ... */ )
  2. as
  3. BEGIN
  4. Declare @saldoArt1 int
  5. Declare @saldoArt2 int
  6. Declare @saldoArt3 int
  7. Declare @saldoArt4 int
  8. Declare @saldoArt5 int
  9. Declare @saldoArt6 int
  10. Declare @saldoArt7 int
  11. Declare @saldoArt8 int
  12. Declare @saldoArt9 int
  13. Declare @saldoArt10 int
  14. Declare @saldoArt11 int
  15. Declare @saldoArt12 int
  16. Declare @saldoArt13 int
  17. Declare @saldoArt14 int
  18. Declare @saldoArt15 int
  19. Declare @saldoArt16 int
  20. Declare @artnr1ant int
  21. Declare @artnr2ant int
  22. Declare @art1 varchar(15)
  23. Declare @art2 varchar(15)
  24. Declare @art3 varchar(15)
  25. Declare @art4 varchar(15)
  26. Declare @art5 varchar(15)
  27. Declare @art6 varchar(15)
  28. Declare @art7 varchar(15)
  29. Declare @art8 varchar(15)
  30. Declare @art9 varchar(15)
  31. Declare @art10 varchar(15)
  32. Declare @art11 varchar(15)
  33. Declare @art12 varchar(15)
  34. Declare @art13 varchar(15)
  35. Declare @art14 varchar(15)
  36. Declare @art15 varchar(15)
  37. Declare @art16 varchar(15)
  38.  
  39.  
  40. set @art1 = 'VSV422652'
  41. set @art2 = 'VSV423768'
  42. set @art3 = 'VSV423769'
  43. set @art4 = 'VSV423770'
  44. set @art5 = 'VSV423771'
  45. set @art6 = 'VSV441099'
  46. set @art7 = 'VSV447709'
  47. set @art8 = 'VSV452680'
  48. set @art9 = 'VSV467564'
  49. set @art10 = 'VSV467607'
  50. set @art11 = 'VSV467636'
  51. set @art12 = 'VSV468583'
  52. set @art13 = 'VSV468800'
  53. set @art14 = 'VSV470414'
  54.  
  55.  
  56. set @saldoArt1 = (SELECT(SELECT convert(int,sum(LP_SALDO)) FROM MONITOR.ARTIKEL_LPLATS WHERE ARTIKEL_LPLATS.ART_ID = ARTIKEL.ART_ID)
  57. FROM MONITOR.ARTIKEL WHERE ART_ARTNR = @art1)
  58. set @saldoArt2 = (SELECT(SELECT convert(int,sum(LP_SALDO)) FROM MONITOR.ARTIKEL_LPLATS WHERE ARTIKEL_LPLATS.ART_ID = ARTIKEL.ART_ID)
  59. FROM MONITOR.ARTIKEL WHERE ART_ARTNR = @art2)
  60. set @saldoArt3 = (SELECT(SELECT convert(int,sum(LP_SALDO)) FROM MONITOR.ARTIKEL_LPLATS WHERE ARTIKEL_LPLATS.ART_ID = ARTIKEL.ART_ID)
  61. FROM MONITOR.ARTIKEL WHERE ART_ARTNR = @art3)
  62. set @saldoArt4 = (SELECT(SELECT convert(int,sum(LP_SALDO)) FROM MONITOR.ARTIKEL_LPLATS WHERE ARTIKEL_LPLATS.ART_ID = ARTIKEL.ART_ID)
  63. FROM MONITOR.ARTIKEL WHERE ART_ARTNR = @art4)
  64. set @saldoArt5 = (SELECT(SELECT convert(int,sum(LP_SALDO)) FROM MONITOR.ARTIKEL_LPLATS WHERE ARTIKEL_LPLATS.ART_ID = ARTIKEL.ART_ID)
  65. FROM MONITOR.ARTIKEL WHERE ART_ARTNR = @art5)
  66. set @saldoArt6 = (SELECT(SELECT convert(int,sum(LP_SALDO)) FROM MONITOR.ARTIKEL_LPLATS WHERE ARTIKEL_LPLATS.ART_ID = ARTIKEL.ART_ID)
  67. FROM MONITOR.ARTIKEL WHERE ART_ARTNR = @art6)
  68. set @saldoArt7 = (SELECT(SELECT convert(int,sum(LP_SALDO)) FROM MONITOR.ARTIKEL_LPLATS WHERE ARTIKEL_LPLATS.ART_ID = ARTIKEL.ART_ID)
  69. FROM MONITOR.ARTIKEL WHERE ART_ARTNR = @art7)
  70. set @saldoArt8 = (SELECT(SELECT convert(int,sum(LP_SALDO)) FROM MONITOR.ARTIKEL_LPLATS WHERE ARTIKEL_LPLATS.ART_ID = ARTIKEL.ART_ID)
  71. FROM MONITOR.ARTIKEL WHERE ART_ARTNR = @art8)
  72. set @saldoArt9 = (SELECT(SELECT convert(int,sum(LP_SALDO)) FROM MONITOR.ARTIKEL_LPLATS WHERE ARTIKEL_LPLATS.ART_ID = ARTIKEL.ART_ID)
  73. FROM MONITOR.ARTIKEL WHERE ART_ARTNR = @art9)
  74. set @saldoArt10 = (SELECT(SELECT convert(int,sum(LP_SALDO)) FROM MONITOR.ARTIKEL_LPLATS WHERE ARTIKEL_LPLATS.ART_ID = ARTIKEL.ART_ID)
  75. FROM MONITOR.ARTIKEL WHERE ART_ARTNR = @art10)
  76. set @saldoArt11 = (SELECT(SELECT convert(int,sum(LP_SALDO)) FROM MONITOR.ARTIKEL_LPLATS WHERE ARTIKEL_LPLATS.ART_ID = ARTIKEL.ART_ID)
  77. FROM MONITOR.ARTIKEL WHERE ART_ARTNR = @art11)
  78. set @saldoArt12 = (SELECT(SELECT convert(int,sum(LP_SALDO)) FROM MONITOR.ARTIKEL_LPLATS WHERE ARTIKEL_LPLATS.ART_ID = ARTIKEL.ART_ID)
  79. FROM MONITOR.ARTIKEL WHERE ART_ARTNR = @art12)
  80. set @saldoArt13 = (SELECT(SELECT convert(int,sum(LP_SALDO)) FROM MONITOR.ARTIKEL_LPLATS WHERE ARTIKEL_LPLATS.ART_ID = ARTIKEL.ART_ID)
  81. FROM MONITOR.ARTIKEL WHERE ART_ARTNR = @art13)
  82. set @saldoArt14 = (SELECT(SELECT convert(int,sum(LP_SALDO)) FROM MONITOR.ARTIKEL_LPLATS WHERE ARTIKEL_LPLATS.ART_ID = ARTIKEL.ART_ID)
  83. FROM MONITOR.ARTIKEL WHERE ART_ARTNR = @art14)
  84.  
  85. //select @saldoArt8
  86.  
  87. drop table if EXISTS #TempGummilagring
  88. CREATE LOCAL TEMPORARY TABLE #TempGummilagring ( OrderNr nvarchar(15),Rowkey nvarchar(32),ArtikelNr nVARCHAR (16),ArtBeskrivning nvarchar (35),Amount INT, LevDatum nvarchar(10),calcAmount INT )
  89.  
  90.  
  91. --delete from tblVSVMont
  92. insert into #TempGummilagring(OrderNr,Rowkey,Artikelnr,Artbeskrivning,Amount,levDatum,calcAmount)
  93. select KORDERRAD.KO_NR,
  94. KORDERRAD.KO_NR+'_'+KORDERRAD.KOR_ARTNR+'_'+convert(VARCHAR(20),kor_ldat,112),
  95. KORDERRAD.KOR_ARTNR,
  96. KORDERRAD.KOR_TXT,
  97. convert(int,KORDERRAD.KOR_RANT),
  98. convert(date,KORDERRAD.KOR_LDAT),
  99. 0
  100. from MONITOR.KORDERRAD join monitor.korder on korder.ko_id = KORDERRAD.ko_id
  101. where KORDERRAD.KOR_ARTNR in (@art1,@art2,@art3,@art4,@art5,@art6,@art7,@art8,@art9,@art10,@art11,@art12,@art13,@art14) AND (Monitor.korder.ko_status between 1 AND 5) AND KORDERRAD.KOR_RTYP =1 AND KORDERRAD.KOR_RANT > 0
  102. order by KORDERRAD.KOR_LDAT
  103.  
  104. DECLARE CheckOrderNr CURSOR FOR
  105. SELECT Rowkey
  106. FROM #TempGummilagring
  107. DECLARE @OrderNummer CHAR(40)
  108. OPEN CheckOrderNr
  109. FETCH NEXT CheckOrderNr INTO @OrderNummer
  110. WHILE @@FETCH_STATUS = 0
  111.  
  112. BEGIN
  113. update #TempGummilagring
  114. set calcAmount =
  115. (CASE
  116. WHEN @art1=ArtikelNr THEN (@saldoart1 - Amount)
  117. WHEN @art2=ArtikelNr THEN (@saldoart2 - Amount)
  118. WHEN @art3=ArtikelNr THEN (@saldoart3 - Amount)
  119. WHEN @art4=ArtikelNr THEN (@saldoart4 - Amount)
  120. WHEN @art5=ArtikelNr THEN (@saldoart5 - Amount)
  121. WHEN @art6=ArtikelNr THEN (@saldoart6 - Amount)
  122. WHEN @art7=ArtikelNr THEN (@saldoart7 - Amount)
  123. WHEN @art8=ArtikelNr THEN (@saldoart8 - Amount)
  124. WHEN @art9=ArtikelNr THEN (@saldoart9 - Amount)
  125. WHEN @art10=ArtikelNr THEN (@saldoart10 - Amount)
  126. WHEN @art11=ArtikelNr THEN (@saldoart11 - Amount)
  127. WHEN @art12=ArtikelNr THEN (@saldoart12 - Amount)
  128. WHEN @art13=ArtikelNr THEN (@saldoart13 - Amount)
  129. WHEN @art14=ArtikelNr THEN (@saldoart14 - Amount)
  130. ELSE
  131. '100'
  132. END)
  133. where Rowkey = @OrderNummer
  134.  
  135. set @saldoart1 = (SELECT CASE WHEN @art1=ArtikelNr THEN calcAmount
  136. ELSE @saldoart1 END
  137. FROM #TempGummilagring
  138. WHERE @OrderNummer=Rowkey)
  139. set @saldoart2 = (SELECT CASE WHEN @art2=ArtikelNr THEN calcAmount
  140. ELSE @saldoart2 END
  141. FROM #TempGummilagring
  142. WHERE @OrderNummer=Rowkey)
  143. set @saldoart3 = (SELECT CASE WHEN @art3=ArtikelNr THEN calcAmount
  144. ELSE @saldoart3 END
  145. FROM #TempGummilagring
  146. WHERE @OrderNummer=Rowkey)
  147. set @saldoart4 = (SELECT CASE WHEN @art4=ArtikelNr THEN calcAmount
  148. ELSE @saldoart4 END
  149. FROM #TempGummilagring
  150. WHERE @OrderNummer=Rowkey)
  151. set @saldoart5 = (SELECT CASE WHEN @art5=ArtikelNr THEN calcAmount
  152. ELSE @saldoart5 END
  153. FROM #TempGummilagring
  154. WHERE @OrderNummer=Rowkey)
  155. set @saldoart6 = (SELECT CASE WHEN @art6=ArtikelNr THEN calcAmount
  156. ELSE @saldoart6 END
  157. FROM #TempGummilagring
  158. WHERE @OrderNummer=Rowkey)
  159. set @saldoart7 = (SELECT CASE WHEN @art7=ArtikelNr THEN calcAmount
  160. ELSE @saldoart7 END
  161. FROM #TempGummilagring
  162. WHERE @OrderNummer=Rowkey)
  163. set @saldoart8 = (SELECT CASE WHEN @art8=ArtikelNr THEN calcAmount
  164. ELSE @saldoart8 END
  165. FROM #TempGummilagring
  166. WHERE @OrderNummer=Rowkey)
  167. set @saldoart9 = (SELECT CASE WHEN @art9=ArtikelNr THEN calcAmount
  168. ELSE @saldoart9 END
  169. FROM #TempGummilagring
  170. WHERE @OrderNummer=Rowkey)
  171. set @saldoart10 = (SELECT CASE WHEN @art10=ArtikelNr THEN calcAmount
  172. ELSE @saldoart10 END
  173. FROM #TempGummilagring
  174. WHERE @OrderNummer=Rowkey)
  175. set @saldoart11 = (SELECT CASE WHEN @art11=ArtikelNr THEN calcAmount
  176. ELSE @saldoart11 END
  177. FROM #TempGummilagring
  178. WHERE @OrderNummer=Rowkey)
  179. set @saldoart12 = (SELECT CASE WHEN @art12=ArtikelNr THEN calcAmount
  180. ELSE @saldoart12 END
  181. FROM #TempGummilagring
  182. WHERE @OrderNummer=Rowkey)
  183. set @saldoart13 = (SELECT CASE WHEN @art13=ArtikelNr THEN calcAmount
  184. ELSE @saldoart13 END
  185. FROM #TempGummilagring
  186. WHERE @OrderNummer=Rowkey)
  187. set @saldoart14 = (SELECT CASE WHEN @art14=ArtikelNr THEN calcAmount
  188. ELSE @saldoart14 END
  189. FROM #TempGummilagring
  190. WHERE @OrderNummer=Rowkey)
  191.  
  192.  
  193.  
  194. FETCH NEXT CheckOrderNr INTO @OrderNummer
  195. END
  196.  
  197. CLOSE CheckOrderNr
  198. //select @saldoArt8
  199.  
  200. SELECT OrderNr, ArtikelNr, ArtBeskrivning, Amount, LevDatum, calcAmount from #TempGummilagring WHERE calcAmount < '0'
  201.  
  202. END
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement