Advertisement
eLVik

[usp_GetCommodityItemOnQuarter]

Dec 2nd, 2021
1,070
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
T-SQL 3.98 KB | None | 0 0
  1. USE [ForestManagement]
  2. GO
  3. /****** Object:  StoredProcedure [dbo].[usp_GetCommodityItemOnQuarter]    Script Date: 02.12.2021 16:18:21 ******/
  4. SET ANSI_NULLS ON
  5. GO
  6. SET QUOTED_IDENTIFIER ON
  7. GO
  8. -- =============================================
  9. -- Author:     
  10. -- Create date:
  11. -- Description:
  12. -- =============================================
  13. ALTER PROCEDURE [dbo].[usp_GetCommodityItemOnQuarter]
  14.     @Quarter_OID AS int,
  15.     @ActualizationYear AS smallint,
  16.     @CommodityTableKey AS smallint
  17. AS
  18. BEGIN
  19.     SET NOCOUNT ON;
  20.  
  21.     CREATE TABLE #t
  22.     (
  23.         CommonData_OID int NOT NULL,
  24.         TaxData_OID int NOT NULL,
  25.         Volume float,
  26.         ReturnCode int,
  27.         CommodityTable_OID int,
  28.         CommodityStock_OID smallint,
  29.         CommodityClass_OID smallint,
  30.         RK1 smallint,
  31.         RK2 smallint,
  32.         RK3 smallint,
  33.         RK4 smallint,
  34.         RC11 smallint,
  35.         RC12 smallint,
  36.         RC13 smallint,
  37.         RC14 smallint,
  38.         RC21 smallint,
  39.         RC22 smallint,
  40.         RC23 smallint,
  41.         RC24 smallint,
  42.         RM11 smallint,
  43.         RM12 smallint,
  44.         RM13 smallint,
  45.         RM2 smallint,
  46.         RTX smallint,
  47.         RTP smallint,
  48.         ROTX smallint,
  49.         RKOR smallint
  50.     )
  51.  
  52.     DECLARE @commonData_OID int, @taxData_OID int, @commodityTable_OID int, @Volume float
  53.     DECLARE @commodityStock_OID smallint, @commodityClass_OID smallint
  54.  
  55.     DECLARE @rK1 smallint,
  56.             @rK2 smallint,
  57.             @rK3 smallint,
  58.             @rK4 smallint,
  59.             @rC11 smallint,
  60.             @rC12 smallint,
  61.             @rC13 smallint,
  62.             @rC14 smallint,
  63.             @rC21 smallint,
  64.             @rC22 smallint,
  65.             @rC23 smallint,
  66.             @rC24 smallint,
  67.             @rM11 smallint,
  68.             @rM12 smallint,
  69.             @rM13 smallint,
  70.             @rM2 smallint,
  71.             @rTX smallint,
  72.             @rTP smallint,
  73.             @rOTX smallint,
  74.             @rKOR smallint,
  75.             @return_value int
  76.  
  77.     DECLARE curs CURSOR FORWARD_ONLY FAST_FORWARD FOR
  78.     SELECT a.OID AS CommonData_OID, b.OID AS TaxData_OID, b.Volume
  79.     FROM TaxData AS b INNER JOIN StoreyData AS c ON c.OID = b.Storey_OID
  80.                       INNER JOIN CommonData AS a ON a.OID = c.CommonData_OID
  81.                       INNER JOIN SubStratum AS d ON d.OID = a.SubStratum_OID
  82.                       INNER JOIN Stratum    AS e ON e.OID = d.Stratum_OID
  83.     WHERE e.Quarter_OID = @Quarter_OID AND a.ActualizationYear = @ActualizationYear
  84.  
  85.     OPEN curs
  86.    
  87.     FETCH NEXT FROM curs INTO @commonData_OID, @taxData_OID, @Volume
  88.     WHILE @@FETCH_STATUS = 0
  89.     BEGIN
  90.         EXEC @return_value = dbo.usp_GetCommodityItemOnTaxData
  91.              @TaxData_OID = @taxData_OID,
  92.              @CommodityTableKey = @CommodityTableKey,
  93.              @CommodityTable_OID = @commodityTable_OID OUTPUT,
  94.              @CommodityStock_OID = @commodityStock_OID OUTPUT,
  95.              @CommodityClass_OID = @commodityClass_OID OUTPUT,
  96.              @RK1 = @rK1 OUTPUT,
  97.              @RK2 = @rK2 OUTPUT,
  98.              @RK3 = @rK3 OUTPUT,
  99.              @RK4 = @rK4 OUTPUT,
  100.              @RC11 = @rC11 OUTPUT,
  101.              @RC12 = @rC12 OUTPUT,
  102.              @RC13 = @rC13 OUTPUT,
  103.              @RC14 = @rC14 OUTPUT,
  104.              @RC21 = @rC21 OUTPUT,
  105.              @RC22 = @rC22 OUTPUT,
  106.              @RC23 = @rC23 OUTPUT,
  107.              @RC24 = @rC24 OUTPUT,
  108.              @RM11 = @rM11 OUTPUT,
  109.              @RM12 = @rM12 OUTPUT,
  110.              @RM13 = @rM13 OUTPUT,
  111.              @RM2 = @rM2 OUTPUT,
  112.              @RTX = @rTX OUTPUT,
  113.              @RTP = @rTP OUTPUT,
  114.              @ROTX = @rOTX OUTPUT,
  115.              @RKOR = @rKOR OUTPUT
  116.        
  117.         INSERT INTO #t
  118.                 (
  119.                 CommonData_OID,
  120.                 TaxData_OID,
  121.                 Volume,
  122.                 ReturnCode,
  123.                 CommodityTable_OID,
  124.                 CommodityStock_OID,
  125.                 CommodityClass_OID,
  126.                 RK1,
  127.                 RK2,
  128.                 RK3,
  129.                 RK4,
  130.                 RC11,
  131.                 RC12,
  132.                 RC13,
  133.                 RC14,
  134.                 RC21,
  135.                 RC22,
  136.                 RC23,
  137.                 RC24,
  138.                 RM11,
  139.                 RM12,
  140.                 RM13,
  141.                 RM2,
  142.                 RTX,
  143.                 RTP,
  144.                 ROTX,
  145.                 RKOR
  146.                 )
  147.         VALUES
  148.         (
  149.             @commonData_OID,
  150.             @taxData_OID,
  151.             @Volume,
  152.             @return_value,
  153.             @commodityTable_OID,
  154.             @commodityStock_OID,
  155.             @commodityClass_OID,
  156.             @rK1,
  157.             @rK2,
  158.             @rK3,
  159.             @rK4,
  160.             @rC11,
  161.             @rC12,
  162.             @rC13,
  163.             @rC14,
  164.             @rC21,
  165.             @rC22,
  166.             @rC23,
  167.             @rC24,
  168.             @rM11,
  169.             @rM12,
  170.             @rM13,
  171.             @rM2,
  172.             @rTX,
  173.             @rTP,
  174.             @rOTX,
  175.             @rKOR          
  176.         )
  177.  
  178.         FETCH NEXT FROM curs INTO @commonData_OID, @taxData_OID, @Volume
  179.     END
  180.  
  181.     CLOSE curs
  182.     DEALLOCATE curs
  183.     SELECT * FROM #t
  184. END
  185.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement