Advertisement
Guest User

Untitled

a guest
Jun 25th, 2018
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.28 KB | None | 0 0
  1. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[VESP_VALOARTI5]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
  2. drop procedure [dbo].[VESP_VALOARTI5]
  3. GO
  4.  
  5. SET QUOTED_IDENTIFIER OFF
  6. GO
  7. SET ANSI_NULLS ON
  8. GO
  9.  
  10. update valocost1 set iva=10.5 where tipo=2 and val_tipo = 74881
  11. exec vesp_valoarti5 ' 3021', 4, 74881
  12.  
  13. CREATE PROCEDURE [VESP_VALOARTI5]
  14. @Pc_codigo char(13),
  15. @Pn_Tipo INT,
  16. @Pn_ValTipo INT,
  17. @PnArti INT = 0
  18. AS
  19.  
  20.  
  21. /*
  22.  
  23. RECALCULANDO COSTOS
  24.  
  25. */
  26.  
  27. DECLARE @ARTI INT, @PROV CHAR(13), @PROVART CHAR(13), @LISACT INT
  28.  
  29. IF @Pn_Tipo <> 3 -- Recalculando Tipo de Precio
  30. BEGIN
  31.  
  32. DECLARE CURCOSTOS CURSOR FOR
  33. SELECT VA.ARTI, VA.PROV, AG.LISACT, AR.PROV AS PROVART
  34. FROM VALOCOST1 VA
  35. LEFT JOIN AGENDA AG ON AG.CODIGO = VA.PROV
  36. LEFT JOIN ARTICULO AR ON AR.ARTI = STR(VA.ARTI, 10)
  37. WHERE VA.TIPO = @Pn_Tipo AND VA.VAL_TIPO = @Pn_ValTipo
  38. AND VA.PROV = @Pc_codigo AND VA.ARTI =
  39. CASE WHEN @PnArti = 0 THEN VA.ARTI ELSE @PnArti END
  40.  
  41. OPEN CURCOSTOS
  42. FETCH NEXT FROM CURCOSTOS INTO @ARTI, @PROV, @LISACT, @PROVART
  43. WHILE @@FETCH_STATUS = 0
  44. BEGIN
  45.  
  46. EXEC VESP_VALOARTI 7, @ARTI, @PROV, @Pn_Tipo, @Pn_ValTipo
  47.  
  48. /* Si es predeterminado, actualizo cone y ciprec */
  49. IF @Pn_Tipo = 0 AND @PROV = @PROVART AND @Pn_VALTIPO = @LISACT
  50. UPDATE AR SET CONE = CO.CONE, CFPREC = CO.CONESI FROM ARTICULO AR, VALOCOST1 CO
  51. WHERE AR.ARTI = STR(@ARTI, 10) AND AR.ARTI = CO.ARTI AND CO.TIPO = 0 AND
  52. CO.VAL_TIPO = @LISACT AND CO.PROV = @PROV
  53.  
  54.  
  55. FETCH NEXT FROM CURCOSTOS INTO @ARTI, @PROV, @LISACT, @PROVART
  56. END
  57. CLOSE CURCOSTOS
  58. DEALLOCATE CURCOSTOS
  59.  
  60. END
  61.  
  62.  
  63. IF @Pn_Tipo = 3 -- Recalculando Pedido
  64. BEGIN
  65.  
  66. /* Recalculando el pedido */
  67. DECLARE CURCOSTOS CURSOR FOR
  68. SELECT ARTI FROM VALNOPED1
  69. WHERE PtoCpa = REPLACE(LEFT(STR(@Pn_Valtipo,12),4),' ','0')
  70. AND NroNP = REPLACE(RIGHT(STR(@Pn_Valtipo,12),8), ' ', '0') AND ARTI =
  71. CASE WHEN @PnArti = 0 THEN ARTI ELSE @PnArti END
  72. OPEN CURCOSTOS
  73. FETCH NEXT FROM CURCOSTOS INTO @ARTI
  74. WHILE @@FETCH_STATUS = 0
  75. BEGIN
  76.  
  77. EXEC VESP_VALOARTI 7, @ARTI, '', 3, @Pn_Valtipo
  78.  
  79. FETCH NEXT FROM CURCOSTOS INTO @ARTI
  80. END
  81. CLOSE CURCOSTOS
  82. DEALLOCATE CURCOSTOS
  83.  
  84. END
  85.  
  86.  
  87.  
  88. GO
  89. SET QUOTED_IDENTIFIER OFF
  90. GO
  91. SET ANSI_NULLS ON
  92. GO
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement