Advertisement
Guest User

Untitled

a guest
Jan 19th, 2017
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.54 KB | None | 0 0
  1. USE [Test_Acome_28062016]
  2. GO
  3. /****** Object: StoredProcedure [dbo].[b1s_testautoret] Script Date: 19-01-2017 11:35:39 ******/
  4. SET ANSI_NULLS ON
  5. GO
  6. SET QUOTED_IDENTIFIER ON
  7. GO
  8.  
  9. ALTER procedure [dbo].[B1S_LineInfo]
  10. @woid int
  11. --with encryption
  12. as
  13. SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED
  14. BEGIN
  15. SET NOCOUNT ON;
  16.  
  17. WITH batchs AS (
  18.  
  19. SELECT a.DocEntry,
  20. b.VisOrder,
  21. d.BatchNum,
  22. c.DocEntry AS igedoc
  23. FROM OWOR a
  24. INNER JOIN WOR1 b ON a.DocEntry=b.DocEntry AND b.IssueType<>'B' and a.DocEntry=@woid
  25. LEFT OUTER JOIN IGE1 c ON a.DocEntry=c.BaseEntry AND c.BaseLine=b.VisOrder AND c.BaseType =202 and a.DocEntry=@woid
  26. LEFT OUTER JOIN IBT1 d ON c.objtype = d.basetype AND c.DocEntry = d.baseentry AND c.LineNum = d.BaseLinNum AND c.itemcode = d.ItemCode
  27.  
  28. )
  29. select * into #tempbatchestable from batchs
  30. --select * from #tempbatchestable
  31. --drop table #tempbatchestable
  32.  
  33. SELECT
  34. A.DocEntry,
  35. a.VisOrder,
  36. a.LineNum,
  37. A.TotalIssue,
  38. --B.Total_Return,
  39. aa.BatchNum,
  40. --isnull(A.cmpltQty,0) as 'Completed',
  41. isnull(A.TotalIssue,0)-(isnull(B.Total_Return,0)+((isnull(A.cmpltQty,0)+isnull(A.RjctQty,0))*isnull(A.baseqty,0))) 'AvailQty'
  42. FROM (
  43. SELECT a.DocEntry,b.VisOrder,b.LineNum,b.itemCode,a.cmpltQty,a.RjctQty,
  44. --d.BatchNum,
  45. b.baseqty,
  46. SUM(c.Quantity) 'TotalIssue'
  47. FROM OWOR a INNER JOIN WOR1 b ON a.DocEntry=b.DocEntry
  48. LEFT OUTER JOIN IGE1 c ON a.DocEntry=c.BaseEntry AND c.BaseLine=b.VisOrder AND c.BaseType =202
  49. WHERE a.DocEntry=@woid AND b.IssueType<>'B'
  50. GROUP BY a.DocEntry,b.VisOrder,b.LineNum,b.itemCode,a.cmpltQty,a.RjctQty,b.baseqty--,d.BatchNum,c.DocEntry,b.IssuedQty
  51. )A
  52. LEFT OUTER JOIN
  53. (
  54. SELECT a.DocEntry,b.VisOrder, SUM(d.Quantity) 'Total_Return'
  55. FROM OWOR a INNER JOIN WOR1 b ON a.DocEntry=b.DocEntry
  56. LEFT OUTER JOIN IGN1 d ON a.DocEntry=d.BaseEntry AND d.BaseLine=b.VisOrder AND d.BaseType =202
  57. LEFT OUTER JOIN IBT1 c ON d.objtype = c.basetype AND d.DocEntry = c.baseentry AND d.LineNum = c.BaseLinNum AND d.itemcode = c.ItemCode
  58. WHERE a.DocEntry=@woid AND b.IssueType<>'B'
  59. GROUP BY a.DocEntry,b.VisOrder
  60. ) B
  61. ON A.DocEntry=A.DocEntry AND A.VisOrder =B.VisOrder
  62. JOIN
  63. (
  64. SELECT b1.*
  65. FROM #tempbatchestable b1
  66. LEFT JOIN #tempbatchestable b2 ON b1.DocEntry = b2.DocEntry AND b1.VisOrder =b2.VisOrder AND b1.igedoc < b2.igedoc
  67. WHERE b2.igedoc IS NULL
  68. ) aa
  69. ON A.DocEntry=aa.DocEntry AND A.VisOrder =aa.VisOrder
  70.  
  71. END
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement